llm agents, sora, gemini 1.5 pro, gemma, mistral large (German translation)
parent
880a522a62
commit
58faacea22
@ -1,16 +1,18 @@
|
||||
{
|
||||
"flan": "Flan",
|
||||
"chatgpt": "ChatGPT",
|
||||
"llama": "LLaMA",
|
||||
"gpt-4": "GPT-4",
|
||||
"mistral-7b": "Mistral 7B",
|
||||
"code-llama": "Code Llama",
|
||||
"flan": "Flan",
|
||||
"gemini": "Gemini",
|
||||
"gemini-advanced": "Gemini Advanced",
|
||||
"gemini-pro": "Gemini 1.5 Pro",
|
||||
"phi-2": "Phi-2",
|
||||
"gemma": "Gemma",
|
||||
"gpt-4": "GPT-4",
|
||||
"llama": "LLaMA",
|
||||
"mistral-7b": "Mistral 7B",
|
||||
"mistral-large": "Mistral Large",
|
||||
"mixtral": "Mixtral",
|
||||
"code-llama": "Code Llama",
|
||||
"olmo": "OLMo",
|
||||
"phi-2": "Phi-2",
|
||||
"sora": "Sora",
|
||||
"collection": "LLM-Sammlung"
|
||||
}
|
||||
|
@ -1,3 +1,136 @@
|
||||
# Gemini 1.5 Pro
|
||||
|
||||
This page needs a translation! Feel free to contribute a translation by clicking the `Edit this page` button on the right side.
|
||||
Google stellt Gemini 1.5 Pro vor, ein recheneffizientes multimodales Mischmodell aus Experten. Dieses KI-Modell konzentriert sich auf Fähigkeiten wie das Abrufen und Schlussfolgern über langformige Inhalte. Gemini 1.5 Pro kann über lange Dokumente schlussfolgern, die potenziell Millionen von Tokens enthalten, einschließlich Stunden von Video- und Audioinhalten. Gemini 1.5 Pro verbessert die bestehenden Spitzenleistungen bei Fragen und Antworten zu langen Dokumenten, langen Videos und langkontextueller automatischer Spracherkennung (ASR). Gemini 1.5 Pro erreicht oder übertrifft Gemini 1.0 Ultra in allen Standard-Benchmarks und erreicht eine nahezu perfekte Wiederauffindungsrate (>99%) bis zu mindestens 10 Millionen Tokens, ein signifikanter Fortschritt im Vergleich zu anderen LLMs für lange Kontexte.
|
||||
|
||||
Als Teil dieser Veröffentlichung präsentiert Google auch ein neues experimentelles Modell mit einem Kontextfenster von 1 Million Tokens, das in Google AI Studio ausprobiert werden kann. Um es anders auszudrücken, 200K ist das bisher größte Kontextfenster eines verfügbaren LLM. Mit dem 1-Millionen-Kontextfenster zielt Gemini 1.5 Pro darauf ab, eine Vielzahl von Anwendungsfällen zu ermöglichen, die Fragen und Antworten über große PDFs, Code-Repositorys und sogar umfangreiche Videos als Prompts in Google AI Studio einschließen. Es unterstützt eine Mischung aus Audio-, Video-, Text- und Code-Eingaben in derselben Eingabesequenz.
|
||||
|
||||
## Architektur
|
||||
Gemini 1.5 Pro ist ein sparsames Mischmodell aus Experten (MoE) basierend auf einem Transformer, das auf den multimodalen Fähigkeiten von Gemini 1.0 aufbaut. Der Vorteil von MoE ist, dass die Gesamtzahl der Modellparameter wachsen kann, während die Anzahl der aktivierten Parameter konstant bleibt. Im [technischen Bericht](https://storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf) sind nicht viele Details enthalten, aber es wird berichtet, dass Gemini 1.5 Pro deutlich weniger Rechenleistung für das Training benötigt, effizienter zu bedienen ist und Architekturänderungen beinhaltet, die das Verständnis von langen Kontexten (bis zu 10 Millionen Tokens) ermöglichen. Das Modell wird mit Daten vortrainiert, die verschiedene Modalitäten und Anweisungen umfassen, die mit multimodalen Daten abgestimmt wurden, mit weiterer Feinabstimmung basierend auf Daten zu menschlichen Präferenzen.
|
||||
|
||||
|
||||
## Ergebnisse
|
||||
Gemini 1.5 Pro erreicht eine nahezu perfekte "Nadel" -Wiederauffindung von bis zu 1 Million Tokens in allen Modalitäten, d. h. Text, Video und Audio. Um das Unterstützte Kontextfenster von Gemini 1.5 Pro einzuordnen, kann Gemini 1.5 Pro die Wiederaufführungsleistung aufrechterhalten und erweitern auf:
|
||||
|
||||
- ~22 Stunden Aufnahmen
|
||||
- 10 x 1440 Seiten Bücher
|
||||
- komplette Codebasen
|
||||
- 3 Stunden Video bei 1 fps
|
||||
|
||||
!["Gemini 1.5 Pro Retrieval-Ergebnisse"](../../img/gemini/gemini-retrieval.png)
|
||||
|
||||
Gemini 1.5 Pro übertrifft Gemini 1.0 Pro bei der Mehrheit der Benchmarks mit signifikanten Leistungen in Mathematik, Wissenschaft, Schlussfolgern, Mehrsprachigkeit, Videoverständnis und Code. Unten ist eine Tabelle mit den Ergebnissen der verschiedenen Gemini-Modelle zusammengefasst. Gemini 1.5 Pro übertrifft Gemini 1.0 Ultra bei der Hälfte der Benchmarks, obwohl es deutlich weniger Rechenleistung für das Training verwendet.
|
||||
|
||||
!["Gemini 1.5 Pro-Ergebnisse"](../../img/gemini/gemini-pro-results.png)
|
||||
|
||||
## Fähigkeiten
|
||||
|
||||
Die folgenden Unterabschnitte heben eine Reihe von Fähigkeiten hervor, die mit Gemini 1.5 Pro möglich sind, von der Analyse großer Datenmengen bis zum Schlussfolgern in langen multimodalen Kontexten. Einige der Fähigkeiten wurden im Papier, von der Community und aus unseren Experimenten berichtet.
|
||||
|
||||
### Analyse langer Dokumente
|
||||
|
||||
Um die Fähigkeiten von Gemini 1.5 Pro zur Verarbeitung und Analyse von Dokumenten zu demonstrieren, beginnen wir mit einer sehr einfachen Aufgabe zum Beantworten von Fragen. Das Gemini 1.5 Pro-Modell in Google AI Studio unterstützt bis zu 1 Million Tokens, sodass wir ganze PDFs hochladen können. Das unten stehende Beispiel zeigt, dass ein einzelnes PDF hochgeladen wurde, zusammen mit einem einfachen Prompt `Worum geht es in dem Paper?`:
|
||||
|
||||
!["Gemini 1.5 Pro-Ergebnisse"](../../img/gemini/galactica.png)
|
||||
|
||||
Die Antwort des Models ist genau und prägnant, da sie eine akzeptable Zusammenfassung des [Galactica-Papers](https://arxiv.org/abs/2211.09085) bietet. Das oben genannte Beispiel verwendet einen freiformigen Prompt innerhalb von Google AI Studio, aber Sie können auch das Chat-Format verwenden, um mit einem hochgeladenen PDF zu interagieren. Dies ist eine nützliche Funktion, wenn Sie viele Fragen haben, die Sie aus dem/den bereitgestellten Dokument(en) beantwortet haben möchten.
|
||||
|
||||
!["Gemini 1.5 Pro-Chat"](../../img/gemini/galactica-chat.png)
|
||||
|
||||
Um das lange Kontextfenster zu nutzen, laden wir nun zwei PDFs hoch und stellen eine Frage, die beide PDFs umfasst.
|
||||
|
||||
!["Gemini 1.5 Pro-Ergebnisse"](../../img/gemini/galactica-2.png)
|
||||
|
||||
Die Antwort ist vernünftig und der interessante Teil ist, dass die aus dem ersten Paper, das ein [Übersichtspaper über LLMs](https://arxiv.org/abs/2303.18223) ist, extrahierte Information aus einer Tabelle kommt. Die Information zur "Architektur" scheint ebenfalls korrekt zu sein. Der Abschnitt "Performance" gehört jedoch nicht dazu, da er nicht im ersten Paper gefunden wurde. Für diese Aufgabe war es wichtig, den Prompt `Bitte listen Sie die im ersten Paper erwähnten Fakten über das im zweiten Paper eingeführte große Sprachmodell auf.` oben zu setzen und die Papiere mit Tags wie `Paper 1` und `Paper 2` zu kennzeichnen. Eine weitere damit zusammenhängende Folgeaufgabe zu diesem Experiment könnte sein, einen Abschnitt mit verwandten Arbeiten zu schreiben, indem eine Reihe von Papieren hochgeladen und die Anweisungen dafür, wie sie zusammenzufassen sind, bereitgestellt werden. Ein weiterer Spaß könnte es sein, das Modell zu bitten, neuere LLM-Papiere in die Übersicht aufzunehmen.
|
||||
|
||||
### Verständnis von Videos
|
||||
|
||||
Gemini 1.5 Pro ist von Grund auf mit multimodalen Fähigkeiten trainiert und demonstriert auch Fähigkeiten im Verständnis von Videos. Wir haben einige Prompts mit einem der [jüngsten Vorträge über LLMs von Andrej Karpathy](https://www.youtube.com/watch?v=zjkBMFhNj_g&ab_channel=AndrejKarpathy) getestet.
|
||||
|
||||
Für diese kurze Demo haben wir einen `Chat-Prompt` erstellt und das YouTube-Video, das Karpathys Vortrag enthält, hochgeladen. Die erste Frage lautet `Worum geht es in dem Vortrag?`. Nichts zu Ausgefallenes hier, aber die Antwort ist akzeptabel, da sie den Vortrag genau zusammenfasst.
|
||||
|
||||
!["Gemini 1.5 Pro-Chat"](../../img/gemini/chat-1.png)
|
||||
|
||||
Die zweite Aufgabe, zu der wir das Modell auffordern, besteht darin, eine prägnante Gliederung (eine Seitenlänge) des Vortrags zu liefern. Die Antwort lautet wie folgt (zur Kürze bearbeitet):
|
||||
|
||||
```markdown
|
||||
## Große Sprachmodelle: Ein neues Betriebssystem?
|
||||
Einführung:
|
||||
|
||||
- LLMs werden mit riesigen Mengen an Textdaten trainiert und können menschenähnlichen Text generieren.
|
||||
- Sie werden zunehmend leistungsfähiger und für eine breite Palette von Aufgaben eingesetzt, wie Schreiben, Übersetzen und Programmieren.
|
||||
|
||||
Wie LLMs funktionieren:
|
||||
|
||||
- LLMs sind neuronale Netzwerke, die das nächste Wort in einer Sequenz vorhersagen.
|
||||
- Sie lernen, indem sie ihre Parameter iterativ anpassen, um bessere Vorhersagen zu treffen.
|
||||
- Obwohl wir ihre Leistung messen können, verstehen wir nicht vollständig, wie die Milliarden von Parametern zusammenarbeiten, um dies zu erreichen.
|
||||
|
||||
Training von LLMs:
|
||||
|
||||
- Erfordert massive Mengen an Daten und Rechenleistung.
|
||||
- Kann als "Komprimierung des Internets" in eine einzige Datei betrachtet werden.
|
||||
- Zum Beispiel erforderte das Training von LLaMA 2 70B 6.000 GPUs für 12 Tage und kostete ~$2 Millionen.
|
||||
|
||||
Sicherheit von LLMs:
|
||||
|
||||
- Die Sicherheit von LLMs ist ein neues und sich schnell entwickelndes Feld.
|
||||
- Einige Schlüsselrisiken für die Sicherheit beinhalten:
|
||||
- Jailbreaking: das Umgehen von Sicherheitsmechanismen, um schädliche Inhalte zu generieren.
|
||||
- Prompt-Injektion: das Einbringen von bösartigem Code in Prompts, um die Ausgabe des LLM zu steuern.
|
||||
- Datenvergiftung / Backdoor-Angriffe: das Einfügen von speziell gestaltetem Text in die Trainingsdaten, um das Verhalten des LLM zu beeinflussen.
|
||||
...
|
||||
```
|
||||
|
||||
Die Zusammenfassung ist sehr prägnant und stellt eine gute Gliederung des Vortags zusammen mit den wichtigsten Punkten dar. Wir haben die gesamte Ausgabe nicht auf Genauigkeit überprüft, aber es ist interessant zu sehen, dass das Modell informative Bits wie `"das Training von LLaMA 2 70B erforderte 6.000 GPUs für 12 Tage und kostete ~$2 Millionen."` ausgibt.
|
||||
|
||||
Wenn die spezifischen Details wichtig sind, beachten Sie, dass das Modell manchmal "halluziniert" oder aus verschiedenen Gründen falsche Informationen abruft. Zum Beispiel, als wir das Modell mit dem Prompt `Wie viele FLOPs wurden für Llama 2 in dem Vortrag berichtet?` aufforderten, antwortete es mit `Im Vortrag wird berichtet, dass das Training von Llama 2 70B ungefähr 1 Billion FLOPs benötigte.`, was nicht genau ist. Die korrekte Antwort sollte `~1e24 FLOPs` sein. Im technischen Bericht sind viele Beispiele dafür enthalten, wo diese Modelle für lange Kontexte versagen, wenn sie spezifische Fragen über das Video gestellt bekommen.
|
||||
|
||||
Die nächste Aufgabe beinhaltet das Extrahieren von Tabelleninformationen aus dem Video. Das Beispiel zeigt den Prompt und die Antwort. Wir können beobachten, dass das Modell eine Tabelle generiert hat und es einige Details richtig und einige falsch bekommen hat. Zum Beispiel sind die Spaltenüberschriften der Tabelle korrekt, aber eine der Zeilenbeschriftungen ist falsch (d. h. `Concept Resolution` sollte `Coref Resolution` sein). Wir haben einige dieser Extraktionsaufgaben mit anderen Tabellen und anderen verschiedenen Elementen wie Textfeldern getestet und haben ähnliche Inkonsistenzen festgestellt.
|
||||
|
||||
Ein interessantes Beispiel, das im technischen Bericht dokumentiert ist, ist die Fähigkeit des Modells, Details aus dem Video basierend auf spezifischen Szenen oder Zeitstempeln abzurufen. Im ersten Beispiel haben wir das Modell aufgefordert, mit der Antwort auf die Frage, wo ein spezifischer Abschnitt beginnt.
|
||||
|
||||
Prompt:
|
||||
```
|
||||
An welchem Zeitstempel beginnt der Abschnitt zum LLM-Betriebssystem?
|
||||
```
|
||||
|
||||
Ausgabe:
|
||||
```
|
||||
Der Abschnitt zum LLM-Betriebssystem beginnt bei 42:17.
|
||||
```
|
||||
|
||||
Die Antwort ist korrekt.
|
||||
|
||||
Im nächsten Beispiel fragen wir das Modell, ein Diagramm zu erklären, das auf den Folien zu finden ist.
|
||||
|
||||
Prompt:
|
||||
```
|
||||
Können Sie das Diagramm (auf der rechten Seite) auf der Folie zur Selbstverbesserung erklären?
|
||||
```
|
||||
|
||||
Ausgabe:
|
||||
```
|
||||
Das Diagramm zeigt die Leistung von AlphaGo Zero im Laufe der Zeit, gemessen an seiner Elo-Bewertung. Die Elo-Bewertung ist ein Maß für die Spielfähigkeit eines Spielers, wobei höhere Bewertungen auf stärkere Spieler hinweisen. Das Diagramm zeigt, dass sich die Leistung von AlphaGo Zero innerhalb von 40 Tagen schnell verbesserte und schließlich die Leistung aller anderen Versionen von AlphaGo übertraf, einschließlich der Version, die den Weltmeister im Go, Lee Sedol, besiegte. Diese Verbesserung wurde vollständig durch Selbstspiel erreicht, ohne menschliches Eingreifen oder historische Daten.
|
||||
```
|
||||
|
||||
Das Modell scheint die bereitgestellten Informationen gut zu nutzen, um die Ergebnisse im Diagramm zu erklären. Unten ist eine Momentaufnahme der entsprechenden Folie:
|
||||
|
||||
!["AlphaGo Zero"](../../img/gemini/chart.png)
|
||||
|
||||
### Code-Schlussfolgern
|
||||
Mit seinem langkontextuellen Schlussfolgern kann Gemini 1.5 Pro Fragen zur Codebasis beantworten. Mit Google AI Studio ermöglicht Gemini 1.5 Pro bis zu 1 Million Tokens, sodass wir eine gesamte Codebasis hochladen und es mit verschiedenen Fragen oder codebezogenen Aufgaben auffordern können. Der technische Bericht liefert ein Beispiel, in dem das Modell die gesamte JAX-Codebasis im Kontext (~746K Tokens) gegeben wird und gebeten wird, die Lage einer zentralen Methode zur automatischen Differenzierung zu identifizieren.
|
||||
|
||||
!["Gemini 1.5 Pro Jax"](../../img/gemini/jax.png)
|
||||
|
||||
### Übersetzung von Englisch nach Kalamang
|
||||
Gemini 1.5 Pro kann ein Grammatikhandbuch (500 Seiten linguistischer Dokumentation, ein Wörterbuch und ~400 parallele Sätze) für Kalamang, eine von weniger als 200 Sprechern weltweit gesprochene Sprache, bereitgestellt werden und übersetzt Englisch nach Kalamang auf dem Niveau einer Person, die aus denselben Inhalten lernt. Dies demonstriert die in-Kontext-Lernfähigkeiten von Gemini 1.5 Pro, ermöglicht durch lange Kontexte.
|
||||
|
||||
!["Gemini 1.5 Pro-Mehrsprachigkeit"](../../img/gemini/kalamang.png)
|
||||
|
||||
|
||||
Quellen der Abbildungen: [Gemini 1.5: Multimodales Verständnis über Millionen von Tokens an Kontext freischalten](https://storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf)
|
||||
|
||||
## Referenzen
|
||||
|
||||
- [Gemini 1.5: Multimodales Verständnis über Millionen von Tokens an Kontext freischalten](https://storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf)
|
||||
- [Gemini 1.5: Unser nächstes Generationen-Modell, jetzt verfügbar für Private Preview in Google AI Studio](https://developers.googleblog.com/2024/02/gemini-15-available-for-private-preview-in-google-ai-studio.html)
|
||||
|
@ -0,0 +1,48 @@
|
||||
# Mistral Large
|
||||
|
||||
Mistral AI veröffentlicht Mistral, ihr fortschrittlichstes großes Sprachmodell (LLM) mit starken Fähigkeiten in mehreren Sprachen, im logischen Denken, in Mathematik sowie in der Code-Generierung. Mistral Large ist über die Mistral-Plattform namens la Plataforme und Microsoft Azure verfügbar. Es ist auch zum Testen in ihrer neuen Chat-App, [le Chat](https://chat.mistral.ai/), verfügbar.
|
||||
|
||||
Unten ist ein Diagramm, das zeigt, wie sich Mistral Large im Vergleich zu anderen leistungsfähigen LLMs wie GPT-4 und Gemini Pro schlägt. Es rangiert auf dem MMLU-Benchmark mit einer Punktzahl von 81,2 % an zweiter Stelle nach GPT-4.
|
||||
|
||||
!["Mistral Large Leistung"](../../img/mistral-l/ml-performance.png)
|
||||
|
||||
## Fähigkeiten von Mistral Large
|
||||
|
||||
Die Fähigkeiten und Stärken von Mistral Large umfassen:
|
||||
|
||||
- 32K Token Kontextfenster
|
||||
- hat native mehrsprachige Kapazitäten (fließend in Englisch, Französisch, Spanisch, Deutsch und Italienisch)
|
||||
- starke Fähigkeiten im logischen Denken, Wissen, in Mathematik und bei Programmier-Benchmarks
|
||||
- Funktionenaufruf und JSON-Format werden nativ unterstützt
|
||||
- ein Modell mit niedriger Latenz namens Mistral Small wurde ebenfalls veröffentlicht
|
||||
- ermöglicht Entwicklern, Moderationsrichtlinien mit seiner präzisen Anweisungsbefolgung zu gestalten
|
||||
|
||||
### Logik und Wissen
|
||||
|
||||
Die untenstehende Tabelle zeigt, wie sich Mistral Large in gängigen Benchmarks für logisches Denken und Wissen schlägt. Es bleibt weitgehend hinter GPT-4 zurück, ist aber das überlegene Modell im Vergleich zu anderen LLMs wie Claude 2 und Gemini Pro 1.0.
|
||||
|
||||
!["Mistral Large Leistung"](../../img/mistral-l/performance-3.png)
|
||||
|
||||
### Mathematik & Code-Generierung
|
||||
|
||||
Die untenstehende Tabelle zeigt, wie sich Mistral Large in gängigen Mathematik- und Programmier-Benchmarks schlägt. Mistral Large zeigt starke Leistungen bei den Mathematik- und GSM8K-Benchmarks, wird aber bei Programmier-Benchmarks von Modellen wie Gemini Pro und GPT-4 deutlich übertroffen.
|
||||
|
||||
!["Mistral Large Leistung"](../../img/mistral-l/performance-1.png)
|
||||
|
||||
### Mehrsprachigkeit
|
||||
|
||||
Die untenstehende Tabelle zeigt die Leistung von Mistral Large bei mehrsprachigen logischen Benchmarks. Mistral Large übertrifft Mixtral 8x7B und Llama 2 70B in allen Sprachen, einschließlich Französisch, Deutsch, Spanisch und Italienisch.
|
||||
|
||||
!["Mistral Large Leistung"](../../img/mistral-l/performance-2.png)
|
||||
|
||||
## Mistral Small
|
||||
|
||||
Zusätzlich zur Veröffentlichung von Mistral Large wird auch ein kleineres und optimiertes Modell namens Mistral Small angekündigt. Mistral Small ist für Arbeitslasten mit niedriger Latenz optimiert und übertrifft Mixtral 8x7B. Mistral AI berichtet, dass dieses Modell starke Kapazitäten rund um die RAG-Aktivierung, Funktionenaufruf und JSON-Format hat.
|
||||
|
||||
## Mistral Endpoints und Modellauswahl
|
||||
|
||||
[Hier](https://docs.mistral.ai/platform/endpoints/) finden Sie eine Liste aller von Mistral AI bereitgestellten Endpoints.
|
||||
|
||||
Mistral AI hat zudem einen umfassenden [Leitfaden](https://docs.mistral.ai/guides/model-selection/) zur besseren Modellauswahl unter Berücksichtigung von Leistung und Kosten veröffentlicht.
|
||||
|
||||
*Quelle der Zahlen: https://mistral.ai/news/mistral-large/*
|
@ -1,3 +1,68 @@
|
||||
# Sora
|
||||
|
||||
This page needs a translation! Feel free to contribute a translation by clicking the `Edit this page` button on the right side.
|
||||
import { Bleed } from 'nextra-theme-docs'
|
||||
|
||||
OpenAI stellt Sora vor, sein neues Text-zu-Video-KI-Modell. Sora kann Videos von bis zu einer Minute realistischer und fantasievoller Szenen nach Textanweisungen erstellen.
|
||||
|
||||
OpenAI berichtet, dass seine Vision darin besteht, KI-Systeme zu entwickeln, die die physische Welt in Bewegung verstehen und simulieren und Modelle trainieren, um Probleme zu lösen, die reale Interaktion erfordern.
|
||||
|
||||
## Fähigkeiten
|
||||
|
||||
Sora kann Videos generieren, die eine hohe visuelle Qualität und die Einhaltung eines Benutzer-Prompts gewährleisten. Sora hat auch die Fähigkeit, komplexe Szenen mit mehreren Charakteren, unterschiedlichen Bewegungsarten und Hintergründen zu generieren und zu verstehen, wie sie miteinander in Beziehung stehen. Weitere Fähigkeiten umfassen das Erstellen mehrerer Aufnahmen innerhalb eines einzigen Videos mit Persistenz über Charaktere und visuellen Stil hinweg. Unten sind einige Beispiele von Videos aufgeführt, die von Sora generiert wurden.
|
||||
|
||||
Prompt:
|
||||
```
|
||||
Eine stilvolle Frau geht eine Tokioter Straße entlang, die von warm leuchtenden Neonlichtern und animierter Stadtschilderung erfüllt ist. Sie trägt eine schwarze Lederjacke, ein langes rotes Kleid und schwarze Stiefel und hat eine schwarze Handtasche dabei. Sie trägt Sonnenbrille und roten Lippenstift. Sie geht selbstbewusst und locker. Die Straße ist feucht und spiegelnd, wodurch ein Spiegeleffekt der bunten Lichter entsteht. Viele Fußgänger gehen umher.
|
||||
```
|
||||
|
||||
<Bleed >
|
||||
<iframe
|
||||
src="https://cdn.openai.com/sora/videos/tokyo-walk.mp4"
|
||||
width="100%"
|
||||
height="300px"
|
||||
title="SWR-States"
|
||||
/>
|
||||
</Bleed>
|
||||
|
||||
Prompt:
|
||||
|
||||
```
|
||||
Ein Filmtrailer, der die Abenteuer des 30-jährigen Raumfahrers zeigt, der einen roten Woll- gestrickten Motorradhelm trägt, blauer Himmel, Salzwüste, kinematografischer Stil, auf 35mm Film gedreht, leuchtende Farben.
|
||||
```
|
||||
|
||||
<Bleed >
|
||||
<iframe
|
||||
src="https://cdn.openai.com/sora/videos/mitten-astronaut.mp4"
|
||||
width="100%"
|
||||
height="300px"
|
||||
title="SWR-States"
|
||||
/>
|
||||
</Bleed>
|
||||
|
||||
*Videoquelle: https://openai.com/sora*
|
||||
|
||||
## Methoden
|
||||
Es wird berichtet, dass Sora ein Diffusionsmodell ist, das ganze Videos generieren oder generierte Videos erweitern kann. Es verwendet auch eine Transformer-Architektur, die zu einer skalierenden Leistung führt. Videos und Bilder werden ähnlich wie Token in GPT als Patches dargestellt, was zu einem einheitlichen Videosystem führt, das längere Dauern, Auflösungen und Bildformate ermöglicht. Sie verwenden die in DALL·E 3 verwendete Neubeschriftungstechnik, damit Sora den Textanweisungen genauer folgen kann. Sora kann auch Videos aus einem gegebenen Bild generieren, was es dem System ermöglicht, das Bild genau zu animieren.
|
||||
|
||||
## Einschränkungen und Sicherheit
|
||||
|
||||
Zu den berichteten Einschränkungen von Sora gehören die Simulation von Physik und der Mangel an Ursache und Wirkung. Räumliche Details und Ereignisse, die in den Prompts beschrieben werden (z.B. Kameratrajektorie), werden manchmal auch von Sora missverstanden. OpenAI berichtet, dass sie Sora Red Teamern und Erstellern zur Verfügung stellen, um Schäden und Fähigkeiten zu bewerten.
|
||||
|
||||
Prompt:
|
||||
|
||||
```
|
||||
Szene im Schritt-Druck-Verfahren einer rennenden Person, kinematografische Filmaufnahme in 35mm.
|
||||
```
|
||||
|
||||
<Bleed >
|
||||
<iframe
|
||||
src="https://cdn.openai.com/sora/videos/backward-jogger.mp4"
|
||||
width="100%"
|
||||
height="300px"
|
||||
title="SWR-States"
|
||||
/>
|
||||
</Bleed>
|
||||
|
||||
*Videoquelle: https://openai.com/sora*
|
||||
|
||||
Finden Sie hier mehr Beispiele für Videos, die vom Sora-Modell generiert wurden: https://openai.com/sora
|
||||
|
@ -1,5 +1,7 @@
|
||||
{
|
||||
"llm-agents": "LLM Agents",
|
||||
"llm-agents": "LLM Agenten",
|
||||
"rag": "RAG für LLMs",
|
||||
"trustworthiness-in-llms": "Vertrauenswürdigkeit in LLMs"
|
||||
"trustworthiness-in-llms": "Vertrauenswürdigkeit in LLMs",
|
||||
"llm-tokenization": "LLM Tokenisierung",
|
||||
"groq": "Was ist Groq?"
|
||||
}
|
||||
|
@ -1,3 +1,172 @@
|
||||
# LLM Agents
|
||||
# LLM Agenten
|
||||
|
||||
This page needs a translation! Feel free to contribute a translation by clicking the `Edit this page` button on the right.
|
||||
import {Cards, Card} from 'nextra-theme-docs'
|
||||
import {FilesIcon} from 'components/icons'
|
||||
|
||||
Agenten, die auf LLMs basieren, im Folgenden auch kurz als LLM-Agenten bezeichnet, integrieren LLM-Anwendungen, die komplexe Aufgaben durch die Verwendung einer Architektur ausführen können, die LLMs mit Schlüsselmodulen wie Planung und Speicher kombiniert. Beim Aufbau von LLM-Agenten dient ein LLM als Hauptcontroller oder „Gehirn“, das einen Ablauf von Operationen steuert, der erforderlich ist, um eine Aufgabe oder Benutzeranfrage zu vervollständigen. Der LLM-Agent kann Schlüsselmodule wie Planung, Speicher und Werkzeugnutzung benötigen.
|
||||
|
||||
Um den Nutzen eines LLM-Agenten besser zu veranschaulichen, nehmen wir an, dass wir daran interessiert sind, ein System zu entwickeln, das die folgende Frage beantworten kann:
|
||||
|
||||
> Wie hoch ist die durchschnittliche tägliche Kalorienaufnahme für 2023 in den Vereinigten Staaten?
|
||||
|
||||
Die obige Frage könnte möglicherweise mithilfe eines LLMs beantwortet werden, das bereits über das Wissen verfügt, das benötigt wird, um die Frage direkt zu beantworten. Wenn das LLM nicht über das relevante Wissen verfügt, um die Frage zu beantworten, ist es möglich, ein einfaches RAG-System zu verwenden, bei dem ein LLM Zugang zu gesundheitsbezogenen Informationen oder Berichten hat. Stellen wir nun dem System eine komplexere Frage wie die folgende:
|
||||
|
||||
> Wie hat sich der Trend der durchschnittlichen täglichen Kalorienaufnahme unter Erwachsenen im letzten Jahrzehnt in den Vereinigten Staaten verändert, und welchen Einfluss könnte dies auf die Fettleibigkeitsraten haben? Kannst du zusätzlich eine grafische Darstellung des Trends der Fettleibigkeitsraten über diesen Zeitraum bereitstellen?
|
||||
|
||||
Um eine solche Frage zu beantworten, reicht die Verwendung eines LLMs allein nicht aus. Man kann das LLM mit einer externen Wissensbasis kombinieren, um ein RAG-System zu bilden, aber das ist wahrscheinlich immer noch nicht genug, um die komplexe Anfrage oben zu beantworten. Dies liegt daran, dass die komplexe Frage oben ein LLM dazu erfordert, die Aufgabe in Teilabschnitte zu untergliedern, die mithilfe von Werkzeugen und einem Ablauf von Operationen adressiert werden können, der zu einer gewünschten endgültigen Antwort führt. Eine mögliche Lösung besteht darin, einen LLM-Agenten zu entwickeln, der Zugang zu einer Such-API, gesundheitsbezogenen Publikationen und öffentlichen/privaten Gesundheitsdatenbanken hat, um relevante Informationen bezüglich der Kalorienaufnahme und Fettleibigkeit bereitzustellen.
|
||||
|
||||
Zusätzlich benötigt das LLM Zugang zu einem „Code-Interpreter“-Werkzeug, das hilft, relevante Daten zu verwenden, um nützliche Diagramme zu erstellen, die Trends bei Fettleibigkeit verstehen helfen. Dies sind die möglichen high-level Komponenten des hypothetischen LLM-Agenten, aber es gibt noch wichtige Überlegungen wie die Erstellung eines Plans zur Adressierung der Aufgabe und der potenzielle Zugang zu einem Speichermodul, das dem Agenten hilft, den Zustand des Ablaufs der Operationen, Beobachtungen und des allgemeinen Fortschritts zu verfolgen.
|
||||
|
||||
## LLM-Agenten-Framework
|
||||
|
||||
!["LLM-Agenten-Framework"](../../img/agents/agent-framework.png)
|
||||
|
||||
Allgemein gesprochen kann ein LLM-Agenten-Framework aus den folgenden Kernkomponenten bestehen:
|
||||
|
||||
- Benutzeranfrage (_user request_) - eine Benutzerfrage oder -anfrage
|
||||
- Agent/Gehirn - der Kernagent als Koordinator
|
||||
- Planung (_planning_) - unterstützt den Agenten bei der Planung zukünftiger Aktionen
|
||||
- Speicher (_memory_) - verwaltet die vergangenen Verhaltensweisen des Agenten
|
||||
|
||||
### Agent
|
||||
|
||||
Ein großes Sprachmodell (LLM) mit allgemeinen Fähigkeiten dient als Hauptgehirn, Agentenmodul oder Koordinator des Systems. Diese Komponente wird mithilfe einer Prompt-Vorlage aktiviert, die wichtige Details darüber enthält, wie der Agent operieren wird und auf welche Werkzeuge er Zugriff haben wird (zusammen mit Werkzeugdetails).
|
||||
|
||||
Obwohl nicht zwingend erforderlich, kann einem Agenten ein Profil zugeordnet oder eine Persona zugewiesen werden, um seine Rolle zu definieren. Diese Profilierungsinformationen werden typischerweise im Prompt geschrieben, welcher spezifische Details wie Rollendetails, Persönlichkeit, soziale Informationen und andere demografische Informationen enthalten kann. Gemäß [Wang et al. 2023] beinhalten die Strategien zur Definition eines Agentenprofils manuelle Anpassungen, LLM-generiert oder datengesteuert.
|
||||
|
||||
### Planung
|
||||
|
||||
#### Planung ohne Feedback
|
||||
|
||||
Das Planungsmodul hilft, die notwendigen Schritte oder Teilaufgaben zu untergliedern, die der Agent einzeln lösen wird, um die Benutzeranfrage zu beantworten. Dieser Schritt ist wichtig, um es dem Agenten zu ermöglichen, besser über das Problem nachzudenken und eine zuverlässige Lösung zu finden. Das Planungsmodul wird ein LLM nutzen, um einen detaillierten Plan zu zerlegen, der Teilaufgaben zur Adressierung der Benutzerfrage umfassen wird. Beliebte Techniken für die Aufgabenzerlegung umfassen [Prompt Chaining](https://www.promptingguide.ai/techniques/cot) und [Tree of Thought](https://www.promptingguide.ai/techniques/tot), die jeweils als Einzelpfad-Schlussfolgerung und Mehrpfad-Schlussfolgerung kategorisiert werden können. Unten ist eine Abbildung, die unterschiedliche Strategien vergleicht, wie in [Wang et al., 2023](https://arxiv.org/abs/2308.11432) formalisiert:
|
||||
|
||||
!["LLM-Agenten-Planung"](../../img/agents/task-decomposition.png)
|
||||
|
||||
#### Planung mit Feedback
|
||||
|
||||
Die oben genannten Planungsmodule beinhalten kein Feedback, was es herausfordernd macht, eine langfristige Planung zur Lösung komplexer Aufgaben zu erreichen. Um diese Herausforderung zu bewältigen, kann man einen Mechanismus nutzen, der es dem Modell ermöglicht, den Ausführungsplan basierend auf vergangenen Aktionen und Beobachtungen iterativ zu reflektieren und zu verfeinern. Das Ziel ist, vergangene Fehler zu korrigieren und zu verbessern, was dazu beiträgt, die Qualität der endgültigen Ergebnisse zu verbessern. Dies ist besonders wichtig bei komplexen realweltlichen Umgebungen und Aufgaben, bei denen Versuch und Irrtum entscheidend für die Vervollständigung von Aufgaben sind. Zwei beliebte Methoden für diesen Reflexions- oder Kritikmechanismus umfassen [ReAct](https://www.promptingguide.ai/techniques/react) und [Reflexion](https://arxiv.org/abs/2303.11366).
|
||||
|
||||
Als Beispiel kombiniert ReAct Argumentation und Handeln mit dem Ziel, einem LLM zu ermöglichen, komplexe Aufgaben zu lösen, indem es zwischen einer Reihe von Schritten wechselt (wiederholt N-mal): `Gedanke`, `Aktion` und `Beobachtung`. ReAct erhält Feedback aus der Umgebung in Form von Beobachtungen. Andere Arten von Feedback können menschliches und Modell-Feedback einschließen. Die Abbildung unten zeigt ein Beispiel von ReAct und die verschiedenen Schritte, die bei der Beantwortung von Fragen beteiligt sind:
|
||||
|
||||
!["ReAct-Agent"](../../img/react.png)
|
||||
|
||||
Erfahren Sie mehr über ReAct hier:
|
||||
|
||||
<Cards>
|
||||
<Card
|
||||
icon={<FilesIcon />}
|
||||
title="ReAct-Prompting"
|
||||
href="https://www.promptingguide.ai/techniques/react"
|
||||
/>
|
||||
</Cards>
|
||||
|
||||
### Speicher
|
||||
Das Speichermodul hilft, die internen Protokolle des Agenten zu speichern, einschließlich vergangener Gedanken, Aktionen und Beobachtungen aus der Umwelt, einschließlich aller Interaktionen zwischen Agent und Benutzer. Es gibt zwei Haupttypen von Speichern, die in der LLM-Agenten-Literatur berichtet wurden:
|
||||
|
||||
- **Kurzzeitspeicher** - umfasst Kontextinformationen über die aktuellen Situationen des Agenten; dies wird typischerweise durch In-Kontext-Lernen realisiert, was bedeutet, dass es kurz und begrenzt ist aufgrund von Kontextfenster-Einschränkungen.
|
||||
- **Langzeitspeicher** - umfasst die vergangenen Verhaltensweisen und Gedanken des Agenten, die über einen längeren Zeitraum behalten und abgerufen werden müssen; dies nutzt oft einen externen Vektorspeicher, der durch schnellen und skalierbaren Abruf zugänglich ist, um dem Agenten bei Bedarf relevante Informationen zu liefern.
|
||||
|
||||
Hybrid-Speicher integriert sowohl Kurzzeit- als auch Langzeitspeicher, um die Fähigkeit eines Agenten zur langfristigen Argumentation und zur Ansammlung von Erfahrungen zu verbessern.
|
||||
|
||||
Es gibt auch unterschiedliche Speicherformate, die bei der Entwicklung von Agenten berücksichtigt werden müssen. Repräsentative Speicherformate umfassen natürliche Sprache, Einbettungen, Datenbanken und strukturierte Listen, unter anderem. Diese können auch kombiniert werden, wie im Geist in Minecraft ([GITM](https://arxiv.org/abs/2305.17144)), der eine Schlüssel-Wert-Struktur nutzt, bei der die Schlüssel durch natürliche Sprache repräsentiert werden und die Werte durch Einbettungsvektoren dargestellt werden.
|
||||
|
||||
Sowohl die Planungs- als auch die Speichermodule ermöglichen es dem Agenten, in einer dynamischen Umgebung zu operieren und es ihm zu ermöglichen, vergangene Verhaltensweisen effektiv zu erinnern und zukünftige Aktionen zu planen.
|
||||
|
||||
### Werkzeuge
|
||||
|
||||
Werkzeuge entsprechen einem Satz von Werkzeug/en, der/die es dem LLM-Agenten ermöglicht, mit externen Umgebungen zu interagieren, wie z. B. Wikipedia Search API, Code-Interpreter und Mathematik-Engine. Werkzeuge könnten auch Datenbanken, Wissensdatenbanken und externe Modelle umfassen. Wenn der Agent mit externen Werkzeugen interagiert, führt er Aufgaben über Workflows aus, die dem Agenten helfen, Beobachtungen oder notwendige Informationen zu erhalten, um Teilaufgaben zu vervollständigen und die Benutzeranfrage zu erfüllen. In unserer anfänglichen gesundheitsbezogenen Anfrage ist ein Code-Interpreter ein Beispiel für ein Werkzeug, das Code ausführt und die erforderlichen Diagramminformationen generiert, die vom Benutzer angefragt werden.
|
||||
|
||||
Werkzeuge werden von LLMs auf verschiedene Weisen genutzt:
|
||||
|
||||
- [MRKL](https://arxiv.org/abs/2205.00445) ist ein Framework, das LLMs mit Expertenmodulen kombiniert, die entweder LLMs oder symbolisch sind (Rechner oder Wetter-API).
|
||||
- [Toolformer](https://arxiv.org/abs/2302.04761) verfeinert LLMs zur Verwendung von externen Tool-APIs.
|
||||
- [Funktionsaufruf](https://www.promptingguide.ai/applications/function_calling) - erweitert LLMs mit der Fähigkeit zur Werkzeugnutzung, die die Definition eines Satzes von Tool-APIs umfasst und diese als Teil einer Anfrage dem Modell zur Verfügung stellt.
|
||||
- [HuggingGPT](https://arxiv.org/abs/2303.17580) - ein LLM-betriebener Agent, der LLMs als Aufgabenplaner nutzt, um verschiedene existierende KI-Modelle (basierend auf Beschreibungen) zu verbinden, um KI-Aufgaben zu lösen.
|
||||
|
||||
!["HuggingGPT"](../../img/agents/hugginggpt.png)
|
||||
|
||||
## Anwendungen von LLM-Agenten
|
||||
|
||||
!["ChemCrow"](../../img/agents/chemcrow.png)
|
||||
*Der ChemCrow-Agent, entworfen, um Aufgaben in organischer Synthese, Arzneimittelforschung und Materialdesign zu vervollständigen. Abbildungsquelle: Bran et al., 2023*
|
||||
|
||||
In diesem Abschnitt heben wir Beispiele für Domänen und Fallstudien hervor, in denen LLM-basierte Agenten effektiv angewendet wurden, aufgrund ihrer komplexen Argumentations- und Allgemeinwissensfähigkeiten.
|
||||
|
||||
### Bemerkenswerte LLM-basierte Agenten
|
||||
|
||||
- [Ma et al. (2023)](https://arxiv.org/abs/2307.15810) analysieren die Wirksamkeit von Gesprächsagenten zur Unterstützung des mentalen Wohlbefindens und finden heraus, dass der Agent Benutzern helfen kann, mit Ängsten umzugehen, aber manchmal schädlichen Inhalt produzieren kann.
|
||||
- [Horton (2023)](https://arxiv.org/abs/2301.07543) gibt LLM-basierten Agenten Ausstattung, Präferenzen und Persönlichkeiten, um menschliche ökonomische Verhaltensweisen in simulierten Szenarien zu erkunden.
|
||||
- [Generative Agents](https://arxiv.org/abs/2304.03442) und [AgentSims](https://arxiv.org/abs/2308.04026) zielen beide darauf ab, das menschliche tägliche Leben in einer virtuellen Stadt zu simulieren, indem sie mehrere Agenten konstruieren.
|
||||
- [Blind Judgement](https://arxiv.org/abs/2301.05327) setzt mehrere Sprachmodelle ein, um die Entscheidungsprozesse mehrerer Richter zu simulieren; Vorhersage der Entscheidungen des realen Obersten Gerichtshofs mit besserer als zufälliger Genauigkeit.
|
||||
- [Ziems et al. (2023)](https://arxiv.org/abs/2305.03514) stellt Agenten vor, die Forschern bei Aufgaben wie dem Generieren von Zusammenfassungen, Schreiben von Skripten und Extrahieren von Schlüsselwörtern helfen können.
|
||||
- [ChemCrow](https://arxiv.org/abs/2304.05376) ist ein chemischer LLM-Agent, der chemiebezogene Datenbanken nutzt, um autonom die Synthese von Insektenschutzmitteln, drei Organokatalysatoren und die geleitete Entdeckung eines neuen Chromophors zu planen und auszuführen.
|
||||
- [Boiko et al. (2023)] kombiniert mehrere LLMs zur Automatisierung des Designs, der Planung und der Ausführung wissenschaftlicher Experimente.
|
||||
- [Math Agents]() unterstützen Forscher beim Erkunden, Entdecken, Lösen und Beweisen mathematischer Probleme. [EduChat](https://arxiv.org/abs/2308.02773) und [CodeHelp](https://arxiv.org/abs/2308.06921) sind zwei weitere bemerkenswerte Beispiele für LLM-Agenten, entwickelt für die Bildung.
|
||||
- [Mehta et al. (2023)](https://arxiv.org/abs/2304.10750) schlagen ein interaktives Framework vor, das es menschlichen Architekten ermöglicht, mit KI-Agenten zu interagieren, um Strukturen in einer 3D-Simulationsumgebung zu konstruieren.
|
||||
- [ChatDev](https://arxiv.org/abs/2307.07924), [ToolLLM](https://arxiv.org/abs/2307.16789), [MetaGPT](https://arxiv.org/abs/2308.00352) sind bemerkenswerte Beispiele, bei denen KI-Agenten das Potenzial zeigen, das Programmieren, Debuggen, Testen zu automatisieren und bei anderen Softwareentwicklungsaufgaben zu helfen.
|
||||
- [D-Bot](https://arxiv.org/abs/2308.05481) ein LLM-basierter Datenbankadministrator, der kontinuierlich Erfahrung in der Datenbankwartung erwirbt und Diagnose- und Optimierungsratschläge für Datenbanken bereitstellt.
|
||||
- [IELLM](https://arxiv.org/abs/2304.14354) wendet LLMs an, um Herausforderungen in der Öl- und Gasindustrie anzugehen.
|
||||
- [Dasgupta et al. 2023](https://arxiv.org/abs/2302.00763) präsentiert ein einheitliches Agentensystem für verkörperte Argumentation und Aufgabenplanung.
|
||||
- [OS-Copilot](https://arxiv.org/abs/2402.07456) ein Framework zum Aufbau von generalistischen Agenten, die mit umfassenden Elementen in einem Betriebssystem (OS) interagieren können, einschließlich des Webs, Code-Terminals, Dateien, Multimedia und verschiedener Drittanbieteranwendungen.
|
||||
|
||||
### LLM Agent Werkzeuge
|
||||
|
||||
!["AutoGen"](../../img/agents/autogen.png)
|
||||
*AutoGen-Funktionen; Abbildungsquelle: https://microsoft.github.io/autogen*
|
||||
|
||||
Im Folgenden sind bemerkenswerte Beispiele von Werkzeugen und Frameworks aufgeführt, die zum Erstellen von LLM-Agenten verwendet werden:
|
||||
|
||||
- [LangChain](https://python.langchain.com/docs/get_started/introduction): ein Framework zur Entwicklung von Anwendungen und Agenten, die von Sprachmodellen angetrieben werden.
|
||||
- [AutoGPT](https://github.com/Significant-Gravitas/AutoGPT): stellt Werkzeuge zum Erstellen von KI-Agenten bereit.
|
||||
- [Langroid](https://github.com/langroid/langroid): Vereinfacht die Erstellung von LLM-Anwendungen mit Multi-Agent-Programmierung: Agenten als First-Class-Citizens, die über Nachrichten an Aufgaben zusammenarbeiten.
|
||||
- [AutoGen](https://microsoft.github.io/autogen/): ein Framework, das die Entwicklung von LLM-Anwendungen mit mehreren Agenten ermöglicht, die miteinander kommunizieren können, um Aufgaben zu lösen.
|
||||
- [OpenAgents](https://github.com/xlang-ai/OpenAgents): eine offene Plattform zur Nutzung und Hosting von Sprachagenten in der realen Welt.
|
||||
- [LlamaIndex](https://www.llamaindex.ai/) - ein Framework zum Verbinden von benutzerdefinierten Datenquellen mit großen Sprachmodellen.
|
||||
- [GPT Engineer](https://github.com/gpt-engineer-org/gpt-engineer): automatisiert die Codegenerierung, um Entwicklungsaufgaben zu erledigen.
|
||||
- [DemoGPT](https://github.com/melih-unsal/DemoGPT): autonomer KI-Agent zum Erstellen interaktiver Streamlit-Apps.
|
||||
- [GPT Researcher](https://github.com/assafelovic/gpt-researcher): ein autonomer Agent, der für umfassende Online-Recherchen zu einer Vielzahl von Aufgaben konzipiert ist.
|
||||
- [AgentVerse](https://github.com/OpenBMB/AgentVerse): entwickelt, um die Einsatzmöglichkeiten mehrerer LLM-basierter Agenten in verschiedenen Anwendungen zu erleichtern.
|
||||
- [Agents](https://github.com/aiwaves-cn/agents): eine Open-Source-Bibliothek/Framework zum Erstellen autonomer Sprachagenten. Die Bibliothek unterstützt Funktionen wie Langzeit-Kurzzeitspeicher, Werkzeugnutzung, Webnavigation, Multi-Agent-Kommunikation und brandneue Funktionen einschließlich Mensch-Agent-Interaktion und symbolische Steuerung.
|
||||
- [BMTools](https://github.com/OpenBMB/BMTools): erweitert Sprachmodelle mit Werkzeugen und dient als Plattform für die Gemeinschaft zum Erstellen und Teilen von Werkzeugen.
|
||||
- [crewAI](https://www.crewai.io/): KI-Agent-Framework neu gedacht für Ingenieure, bietet leistungsstarke Fähigkeiten mit Einfachheit zum Erstellen von Agenten und Automatisierungen.
|
||||
- [Phidata](https://github.com/phidatahq/phidata): ein Toolkit zum Erstellen von KI-Assistenten durch Funktionsaufrufe.
|
||||
|
||||
## LLM Agent Bewertung
|
||||
|
||||
![""](../../img/agents/agentbench.png)
|
||||
*AgentBench Benchmark zur Bewertung von LLM-als-Agent in realen Herausforderungen und 8 verschiedenen Umgebungen. Abbildungsquelle: Liu et al. 2023*
|
||||
|
||||
Ähnlich wie bei der Bewertung von LLM selbst, stellt die Bewertung von LLM-Agenten eine herausfordernde Aufgabe dar. Laut Wang et al., (2023) umfassen gängige Bewertungsmethoden:
|
||||
|
||||
- **Menschliche Annotation**: Umfasst menschliche Evaluatoren, die die Ergebnisse der LLM direkt über verschiedene Aspekte bewerten, die in der Anwendung wichtig sind, wie Ehrlichkeit, Hilfsbereitschaft, Engagement, Unvoreingenommenheit und mehr.
|
||||
- **Turing-Test**: Menschliche Evaluatoren werden gebeten, Ergebnisse von echten Menschen und Agenten zu vergleichen, wobei nicht unterscheidbare Ergebnisse bedeuten, dass Agenten eine menschenähnliche Leistung erzielen können.
|
||||
- **Metriken**: Dabei handelt es sich um sorgfältig entworfene Metriken, die die Qualität der Agenten widerspiegeln. Zu den bemerkenswerten Metriken gehören Aufgabenerfolgsmetriken, menschliche Ähnlichkeitsmetriken und Effizienzmetriken.
|
||||
- **Protokolle**: Entsprechen gängigen Bewertungsprotokollen, die bestimmen, wie die Metriken verwendet werden. Beispiele hierfür sind Simulationen aus der realen Welt, soziale Bewertungen, Mehrfachaufgabenbewertungen und Softwaretests.
|
||||
- **Benchmarks**: Mehrere Benchmarks wurden entwickelt, um LLM-Agenten zu bewerten. Bemerkenswerte Beispiele umfassen [ALFWorld](https://alfworld.github.io/), [IGLU](https://arxiv.org/abs/2304.10750), [Tachikuma](https://arxiv.org/abs/2307.12573), [AgentBench](https://github.com/THUDM/AgentBench), [SocKET](https://arxiv.org/abs/2305.14938), [AgentSims](https://arxiv.org/abs/2308.04026), [ToolBench](https://arxiv.org/abs/2305.16504), [WebShop](https://arxiv.org/abs/2207.01206), [Mobile-Env](https://github.com/stefanbschneider/mobile-env), [WebArena](https://github.com/web-arena-x/webarena), [GentBench](https://arxiv.org/abs/2308.04030), [RocoBench](https://project-roco.github.io/), [EmotionBench](https://project-roco.github.io/), [PEB](https://arxiv.org/abs/2308.06782), [ClemBench](https://arxiv.org/abs/2305.13455) und [E2E](https://arxiv.org/abs/2308.04624).
|
||||
|
||||
## Herausforderungen
|
||||
|
||||
LLM-Agenten stehen noch am Anfang, daher gibt es viele Herausforderungen und Einschränkungen beim Aufbau:
|
||||
|
||||
- **Rollenübernahmefähigkeit**: LLM-basierte Agenten müssen sich in der Regel eine Rolle aneignen, um Aufgaben in einem Bereich effektiv abzuschließen. Für Rollen, die das LLM nicht gut charakterisiert, ist es möglich, das LLM mit Daten zu feintunen, die ungewöhnliche Rollen oder psychologische Charaktere darstellen.
|
||||
- **Langfristige Planung und begrenzte Kontextlänge**: die Planung über eine lange Geschichte bleibt eine Herausforderung, die zu Fehlern führen könnte, von denen der Agent sich möglicherweise nicht erholt. LLMs sind auch in der Kontextlänge begrenzt, die sie unterstützen können, was zu Einschränkungen führen könnte, die die Fähigkeiten des Agenten einschränken, wie z.B. die Nutzung des Kurzzeitgedächtnisses.
|
||||
- **Generalisierte menschliche Ausrichtung**: es ist auch herausfordernd, Agenten mit vielfältigen menschlichen Werten auszurichten, was auch bei Standard-LLMs üblich ist. Eine potenzielle Lösung beinhaltet die Möglichkeit, das LLM durch das Entwerfen fortgeschrittener Prompting-Strategien neu auszurichten.
|
||||
- **Prompt-Robustheit und -Zuverlässigkeit**: ein LLM-Agent kann mehrere Prompts umfassen, die dazu dienen, die verschiedenen Module wie Speicher und Planung anzutreiben. Es ist üblich, auf Zuverlässigkeitsprobleme in LLMs zu stoßen, sogar bei den geringfügigsten Änderungen an Prompts. LLM-Agenten beinhalten ein gesamtes Prompt-Framework, was sie anfälliger für Robustheitsprobleme macht. Die potenziellen Lösungen umfassen das Ausarbeiten von Prompt-Elementen durch Versuch und Irrtum, das automatische Optimieren/Einstellen von Prompts oder das automatische Generieren von Prompts mithilfe von GPT. Ein weiteres häufiges Problem bei LLMs ist Halluzination, das auch bei LLM-Agenten weit verbreitet ist. Diese Agenten stützen sich auf natürliche Sprache, um mit externen Komponenten zu interagieren, die widersprüchliche Informationen einführen könnten und zu Halluzinationen und Faktualitätsproblemen führen könnten.
|
||||
- **Wissensgrenze**: ähnlich wie bei Wissensmismatch-Problemen, die zu Halluzinationen oder Faktualitätsproblemen führen könnten, ist es herausfordernd, den Wissensumfang von LLMs zu kontrollieren, was die Wirksamkeit von Simulationen erheblich beeinflussen kann. Konkret könnte das interne Wissen eines LLMs Vorurteile einführen oder Wissen nutzen, das dem Nutzer unbekannt ist, was das Verhalten des Agenten bei der Bedienung in bestimmten Umgebungen beeinflussen könnte.
|
||||
- **Effizienz**: LLM-Agenten umfassen eine erhebliche Anzahl von Anforderungen, die vom LLM bearbeitet werden, was die Effizienz von Agentenaktionen beeinträchtigen könnte, da sie stark von der LLM-Inferenzgeschwindigkeit abhängt. Auch die Kosten sind ein Anliegen beim Einsatz mehrerer Agenten.
|
||||
|
||||
## Referenzen
|
||||
|
||||
- [LLM Powered Autonomous Agents](https://lilianweng.github.io/posts/2023-06-23-agent/)
|
||||
- [MRKL Systems: A modular, neuro-symbolic architecture that combines large language models, external knowledge sources and discrete reasoning](https://arxiv.org/abs/2205.00445)
|
||||
- [A Survey on Large Language Model based Autonomous Agents](https://arxiv.org/abs/2308.11432)
|
||||
- [The Rise and Potential of Large Language Model Based Agents: A Survey](https://arxiv.org/abs/2309.07864)
|
||||
- [Large Language Model based Multi-Agents: A Survey of Progress and Challenges](https://arxiv.org/abs/2402.01680)
|
||||
- [Cognitive Architectures for Language Agents](https://arxiv.org/abs/2309.02427)
|
||||
- [Introduction to LLM Agents](https://developer.nvidia.com/blog/introduction-to-llm-agents/)
|
||||
- [LangChain Agents](https://python.langchain.com/docs/use_cases/tool_use/agents)
|
||||
- [Building Your First LLM Agent Application](https://developer.nvidia.com/blog/building-your-first-llm-agent-application/)
|
||||
- [Building LLM applications for production](https://huyenchip.com/2023/04/11/llm-engineering.html#control_flow_with_llm_agents)
|
||||
- [Awesome LLM agents](https://github.com/kaushikb11/awesome-llm-agents)
|
||||
- [Awesome LLM-Powered Agent](https://github.com/hyp1231/awesome-llm-powered-agent#awesome-llm-powered-agent)
|
||||
- [Functions, Tools and Agents with LangChain](https://www.deeplearning.ai/short-courses/functions-tools-agents-langchain/)
|
||||
|
@ -0,0 +1,27 @@
|
||||
# LLM Tokenisierung
|
||||
|
||||
Andrej Karpathy hat kürzlich einen neuen [Vortag](https://youtu.be/zduSFxRajkE?si=Hq_93DBE72SQt73V) über die Tokenisierung von großen Sprachmodellen (LLM) veröffentlicht. Die Tokenisierung ist ein wesentlicher Teil des Trainings von LLMs, aber es ist ein Prozess, der das Trainieren von Tokenizern mit ihren eigenen Datensätzen und Algorithmen beinhaltet (z.B. [Byte Pair Encoding](https://en.wikipedia.org/wiki/Byte_pair_encoding)).
|
||||
|
||||
In dem Vortrag zeigt Karpathy, wie man einen GPT-Tokenisierer von Grund auf implementiert. Er diskutiert auch merkwürdige Verhaltensweisen, die auf die Tokenisierung zurückzuführen sind.
|
||||
|
||||
!["LLM-Tokenisierung"](../../img/research/tokenization.png)
|
||||
|
||||
*Quelle der Abbildung: https://youtu.be/zduSFxRajkE?t=6711*
|
||||
|
||||
Hier ist die Textversion der Liste oben:
|
||||
|
||||
- Warum können LLM keine Wörter buchstabieren? Tokenisierung.
|
||||
- Warum können LLM keine super einfachen Zeichenkettenverarbeitungsaufgaben wie das Umkehren einer Zeichenkette durchführen? Tokenisierung.
|
||||
- Warum sind LLM bei nicht-englischen Sprachen (z.B. Japanisch) schlechter? Tokenisierung.
|
||||
- Warum sind LLM schlecht in einfacher Arithmetik? Tokenisierung.
|
||||
- Warum hatte GPT-2 mehr als nötige Probleme beim Programmieren in Python? Tokenisierung.
|
||||
- Warum stoppt mein LLM abrupt, wenn es die Zeichenkette "\<endoftext\>" sieht? Tokenisierung.
|
||||
- Was ist diese merkwürdige Warnung, die ich über ein "nachlaufendes Leerzeichen" bekomme? Tokenisierung.
|
||||
- Warum bricht das LLM ab, wenn ich es nach "SolidGoldMagikarp" frage? Tokenisierung.
|
||||
- Warum sollte ich YAML über JSON bei der Verwendung von LLMs bevorzugen? Tokenisierung.
|
||||
- Warum ist LLM eigentlich keine End-to-End-Sprachmodellierung? Tokenisierung.
|
||||
- Was ist die wirkliche Wurzel des Leidens? Tokenisierung.
|
||||
|
||||
Um die Zuverlässigkeit von LLMs zu verbessern, ist es wichtig zu verstehen, wie man diese Modelle promptet, was ebenfalls das Verständnis ihrer Einschränkungen beinhaltet. Obwohl nicht allzu viel Wert auf Tokenizer (jenseits der Konfiguration von `max_tokens`) zur Inferenzzeit gelegt wird, beinhaltet gutes Prompt-Engineering ein Verständnis der Einschränkungen und Grenzen, die in der Tokenisierung ähnlich sind, wie Sie Ihren Prompt strukturieren oder formatieren. Sie könnten ein Szenario haben, in dem Ihr Prompt unterdurchschnittlich abschneidet, weil es beispielsweise versagt, ein Akronym oder Konzept zu verstehen, das nicht richtig verarbeitet oder tokenisiert wird. Das ist ein sehr häufiges Problem, das viele LLM-Entwickler und Forscher übersehen.
|
||||
|
||||
Ein gutes Werkzeug für die Tokenisierung ist der [Tiktokenizer](https://tiktokenizer.vercel.app/) und das ist tatsächlich das, was im Vortrag zu Demonstrationszwecken verwendet wird.
|
Loading…
Reference in New Issue