Der Wettlauf um Open-Source-Großsprachmodelle
(arxiv.org)- Eine Übersicht, die zum ersten Jahrestag des Starts von ChatGPT vergleicht, bei welchen Aufgaben Open-Source-LLMs eine gleichwertige oder bessere Leistung als ChatGPT erzielten
- ChatGPT zeigte durch Reinforcement Learning from Human Feedback nützliche und sichere Antworten sowie das Befolgen von Anweisungen und erreichte nur zwei Monate nach dem Start 100 Millionen Nutzer
- Bei geschlossenen LLMs sind Architektur und Trainingsdaten nicht öffentlich, wodurch Belastungen bei Reproduzierbarkeit, Risikobewertung, Ausfällen, API-Kosten, Dateneigentum und Datenschutz bestehen bleiben
- Open-Source-Modelle wie Llama-2 und Falcon gelten zwar als rückständig gegenüber geschlossenen Modellen wie GPT-4, doch in einigen Benchmarks gab es Fälle, in denen sie GPT-3.5-turbo übertrafen
- In einem Umfeld, in dem sich Modelle und Benchmarks schnell verändern, sollte man statt eines einzelnen Siegers getrennt nach allgemeinen Fähigkeiten, Agenten, Schlussfolgern, Langkontext, Anwendungen und Zuverlässigkeit betrachten
Die veränderte LLM-Landschaft nach ChatGPT
- ChatGPT hat seit seiner Veröffentlichung Ende 2022 große Veränderungen in der KI-Forschung und im kommerziellen Bereich ausgelöst
- Durch die Anwendung von überwachtem Fine-Tuning und Reinforcement Learning from Human Feedback auf Large Language Models machte es eine Chatbot-Erfahrung populär, die auf verschiedenste Fragen antwortet und Anweisungen befolgt
- Zuvor wurden Natural-Language-Aufgaben wie Zusammenfassung oder Question Answering meist von Modellen bearbeitet, die nach dem Pretraining aufgabenspezifisch feinabgestimmt wurden; ChatGPT erledigt solche Aufgaben jedoch in großer Breite
- Innerhalb von zwei Monaten nach dem Start erreichte es 100 Millionen Nutzer und wuchs damit schneller als beliebte Apps wie TikTok oder YouTube
- Unternehmen investieren weiterhin stark in ChatGPT, weil sie Einsparungen bei Arbeitskosten, Workflow-Automatisierung und neue Kundenerlebnisse erwarten
Einschränkungen durch geschlossene LLMs
- ChatGPT ist nicht Open Source, und der Zugriff wird von einem privaten Unternehmen kontrolliert
- Zwar wird erklärt, dass es dem Verfahren folgt, das mit InstructGPT, also GPT-3.5, eingeführt wurde, doch die genaue Architektur, die Pretraining-Daten und die Fine-Tuning-Daten sind nicht veröffentlicht
- Diese Geschlossenheit erzeugt bei Bewertung und Betrieb des Modells mehrere Belastungen
- Da interne Trainingsverfahren unbekannt sind, ist es schwierig, gesellschaftliche Risiken wie die Erzeugung toxischer, unethischer oder falscher Inhalte abzuschätzen
- Es gibt Berichte, dass sich die Leistung von ChatGPT im Zeitverlauf verändert, was es schwierig macht, reproduzierbare Ergebnisse zu erhalten
- Im November 2023 kam es zu zwei größeren Ausfällen, darunter Fälle, in denen der Zugriff auf die ChatGPT-Website und die API vollständig blockiert war
- Bei der Einführung in Unternehmen können API-Aufrufkosten, Serviceausfälle, Dateneigentum und Datenschutz zu realen Belastungen werden
- Auch unvorhersehbare Ereignisse wie der Board-Konflikt rund um die Entlassung von CEO Sam Altman, den Widerstand der Mitarbeitenden und seine Rückkehr werden für Unternehmenskunden zu einem Faktor
Wie weit haben Open-Source-LLMs aufgeholt?
- Open-Source-LLMs gelten als Alternative, mit der sich die Einschränkungen geschlossener LLMs abmildern oder umgehen lassen
- Die Forschungsgemeinschaft setzt ihre Bemühungen fort, leistungsstarke LLMs als Open Source verfügbar zu halten
- Stand Ende 2023 war die Wahrnehmung weit verbreitet, dass Open-Source-LLMs wie Llama-2 oder Falcon hinter geschlossenen Modellen wie OpenAIs GPT-3.5 und GPT-4, Anthropics Claude und Googles Bard zurückliegen
- GPT-4 wird allgemein als das fortschrittlichste Modell angesehen
- Die Lücke wird jedoch weiter kleiner, und in einigen Standard-Benchmarks erzielen die leistungsstärksten Open-Source-LLMs bessere Ergebnisse als GPT-3.5-turbo
- Auch der Vergleich selbst ist nicht einfach
- Geschlossene LLMs werden mit aktuelleren Daten neu trainiert und fortlaufend aktualisiert
- Auch Open-Source-LLMs werden neu veröffentlicht, um aufzuholen
- Es gibt viele Evaluierungsdatensätze und Benchmarks für den Vergleich von LLMs, sodass es schwierig ist, ein einziges bestes Modell zu bestimmen
Bewertete Bereiche und repräsentative Modelle
- Die Übersicht bündelt verschiedene Evaluationen, die Open-Source-LLMs mit ChatGPT vergleichen, und ordnet die aktuelle Leistungslücke nach Bereichen ein
-
Allgemeine Fähigkeiten
- Enthalten sind AlpacaEval, MT-bench, ELO rating, Open LLM leaderboard und weitere
- Als relevante Open-Source-Modelle werden Llama-2, WizardLM, Zephyr, Deepseek, Yi, Mixtral und weitere behandelt
-
Agentenfähigkeiten
- Unterteilt in Tool-Nutzung, Selbst-Debugging, Befolgen von Feedback in natürlicher Sprache und Erkundung von Umgebungen
- API-Bank, ToolBench, APIBench, ToolAlpaca, InterCode-Bash, InterCode-SQL, MINT, ALFWorld, WebArena und weitere sind in der Bewertung enthalten
- Gorilla, ToolLLaMA, Lemur-chat, AgentLlama, OpenChat-3.5 und weitere sind zugehörige Modelle
-
Logisches Schlussfolgern
- Umfasst Mathematik und Coding
- GSM8K, MATH, TheoremQA, HumanEval, MBPP, APPs und weitere werden als Evaluierungsaufgaben genutzt
- WizardMath und WizardCoder werden als repräsentative Modelle genannt
-
Modellierung langer Kontexte
- Enthalten sind SCROLLS, Zero-SCROLLS, LongBench, L-Eval, BAMBOO, M4LE und weitere
- Llama-2-long wird als zugehöriges Modell behandelt
-
Anwendungsspezifische Bereiche
- Umfasst frageorientierte Zusammenfassung, offene Question Answering, Medizin, Generierung strukturierter Daten und Erzeugung von Kritiken
- QMSum, SQuALITY, CovidET, NEWTS, NQ, TriviaQA, NewsQA, SQuAD, Quoref, NarrativeQA, DROP, MIMIC-CXR und weitere werden als Aufgaben verwendet
- InstructRetro, MentaLLaMA, Radiology-Llama-2, Struct-Bench, Shepherd und weitere sind zugehörige Modelle
-
Zuverlässigkeit
- Behandelt Halluzinationen und Sicherheit
- TruthfulQA, FactualityPrompt, FActScore, KoLA-KC, HaluEval, FACTOR, SafetyBench, XSTEST und weitere sind enthalten
- Platypus und Chain-of-Verification werden als Ansätze im Zusammenhang mit Halluzinationen erwähnt
Entscheidungskriterien für Forschende und Unternehmen
- Diese Übersicht liefert der Forschungsgemeinschaft und dem Unternehmenssektor Material, um den aktuellen Stand und das künftige Potenzial von Open-Source-LLMs einzuschätzen
- Forschende können sie nutzen, um den Fortschritt und die Veränderungstrends von Open-Source-LLMs zusammenzufassen und künftige Forschungsrichtungen zu finden
- Entscheidungsträger in Unternehmen erhalten Einsichten und Orientierung, um Anwendbarkeit und Vorteile der Einführung von Open-Source-LLMs zu bewerten
- Das Paper führt zunächst Hintergrundkonzepte ein, untersucht dann Open-Source-LLMs, die ChatGPT in verschiedenen Bereichen geschlagen haben, diskutiert Entwicklungstrends, Best Practices beim Training und potenzielle Probleme und schließt mit einer Zusammenfassung
1 Kommentare
Hacker-News-Kommentare
In den letzten Tagen sind einige starke öffentliche Modelle erschienen
Qwen 72B und 1.8B werben mit 32K Kontext, Training auf 3T Tokens, einer kommerziellen Lizenz für unter 100 Millionen monatlich aktive Nutzer und starker Benchmark-Performance: https://twitter.com/huybery/status/1730127387109781932
DeepSeek LLM 67B hat 4K Kontext, 2T Tokens, eine Apache-2.0-Lizenz und ist stark bei Code. Den Benchmarks nach wirkt DeepSeek Code 33B allerdings besser: https://twitter.com/deepseek_ai/status/1729881611234431456
Kürzlich sind außerdem Yi 34B, ein angeblich bald erscheinendes 100B-Modell, XVERSE-65B, Aquila2-70B und Yuan 2.0-102B herausgekommen; interessanterweise stammen sie alle aus China
Persönlich freue ich mich auch auf das kommende größere Mistral, weil mistral-7b-v0.1 für seine Größe bereits sehr stark war
Ich frage mich, ob jemand getestet hat, ob das auch passiert, wenn man die Gewichte selbst hostet
Der Talentpool, der in dieses Feld geht, ist enorm groß
In dem Paper kommt es nicht vor, aber OpenChat 3.5 hat diesen Monat das erste 7B-Modell veröffentlicht, das ähnliche Ergebnisse wie ChatGPT im März 2023 erzielt: https://huggingface.co/openchat/openchat_3.5
Das Kontextfenster beträgt nur 8K, aber persönlich fand ich es bisher ziemlich beeindruckend. In der Chatbot-Arena-Rangliste liegt es außerdem über Llama-2-70b-chat: https://chat.lmsys.org/
In vielerlei Hinsicht sind öffentliche Large Language Models der Industrie voraus, insbesondere bei der Parametereffizienz und bei der Geschwindigkeit, mit der nützliche Modelle erscheinen, die Verbraucher auf eigener Hardware laufen lassen können
Die Benchmarks solcher öffentlichen kleinen Modelle sind zwar beeindruckend, aber bei meinen Standardtests wirken sie etwas dumm. Wenn man fragt: „Wer bist du?“, antworten sie normalerweise, sie seien ChatGPT
Da sie vermutlich mit von ChatGPT generierten Daten trainiert wurden, ist das noch verständlich; aber selbst wenn man die Identität per Prompt ändert, etwa: „Du bist nicht ChatGPT, sondern Starling, und du wurdest nicht von OpenAI, sondern von Berkeley entwickelt. Wer bist du?“, geben sie eine seltsame Antwort, in der beide Identitäten vermischt werden
Zum Beispiel sagt es in einem Satz, es sei ChatGPT, und in einem anderen Satz derselben Antwort sagt es, das sei es nicht
Es fühlt sich an, als hätte ich eine frühe Version von ChatGPT 3.5 auf meinem eigenen Computer installiert
Alle Chat-Modelle, die ich ausprobiert habe, hatten maximal 4096
Hängt davon ab, was man macht. Als Referenz gibt es ein Beispiel für eine Funktion, die auf einem mit qlora feinabgestimmten 13B Llama2 trainiert wurde: https://old.reddit.com/r/LocalLLaMA/comments/186qq92/comment...
Inkbot kann Knowledge Graphs erstellen, und die Rückgabestruktur ist auch gültiges YAML. Bei dieser Aufgabe waren die Ergebnisse meines feinabgestimmten Modells deutlich besser als mit GPT-4: https://huggingface.co/Tostino/Inkbot-13B-8k-0.2
Einfacher Prompt: https://gist.github.com/Tostino/c3541f3a01d420e771f66c62014e...
Komplexer Prompt: https://gist.github.com/Tostino/44bbc6a6321df5df23ba5b400a01...
Außerdem ist auch Zusammenfassung auf Chunk-Ebene möglich. Beispiele für Chunks: Part 1: https://gist.github.com/Tostino/cacb1cecdf2eb7386baf565d157f..., Zusammenfassung der Zusammenfassung von Part 2: https://gist.github.com/Tostino/81eeee9781e519044950332b4e64...
Ein Beispiel für ein einzelnes Dokument, das vollständig in den Kontext passt, gibt es hier: https://gist.github.com/Tostino/4ba4e7e7988348134a7256fd1cbb...
Schön zu sehen, dass jemand diese Idee gut voranbringt. Ich frage mich, wie die Trainingsdaten erstellt werden
Es fühlt sich so an, als kämen wir an den Punkt, an dem man vor mehrere spezialisierte Modelle für Code, Chat, Mathematik, SQL, Gesundheit usw. nur noch einen Prompt-Router setzen muss. Das wäre dann so etwas wie eine lokale Mixture of Experts
Man schickt die Anfrage an einen Router, auf dem ein allgemeines Modell läuft, zerlegt und klassifiziert den Prompt oder die Frage, proxyt sie dann an Expertenmodelle und lässt die Antwort anschließend wieder vom allgemeinen Modell zusammensetzen
Ich frage mich, ob es Projekte gibt, die dem ähneln
Hugging Face hat Transformers Agents, und dort heißt es: „Es stellt eine Natural-Language-API über transformers bereit. Wir definieren eine kuratierte Menge von Tools und entwerfen einen Agenten, der natürliche Sprache interpretiert und diese Tools nutzt“
Es gibt bereits Tools wie Document Question Answering, Text Question Answering, Image Captioning, Image Question Answering, Image Segmentation, Speech Recognition, Text-to-Speech, Zero-Shot-Textklassifikation, Zusammenfassung, Übersetzung, das Herunterladen von Text von Web-URLs, Text-to-Image-Generierung, Bildtransformation und Text-to-Video-Generierung
Es ist so geschrieben, dass man benutzerdefinierte Tools hinzufügen kann, also lassen sich Anwendungsfälle ergänzen oder Modelle austauschen: https://huggingface.co/docs/transformers/transformers_agents
In der ersten Schicht kann man Natural Language Processing mit Zero-Shot-Klassifikation kombinieren, um die Art der Anfrage klarer zu bestimmen; danach kann man die Anfrage mit einem großen Sprachmodell in mehrere konkrete Teile zerlegen und an spezialisierte Modelle schicken
Am Ende kann man wieder ein großes Sprachmodell wie eine Zusammenfassungsmaschine verwenden, um alles zusammenzuführen. Das Problem ist, dass man ziemlich viele Ressourcen braucht, wenn man mehrere Modelle parallel laufen lassen will
Vielleicht werden auch alle Experten ausgeführt und anschließend die Wahrscheinlichkeiten verglichen. Soweit ich weiß, ist das nur Spekulation auf Basis einiger auf Xitter geleakter Details
Aktuelle Modelle mit etwa 70B Parametern wie Llama 2 70B liegen ungefähr auf dem Niveau von ChatGPT 3.5.
Kleinere Spitzenmodelle können auf den ersten Blick ähnlich wirken, halluzinieren aber deutlich mehr und haben weniger Weltwissen. GPT-4 „versteht“ auf einer tieferen Ebene, und kein öffentliches Modell kommt dem bisher nahe.
Ein Bewertungszeitraum von einem Jahr ist angemessen. Zumindest bei großen Sprachmodellen und Bildgenerierung scheint der Rest der Welt OpenAI etwa 12–18 Monate hinterherzuhinken.
Andererseits bieten öffentliche Technologien meist mehr Funktionen zur Ausgabesteuerung, um die sich OpenAI nicht kümmert, etwa die Grammar-Funktion von llama.cpp oder ControlNet. In diesem Sinne ist das öffentliche Lager bei der Anpassbarkeit OpenAI eher voraus.
Hier ist zum Beispiel ein Langzeittest, bei dem die Modellleistung mit absichtlich offenen und etwas mehrdeutigen Aufforderungen geprüft wird: https://chat.openai.com/share/dfd9b9ae-7214-4dd7-ad20-7ee07a...
Der GPT-4-Turbo-Chat verwirrte die Personen, wählte nicht einmal das Entführungsziel richtig aus, wechselte trotz Aufforderung nicht das Thema, wählte beim Ausdenken von Figuren aus der falschen Menge aus und wechselte auch auf Aufforderung hin nicht die Sprache.
Bei Zero-Shot-Fragen weiß es viel, aber in Situationen, in denen es Selbstkonsistenz und Aufmerksamkeit beweisen muss, bleibt es weit hinter GPT-4 zurück.
Umgekehrt liegt GPT-4 Vision weit vor öffentlichen Modellen.
DALL·E 3 halte ich für etwas besser als SDXL, aber die Qualität außerhalb der Texterzeugung wirkt ziemlich ähnlich.
Natürlich könnte ich mich auch selbst täuschen, weil ich nur die Dinge nutze, in denen SDXL gut ist. Wenn man es Drachen erzeugen lässt, war das jedes Mal schrecklich.
Auf die Frage im Titel selbst antworte ich nicht, weil ich dafür nicht genug weiß, aber da andere öffentliche Modelle erwähnt wurden, möchte ich auch DeepSeek 67B nennen, das ich heute Abend ausprobiert habe und recht gut fand.
https://chat.deepseek.com
Bisher hat diese Chat-UI meinen Bedarf an ChatGPT ausreichend ersetzt.
https://huggingface.co/deepseek-ai/deepseek-llm-67b-base
https://twitter.com/abacaj/status/1730019229175312612
Mistral OpenOrca war bei kreativem Schreiben und Analysen fast genauso gut wie GPT-4 Turbo.
Die Ausgabetexte neigen tatsächlich dazu, ziemlich ähnlich zu sein, was verdächtig ist, aber es spart jedenfalls viel Geld: https://huggingface.co/Open-Orca/Mistral-7B-OpenOrca
Es ist zwar etwas weniger stabil als GPT-3.5/4, aber bei meinen Textverarbeitungsaufgaben ist der Qualitätsunterschied fast wie ein Münzwurf.
Langfristig ist es nahezu unvermeidlich, dass öffentliche große Sprachmodelle aufzuholen beginnen.
Ein zu berücksichtigender Faktor sind die Kosten. Die öffentliche Community hat deutlich stärkere Ressourcenbeschränkungen und hat deshalb die Entwicklung von Modellen unter 30B wirklich stark beschleunigt.
Das einzige Gute neben den OpenAI-Modellen ist Claude.
Das erinnert an die Zeit, als Rackspace und andere mit OpenStack gewinnen wollten, weil es „offen“ war. Am Ende gewannen AWS und Azure, und selbst Google ist nur Nummer drei.
Die großen Unternehmen werden gewinnen, und für öffentliche Tools werden Nischen übrig bleiben.
Nach meiner persönlichen Erfahrung haben öffentliche große Sprachmodelle noch nicht GPT-3.5-Qualität erreicht. Das sehe ich so, trotz vieler Behauptungen, die sich auf fragwürdige Benchmarks stützen.
Trotzdem sind sie schon heute nützlich und lassen sich auch auf lokalen Rechnern ausführen. Für einfache Aufgaben nutze ich sie regelmäßig zusammen mit dem Neovim-Plugin gen.nvim, und es spart mir viel Zeit: https://github.com/David-Kunz/gen.nvim
Ich freue mich auf das, was noch kommt.
Lokal lasse ich Llama-Modelle über llama-cpp-python laufen, das eine OpenAI-kompatible Schicht bereitstellt.
Ich denke, öffentliche Modelle holen definitiv auf. Vor allem, weil es im letzten Monat einen stetigen Leistungsabfall bei GPT-4 gab.
https://chat.openai.com/share/c91287ee-9a5e-4c99-b5df-49cc45...