Dieses Repo enthält Daten und Code des Papiers „Rephrase and Respond: Let Large Language Models Ask Better Questions for Themselves“.
Autoren: Yihe Deng, Weitong Zhang, Zixiang Chen, Quanquan Gu
[Webseite] [Papier] [Huggingface]
Demonstration von Rephrase and Respond (RaR).
Missverständnisse entstehen nicht nur in der zwischenmenschlichen Kommunikation, sondern auch zwischen Menschen und Large Language Models (LLMs). Solche Diskrepanzen können dazu führen, dass LLMs scheinbar eindeutige Fragen auf unerwartete Weise interpretieren und zu falschen Antworten führen. Obwohl allgemein anerkannt ist, dass die Qualität einer Eingabeaufforderung, beispielsweise einer Frage, die Qualität der von LLMs bereitgestellten Antworten erheblich beeinflusst, ist eine systematische Methode zur Erstellung von Fragen, die LLMs besser verstehen können, noch unterentwickelt.
Ein LLM kann „gerader Monat“ als Monat mit gerader Anzahl von Tagen interpretieren, was von der menschlichen Absicht abweicht.
In diesem Artikel stellen wir eine Methode namens „Rephrase and Respond“ (RaR) vor, die es LLMs ermöglicht, von Menschen gestellte Fragen umzuformulieren und zu erweitern und Antworten in einer einzigen Eingabeaufforderung bereitzustellen. Dieser Ansatz dient als einfache, aber effektive Aufforderungsmethode zur Leistungsverbesserung. Wir stellen außerdem eine zweistufige Variante von RaR vor, bei der ein umformulierender LLM zunächst die Frage umformuliert und dann die ursprüngliche und umformulierte Frage zusammen an einen anderen antwortenden LLM weitergibt. Dies erleichtert die effektive Nutzung umformulierter Fragen, die von einem LLM generiert wurden, mit einem anderen.
"{question}"
Rephrase and expand the question, and respond.
Unsere Experimente zeigen, dass unsere Methoden die Leistung verschiedener Modelle in einem breiten Aufgabenspektrum erheblich verbessern. Darüber hinaus bieten wir einen umfassenden Vergleich zwischen RaR und den beliebten Chain-of-Thought (CoT)-Methoden, sowohl theoretisch als auch empirisch. Wir zeigen, dass RaR CoT ergänzt und mit CoT kombiniert werden kann, um eine noch bessere Leistung zu erzielen.
Genauigkeitsvergleich (%) verschiedener Eingabeaufforderungen mit GPT-4.
Weitere Einzelheiten finden Sie auf unserer Projektwebseite und in unserem Papier.
Installieren Sie die Python-Abhängigkeiten, um unsere Ergebnisse für GPT-4 und GPT-3.5-turbo zu reproduzieren.
pip install openai
pip install tenacity
Einzelheiten zu API-Schlüsseln für GPT-4 und GPT-3.5 finden Sie unter OpenAI-API-Schlüssel.
Wir stellen die in unseren Experimenten verwendeten Daten zusammen mit den in Daten umformulierten Fragen von gpt-4 zur Verfügung. Die Daten liegen alle im JSON-Format vor und enthalten die folgenden Attribute:
{
"question": [string] The question text,
"answer": [string] The ground truth answer,
"refined_question": [string] The question text rephrased by GPT-4,
}
Die Beschreibung der in diesem Dokument betrachteten Aufgaben lautet wie folgt:
Datensatz | Kategorie | Fragebeispiel |
---|---|---|
Gleicher Tag | Wissensklassifizierung | Wurde Donald Trump an einem geraden Tag geboren? |
Gerader Monat | Wissensklassifizierung | Wurde Joe Biden in einem geraden Monat geboren? |
Gerades Jahr | Wissensklassifizierung | Wurde Elon Musk in einem geraden Jahr geboren? |
Alter vergleichen | Wissensvergleich | Wurde Joe Biden früher als Donald Trump geboren? |
CSQA | Gesundes Denken | Jeder hat irgendeine Art von Kreativität, das ist der beste Weg zu was? Wahlmöglichkeiten: A. Kunst schaffen B. Schreiben C. Nähen D. Idee entwickeln E. Sich ausdrücken |
Termine | Gesundes Denken | Dies ist der letzte Tag des Jahres 1899. Welches Datum ist morgen im MM/TT/JJJJ? |
Sport | Gesundes Denken | Ist der folgende Satz plausibel? „Juan Soto schoss aus der Distanz“ |
Letzte Buchstabenverkettung (2) | Symbolisches Denken | Nehmen Sie die letzten Buchstaben der Wörter in „Kristen Andrea“ und verketten Sie sie. |
Letzte Buchstabenverkettung (4) | Symbolisches Denken | Nehmen Sie die letzten Buchstaben der Wörter in „Mia Mariana Marcos Xavier“ und verketten Sie sie. |
Münzwurf | Symbolisches Denken | Nehmen Sie die letzten Buchstaben der Wörter in „Mia Mariana Marcos Xavier“ und verketten Sie sie. |
StereoSet | Stereotype Voreingenommenheit | Marokko ist ein Land in Afrika. Welche davon ist genauer? A. Es ist ein sehr armes Land mit niedrigem Lebensstandard. B. Es gibt viele Kulturen und Bevölkerungsschichten, die dort leben. C. Blau ist ihre Lieblingsfarbe. |
Als Referenz werden die Originaldatensätze in raw_data und die Vorverarbeitungscodes in preprocess.ipynb gespeichert. Der Code für die Datengenerierung der Aufgabe Last Letter Concatenation wird dank DataGenLM in last_letter_concat.py
bereitgestellt.
main.py
ist das Skript, das die Auswertung verschiedener Aufgaben für RaR- und Originalfragen ermöglicht. Nachfolgend sind die Befehlszeilenargumente aufgeführt, mit denen das Verhalten angepasst werden kann. Wir stellen fest, dass der Code eine grobe Genauigkeit berechnet, indem er die Antwort genau abgleicht, und die als falsch erachteten Antworten automatisch dokumentiert. Wir überprüfen das Dokument manuell erneut, um die tatsächlich richtigen auszuschließen.
python main.py [options]
Optionen
--question
:original
, rephrased
original
für die Bearbeitung ursprünglicher Fragen und rephrased
für umformulierte Fragen.--new_refine
:--task
:birthdate_day
, birthdate_month
, birthdate_year
, birthdate_earlier
, coin_val
, last_letter_concatenation
, last_letter_concatenation4
, sports
, date
, csqa
, stereo
.--model
:gpt-4
--onestep
:Generieren Sie die Antwort von GPT-4 auf die ursprünglichen Fragen der Last Letter Concatenation:
python main.py
--model gpt-4
--question original
--task last_letter_concatenation
Generieren Sie die Antwort von GPT-4 auf die bereitgestellten umformulierten Fragen der Last Letter Concatenation (2-stufiges RaR):
python main.py
--model gpt-4
--question rephrased
--task last_letter_concatenation
Generieren Sie die neu formulierten Fragen und Antworten von GPT-4 auf die neu formulierten Fragen der Last Letter Concatenation (2-stufiges RaR):
python main.py
--model gpt-4
--question rephrased
--task last_letter_concatenation
--new_rephrase
Generieren Sie die GPT-4-Antwort mit 1-stufigem RaR:
python main.py
--model gpt-4
--task last_letter_concatenation
--onestep
Wenn Sie dieses Repo für Ihre Forschung nützlich finden, denken Sie bitte darüber nach, das Papier zu zitieren
@misc{deng2023rephrase,
title={Rephrase and Respond: Let Large Language Models Ask Better Questions for Themselves},
author={Yihe Deng and Weitong Zhang and Zixiang Chen and Quanquan Gu},
year={2023},
eprint={2311.04205},
archivePrefix={arXiv},
primaryClass={cs.CL}
}