Technika AMA („Ask Me Anything“) prompt engineeringu je metoda pro vylepšení interakce s jazykovými modely, jako je GPT. Cílem je zlepšit schopnost modelu odpovídat na otázky založené na kontextu a ověřovat tvrzení.
Zde si vysvětlíme techniku AMA (Ask Me Anything) prompt engineeringu, která je využívána k ověřování tvrzení na základě kontextu pomocí jazykových modelů. Tato technika využívá dvou typů promptů: question()
prompt, který převádí tvrzení do formy otázky typu ano/ne, a answer()
prompt, který zodpovídá tuto otázku na základě poskytnutého kontextu. Kombinace odpovědí pomocí metody slabého dohledu (weak supervision) pak umožňuje určit, zda je původní tvrzení pravdivé nebo nepravdivé. Tento postup si podrobně popíšeme ve dvou hlavních krocích, jak je znázorněno na obrázku.
Překlad obrázku:
AMA PROMPTING
(1) Spustit kolekci prompt()-řetězců, kde LLM vygeneruje vstupy pro otázky a odpovědi.
(2) Kombinovat šumivé odpovědi pomocí slabého dohledu
Příklad vstupu:
Řetězec promptů 1.
Řetězec promptů 2.
Řetězec promptů 3.
Je následující tvrzení Pravdivé nebo Nepravdivé vzhledem ke kontextu?
Kontext: John a jeho přátelé šli do kina a viděli Jurassic Park.
Tvrzení: John šel do parku.
Odpověď: nepravdivé
Vstup
Řetězec
Výstup
Napište tvrzení jako otázku typu ano/ne.
- Tvrzení: Jack tábořil s Markem
- Otázka: Tábořil Jack s Markem?
- Tvrzení: test byl těžký
- Otázka: Byl test těžký?
- Tvrzení: John šel do parku.
- Otázka:
Šel John do parku?
otázka() prompt
Zodpověz otázku z kontextu
Kontext: Joeovy narozeniny byly včera
- Otázka: Byly Joeovy narozeniny včera?
- Odpověď: ano
Kontext: John a jeho přátelé šli do kina a viděli Jurassic Park
- Otázka: Šel John do parku?
- Odpověď:
Ne
Odpověď() prompt
Mapa výstupního prostoru
- Nepravdivé
- Pravdivé
- Nepravdivé
Nepravdivé
(konečná predikce)
Vstupní příklad
- Úkol: Ověřit tvrzení na základě poskytnutého kontextu.
- Kontext: „John a jeho přátelé šli do kina a viděli Jurassic Park.“
- Tvrzení: „John šel do parku.“
- Odpověď: Zda je tvrzení pravdivé nebo nepravdivé.
Krok 1: Vytvoření prompt řetězců
Tento krok zahrnuje vytvoření dvou typů promptů: question()
prompt a answer()
prompt.
-
question()
prompt:- Tento prompt přeformuluje tvrzení jako otázku typu ano/ne.
- Například:
- Tvrzení: „John šel do parku.“
question()
prompt: „Šel John do parku?“
-
answer()
prompt:- Tento prompt zodpovídá otázku na základě kontextu.
- Například:
- Kontext: „John a jeho přátelé šli do kina a viděli Jurassic Park.“
- Otázka: „Šel John do parku?“
- Odpověď: „ne“
Krok 2: Kombinace odpovědí pomocí slabého dohledu
Tento krok se zaměřuje na to, jakým způsobem se model vypořádá s odpověďmi, které mohou být nejednoznačné nebo obsahovat chyby (tzv. šumivé odpovědi), a jak z nich získá konečný výsledek.
Slabý dohled (Weak Supervision)
- Co to je? Slabý dohled je metoda, která využívá různé neúplné nebo nepřesné informace (v tomto případě šumivé odpovědi) k trénování nebo rozhodování modelu. Místo toho, aby se spoléhalo na jeden přesný a spolehlivý zdroj, kombinuje se více zdrojů informací.
- Jak to funguje v tomto kontextu? Když model odpovídá na
answer()
prompty, odpovědi nemusí být vždy konzistentní nebo přesné. Slabý dohled tyto odpovědi kombinuje a využívá k tomu, aby dosáhl co nejspolehlivějšího výsledku.
Kombinace odpovědí
- Šumivé odpovědi: Odpovědi z
answer()
promptů mohou obsahovat šum, což znamená, že mohou být nejednoznačné nebo chybné. - Metody kombinace: Existují různé algoritmy a techniky, jak tyto odpovědi kombinovat. Tyto metody mohou zahrnovat:
- Agregaci odpovědí: Shromáždění všech odpovědí a výběr nejčastější odpovědi.
- Hodnocení důvěryhodnosti: Každé odpovědi je přiřazena váha podle toho, jak moc je pravděpodobné, že je správná.
- Průměrování pravděpodobností: Kombinace odpovědí na základě pravděpodobností a výběr odpovědi s nejvyšší průměrnou pravděpodobností.
Příklad
- Otázka z
question()
promptu: „Šel John do parku?“ - Odpovědi z
answer()
promptů: „ne“, „ne“, „ano“ (dvě odpovědi „ne“ a jedna odpověď „ano“). - Kombinace odpovědí: Slabý dohled může rozhodnout, že odpověď „ne“ je pravděpodobnější, protože dvě z tří odpovědí jsou „ne“.
Konečný výsledek
- Mapování na výstupní prostor: Po kombinaci odpovědí se určí, zda je původní tvrzení pravdivé nebo nepravdivé.
- V našem příkladu: Výsledkem kombinace je, že John nešel do parku, takže tvrzení „John šel do parku“ je označeno jako nepravdivé
Shrnutí
Technika AMA prompt engineeringu zlepšuje schopnost modelu ověřovat tvrzení na základě kontextu. Pomocí question()
promptů se tvrzení přeformuluje na otázky typu ano/ne a pomocí answer()
promptů se na tyto otázky odpovídá z kontextu. Kombinace šumivých odpovědí pomocí slabého dohledu umožňuje modelu dosáhnout přesnějších výsledků, což vede k lepšímu pochopení a zpracování informací. Tento postup je účinný nástroj pro ověřování tvrzení v různých aplikacích.