papers.description
Die ML-Community erforscht derzeit intensiv Techniken für das Prompting von Sprachmodellen (LMs) und deren Integration in Pipelines zur Lösung komplexer Aufgaben. Leider werden bestehende LM-Pipelines typischerweise mit fest kodierten „Prompt-Vorlagen“ implementiert, d. h. langen Zeichenketten, die durch Versuch und Irrtum entdeckt wurden. Um einen systematischeren Ansatz für die Entwicklung und Optimierung von LM-Pipelines zu ermöglichen, stellen wir DSPy vor, ein Programmiermodell, das LM-Pipelines als Texttransformationsgraphen abstrahiert, d. h. imperative Berechnungsgraphen, in denen LMs durch deklarative Module aufgerufen werden. DSPy-Module sind parametrisiert, was bedeutet, dass sie lernen können (durch das Erstellen und Sammeln von Demonstrationen), wie sie Kompositionen von Prompting, Finetuning, Augmentierung und Reasoning-Techniken anwenden. Wir entwickeln einen Compiler, der jede DSPy-Pipeline optimiert, um ein gegebenes Metrikziel zu maximieren. Wir führen zwei Fallstudien durch, die zeigen, dass prägnante DSPy-Programme anspruchsvolle LM-Pipelines ausdrücken und optimieren können, die mathematische Textaufgaben lösen, Multi-Hop-Retrieval bewältigen, komplexe Fragen beantworten und Agentenschleifen steuern. Innerhalb weniger Minuten nach der Kompilierung ermöglichen einige Zeilen DSPy GPT-3.5 und llama2-13b-chat, selbstgesteuerte Pipelines zu erstellen, die Standard-Few-Shot-Prompting (in der Regel um über 25 % bzw. 65 %) und Pipelines mit von Experten erstellten Demonstrationen (um bis zu 5–46 % bzw. 16–40 %) übertreffen. Darüber hinaus sind DSPy-Programme, die für offene und relativ kleine LMs wie den 770M-Parameter-T5 und llama2-13b-chat kompiliert werden, wettbewerbsfähig mit Ansätzen, die auf von Experten geschriebene Prompt-Ketten für proprietäre GPT-3.5 angewiesen sind. DSPy ist verfügbar unter https://github.com/stanfordnlp/dspy.
"Denken ist fürs Handeln." Menschen können die mentalen Zustände anderer Personen aus Beobachtungen ableiten – eine Fähigkeit, die als Theory-of-Mind (ToM) bezeichnet wird – und anschließend pragmatisch auf diese Schlussfolgerungen reagieren. Bestehende Frage-Antwort-Benchmarks wie ToMi stellen Modellen Fragen, um Rückschlüsse auf die Überzeugungen von Charakteren in einer Geschichte zu ziehen, testen jedoch nicht, ob Modelle diese Schlussfolgerungen nutzen können, um ihr Handeln zu steuern. Wir schlagen ein neues Evaluationsparadigma für große Sprachmodelle (LLMs) vor: Thinking for Doing (T4D), das von Modellen verlangt, Rückschlüsse über die mentalen Zustände anderer mit Handlungen in sozialen Szenarien zu verbinden. Experimente mit T4D zeigen, dass LLMs wie GPT-4 und PaLM 2 scheinbar hervorragend darin sind, die Überzeugungen von Charakteren in Geschichten nachzuvollziehen, aber Schwierigkeiten haben, diese Fähigkeit in strategisches Handeln umzusetzen. Unsere Analyse zeigt, dass die zentrale Herausforderung für LLMs darin besteht, die impliziten Schlussfolgerungen über mentale Zustände zu identifizieren, ohne explizit danach gefragt zu werden wie in ToMi, die zur Wahl der richtigen Handlung in T4D führen. Um diese Lücke zu schließen, führen wir ein Zero-Shot-Prompting-Framework ein, Foresee and Reflect (FaR), das eine Argumentationsstruktur bereitstellt, die LLMs dazu anregt, zukünftige Herausforderungen vorherzusehen und über mögliche Handlungen nachzudenken. FaR steigert die Leistung von GPT-4 auf T4D von 50 % auf 71 % und übertrifft dabei andere Prompting-Methoden wie Chain-of-Thought und Self-Ask. Darüber hinaus verallgemeinert FaR auf diverse Out-of-Distribution-Geschichtenstrukturen und Szenarien, die ebenfalls ToM-Schlussfolgerungen erfordern, um eine Handlung zu wählen, und übertrifft dabei konsistent andere Methoden, einschließlich Few-Shot-In-Context-Learning.
Große Sprachmodelle (LLMs) wie GPT-4 haben bemerkenswerte Leistungen in einer Vielzahl von Aufgaben gezeigt, doch diese starke Leistung geht oft mit den hohen Kosten für die Nutzung kostenpflichtiger API-Dienste einher. In diesem Beitrag sind wir motiviert, den Aufbau einer LLM-Kaskade zu untersuchen, um die Kosten für die Nutzung von LLMs zu senken, insbesondere für die Durchführung von Aufgaben, die logisches Denken erfordern (z. B. mathematische, kausale Aufgaben). Unsere Kaskadenpipeline folgt der Intuition, dass einfachere Fragen von einem schwächeren, aber kostengünstigeren LLM bearbeitet werden können, während nur die anspruchsvollen Fragen den stärkeren und teureren LLM erfordern. Um diese Entscheidungsfindung zu realisieren, betrachten wir die „Antwortkonsistenz“ des schwächeren LLMs als Signal für die Schwierigkeit der Frage und schlagen mehrere Methoden für die Antwortentnahme und Konsistenzprüfung vor, darunter eine, die eine Mischung aus zwei Denkrepräsentationen nutzt (d. h. Chain-of-Thought und Program-of-Thought). Durch Experimente mit sechs Benchmark-Datensätzen für logisches Denken, bei denen GPT-3.5-turbo und GPT-4 als schwächeres bzw. stärkeres LLM verwendet werden, zeigen wir, dass unsere vorgeschlagenen LLM-Kaskaden eine Leistung erzielen können, die der alleinigen Nutzung des stärkeren LLMs vergleichbar ist, aber nur 40 % der Kosten erfordern.
Heute nutzen Nutzer große Sprachmodelle (LLMs) als Assistenten, um Anfragen zu beantworten, die externes Wissen erfordern; sie fragen nach dem Wetter in einer bestimmten Stadt, nach Aktienkursen und sogar danach, wo sich bestimmte Orte in ihrer Nachbarschaft befinden. Diese Anfragen erfordern, dass das LLM Code erzeugt, der externe APIs aufruft, um die Frage des Nutzers zu beantworten. Doch LLMs produzieren selten auf Anhieb korrekten Code, sodass eine iterative Code-Verfeinerung basierend auf den Ausführungsergebnissen notwendig ist. Darüber hinaus kann die Nutzung von LLM-Assistenten zur Bewältigung hoher Anfragevolumen kostspielig sein. In dieser Arbeit stellen wir ein Framework namens EcoAssistant vor, das es LLMs ermöglicht, codegesteuerte Anfragen kostengünstiger und genauer zu beantworten. EcoAssistant besteht aus drei Komponenten. Erstens ermöglicht es den LLM-Assistenten, mit einem automatischen Code-Ausführer zu kommunizieren, um den Code iterativ zu verfeinern oder Antworten basierend auf den Ausführungsergebnissen zu generieren. Zweitens verwenden wir eine Hierarchie von LLM-Assistenten, die versucht, die Anfrage zunächst mit schwächeren, kostengünstigeren LLMs zu beantworten, bevor auf stärkere, teurere Modelle zurückgegriffen wird. Drittens greifen wir auf Lösungen aus früheren erfolgreichen Anfragen zurück, die als In-Context-Demonstrationen dienen, um nachfolgende Anfragen zu unterstützen. Empirisch zeigen wir, dass EcoAssistant deutliche Vorteile in Bezug auf Kosteneffizienz und Genauigkeit bietet und GPT-4 um 10 Prozentpunkte in der Erfolgsrate übertrifft, während weniger als 50 % der Kosten von GPT-4 anfallen.