Co to jest?
Promptowanie z generowaniem wiedzy (Generated Knowledge Prompting) to technika w inżynierii promptów, która wykorzystuje zdolność dużego modelu językowego (LLM) do generowania i wykorzystywania odpowiednich informacji tła przed udzieleniem odpowiedzi na pytanie. Zamiast odpowiadać bezpośrednio, model najpierw generuje powiązaną wiedzę lub kontekst, co pomaga mu skuteczniej przeanalizować pytanie. Metoda ta zwiększa dokładność i głębię odpowiedzi, szczególnie w przypadku pytań wymagających rozumowania opartego na zdrowym rozsądku lub konkretnej wiedzy faktycznej.
Poprzez nakazanie modelowi wygenerowania informacji pomocniczych, zagłębiamy się w jego rozległe dane treningowe, zachęcając do dokładniejszej eksploracji omawianego tematu. Podejście to jest zbieżne z tym, jak często myślą ludzie — przywołując odpowiednie informacje, zanim sformułują odpowiedź.
Jak to działa?
Proces promptowania z generowaniem wiedzy składa się z dwóch głównych kroków:
- Generowanie wiedzy: Model otrzymuje najpierw instrukcję wygenerowania istotnych faktów, definicji, wyjaśnień lub kontekstu dotyczącego tematu pytania. Ten krok aktywuje wewnętrzny zasób wiedzy modelu związany z danym zagadnieniem.
- Generowanie odpowiedzi: Wykorzystując wygenerowaną wiedzę jako fundament, model formułuje odpowiedź na oryginalne pytanie. Wcześniejsze informacje naprowadzają go w procesie rozumowania, co prowadzi do bardziej dokładnej i kompleksowej odpowiedzi.
Strukturując prompty tak, aby zawierały te kroki, zachęcamy model do głębszego rozumowania, co zmniejsza prawdopodobieństwo udzielenia powierzchownych lub błędnych odpowiedzi.
Kiedy tego używać?
Promptowanie z generowaniem wiedzy jest szczególnie przydatne w sytuacjach, gdy:
- Wymagane jest złożone rozumowanie: Podejście to sprawdza się przy pytaniach wymagających wieloetapowego wnioskowania lub zrozumienia niuansów pojęciowych.
- Potrzebna jest wiedza ogólna lub zdrowy rozsądek: Przy odpowiadaniu na pytania opierające się na ogólnej wiedzy o świecie lub zdrowym rozsądku.
- Zapobieganie błędnym przekonaniom: Aby uniknąć nieprawidłowych odpowiedzi wynikających z nieporozumień lub przeoczeń.
- Konteksty edukacyjne i wyjaśniające: Gdy szczegółowe wyjaśnienia zwiększają wartość odpowiedzi, np. w korepetycjach lub dyskusjach informacyjnych.
Technika ta jest cenna dla poprawy wydajności modeli LLM w zadaniach, w których bezpośrednie odpowiedzi mogą być niewystarczające ze względu na złożoność tematu lub potencjalne dwuznaczności.
Praktyczny przykład
Zilustrujmy działanie promptowania z generowaniem wiedzy na innym przykładzie.
W prompcie użytkownika
Bezpośrednie pytanie:
Pytanie: Czy pingwiny latają? Tak czy nie?
Przy bezpośrednim zapytaniu model może błędnie odpowiedzieć:
Odpowiedź: Tak.
Jest to nieprawda, ponieważ choć pingwiny są ptakami, nie potrafią latać.
Korzystając z promptowania z generowaniem wiedzy:
Krok 1: Polecenie modelowi wygenerowania wiedzy
Wejście: Czy pingwiny latają?
Wiedza:
Model generuje wiedzę:
Pingwiny to grupa wodnych, nielatających ptaków, które żyją głównie na półkuli południowej. Choć posiadają skrzydła i są klasyfikowane jako ptaki, ich skrzydła ewoluowały w płetwy przystosowane do pływania, a nie do latania.
Krok 2: Wykorzystanie wygenerowanej wiedzy do udzielenia odpowiedzi
Pytanie: Czy pingwiny latają? Tak czy nie?
Wiedza: Pingwiny to grupa wodnych, nielatających ptaków, które żyją głównie na półkuli południowej. Choć posiadają skrzydła i są klasyfikowane jako ptaki, ich skrzydła ewoluowały w płetwy przystosowane do pływania, a nie do latania.
Wyjaśnij i odpowiedz:
Odpowiedź modelu:
Nie. Pingwiny nie latają. Mimo że są ptakami ze skrzydłami, ich skrzydła są płetwami przystosowanymi do pływania pod wodą, a nie do latania w powietrzu.
Dzięki wcześniejszemu wygenerowaniu odpowiedniej wiedzy o pingwinach, model dokładnie wyjaśnia i odpowiada na pytanie.
W prompcie systemowym
Alternatywnie możemy skonfigurować prompt systemowy, który instruuje model, aby zawsze generował wiedzę przed udzieleniem odpowiedzi.
Prompt systemowy:
Jesteś asystentem AI, który udziela dokładnych odpowiedzi, najpierw generując odpowiednią wiedzę tła przed odpowiedzią na pytania, zgodnie z następującą strukturą:
Wiedza:
{TUTAJ TWOJA WIEDZA}
Odpowiedź:
{TUTAJ TWOJA ODPOWIEDŹ, PO ROZWAŻENIU TWOJEJ WIEDZY}
Prompt użytkownika:
Czy jedzenie surowego kurczaka jest bezpieczne? Tak czy nie?
Odpowiedź modelu:
Wiedza:
Surowy kurczak często zawiera szkodliwe bakterie, takie jak Salmonella i Campylobacter. Spożywanie surowego lub niedogotowanego kurczaka może prowadzić do chorób przenoszonych przez żywność, w tym do zatrucia pokarmowego. Odpowiednia obróbka cieplna zabija te bakterie, sprawiając, że kurczak jest bezpieczny do spożycia.
Wyjaśnij i odpowiedz:
Nie. Jedzenie surowego kurczaka nie jest bezpieczne, ponieważ może on zawierać szkodliwe bakterie wywołujące choroby przenoszone przez żywność. Kurczak powinien być dokładnie ugotowany, aby wyeliminować potencjalne patogeny.
Poprzez wbudowanie kroku generowania wiedzy w prompcie systemowym, model konsekwentnie dostarcza dobrze uzasadnionych i dokładnych odpowiedzi.
Ten przykład pokazuje, jak promptowanie z generowaniem wiedzy zwiększa zdolność modelu do udzielania poprawnych i szczegółowych odpowiedzi poprzez jawne żądanie odpowiednich informacji przed odpowiedzią. Pomaga to modelowi dokładniej przetworzyć pytanie, podobnie jak człowiek mógłby przypomnieć sobie ważne fakty przed odpowiedzią, co poprawia ogólną jakość interakcji.