Blank white background with no objects or features visible.

Hallo EMEA! TrueFoundry baut seine Präsenz in Europa, dem Nahen Osten und Afrika weiter aus. Mehr erfahren. →

So feintunen Sie ein Llama-2 (7B), um ChatGPT zu schlagen

von TrueFoundry

Aktualisiert: November 3, 2026

Published: April 20, 2026

Large Language Models (LLMs) werden immer leistungsfähiger und für eine Vielzahl von Aufgaben eingesetzt, darunter Chatbots, Textgenerierung und Frage-Antwort-Systeme. Das Training von LLMs kann jedoch teuer und ressourcenintensiv sein. In diesem Blogbeitrag zeigen wir Ihnen, wie Sie ein kleineres LLM (7B) feintunen können, um eine bessere Leistung als ChatGPT zu erzielen.

Fine-Tuning ist ein Prozess, bei dem ein LLM auf einem spezifischen Datensatz trainiert wird, um seine Leistung bei einer bestimmten Aufgabe zu verbessern. In diesem Fall werden wir ein 7B-LLM feintunen, um zwei Zahlen zu multiplizieren.

Beginnen wir also mit der Leistung verschiedener Large Language Models bei einer einfachen Multiplikationsaufgabe: 458*987 = 452046.

Zuerst schauen wir uns das kürzlich von Meta veröffentlichte Modell Llama-2-7B an. Wir haben Llama-2 auf TrueFoundry deployed und es mit den LangChain-Integrationen von TrueFoundry ausprobiert. Hier ist das Ergebnis dafür.

Llama-2-7B 

Wie wir deutlich sehen können, schneidet dieses Modell bei der Aufgabe nicht gut ab (was angesichts der Größe des Modells auch zu erwarten ist). Schauen wir uns an, wie die State-of-the-Art-Modelle bei derselben Aufgabe abschneiden:

Schauen wir uns das Ergebnis von ChatGPT (GPT-3.5 Turbo) an:

ChatGPT (GPT-3.5 Turbo) 

Nun liegt die Antwort (451.086) sehr nahe am tatsächlichen Ergebnis von 452.046, aber die Antwort ist nicht korrekt.
Versuchen wir es mit einem anderen Prompt (um eine schrittweise Berechnung durchzuführen und zu sehen, was passiert):

0:00/1×

ChatGPT mit individuellem Prompt für Multiplikation

Aber erneut kommt es zu einem falschen Ergebnis: 450.606 🤨

Versuchen wir schließlich das State-of-the-Art-Modell (GPT-4) und prüfen wir, wie es bei dieser Aufgabe abschneidet:

GPT-4

Es ist sehr nah am richtigen Ergebnis (452.046) und könnte für jeden korrekt aussehen. Aber eindeutig ist die Antwort falsch.

Warum schneiden LLMs bei einfachen Multiplikationsaufgaben schlecht ab?

Die Antwort auf diese Frage ist sehr einfach. Sie sind nicht dafür "trainiert".

LLMs werden auf riesigen Datensätzen aus Text und Code trainiert, aber diese Daten sind nicht immer so strukturiert, dass sie für mathematische Überlegungen hilfreich sind. Beispielsweise enthalten die Daten möglicherweise keine expliziten Darstellungen mathematischer Konzepte wie Addition, Subtraktion, Multiplikation und Division. Dies kann es für LLMs schwierig machen, zu lernen, wie diese Operationen korrekt ausgeführt werden.

Wir haben uns also gefragt, ob es möglich ist, ein LLM für die Ausführung mathematischer Operationen zu trainieren? Wir haben ein Experiment durchgeführt, und die Ergebnisse waren sehr vielversprechend!

Feintunen von Llama-2 7B zum Erlernen der Multiplikation

Kuratieren eines Datensatzes

Zu Beginn haben wir einen Datensatz mit 40.000 Zeilen an Prompts und Anweisungen kuratiert. Wir haben versucht, die genauen Schritte der schriftlichen Multiplikationsmethode nachzuahmen. Dabei werden Multiplikand und Multiplikator in ihre einzelnen Ziffern zerlegt, dann jede Ziffer des Multiplikanden mit jeder Ziffer des Multiplikators multipliziert und die Ergebnisse entsprechend ihren Stellenwerten platziert. Schließlich werden alle einzelnen Produkte addiert, um das Endergebnis zu erhalten.

Hier ist ein Beispiel-Prompt:

You are a helpful assistant providing detailed answers to multiplication questions. Ensure you provide a thorough explanation using the long multiplication method for the math problem given below.

If you don't know the answer to a question, please don't share false information. What is 5244 * 1932?

Und hier ist eine Beispiel-Antwort:

Here are the steps for multiplying 5244 * 1932 using the long multiplication method.
Step 1: Break 5244 into its individual digits: 5 (thousands place), 2 (hundreds place), 4 (tens place), and 4 (ones place).
Step 2: Similarly, break 1932 into its individual digits: 1 (thousands place), 9 (hundreds place), 3 (tens place), and 2 (ones place).
- 4 (from 1 place of first number) * 2 (from 1 place of second number) = 8 -> Shift it 0 places to the left (because we are multiplying with the 1 place of the second number) to get 8
- 4 (from 1 place of first number) * 3 (from 10 place of second number) = 12 -> Shift it 1 places to the left (because we are multiplying with the 10 place of the second number) to get 120
- 4 (from 1 place of first number) * 9 (from 100 place of second number) = 36 -> Shift it 2 places to the left (because we are multiplying with the 100 place of the second number) to get 3600
- 4 (from 1 place of first number) * 1 (from 1000 place of second number) = 4 -> Shift it 3 places to the left (because we are multiplying with the 1000 place of the second number) to get 4000
- 4 (from 10 place of first number) * 2 (from 1 place of second number) = 8 -> Shift it 1 places to the left (because we are multiplying with the 1 place of the second number) to get 80
- 4 (from 10 place of first number) * 3 (from 10 place of second number) = 12 -> Shift it 2 places to the left (because we are multiplying with the 10 place of the second number) to get 1200
- 4 (from 10 place of first number) * 9 (from 100 place of second number) = 36 -> Shift it 3 places to the left (because we are multiplying with the 100 place of the second number) to get 36000
- 4 (from 10 place of first number) * 1 (from 1000 place of second number) = 4 -> Shift it 4 places to the left (because we are multiplying with the 1000 place of the second number) to get 40000
- 2 (from 100 place of first number) * 2 (from 1 place of second number) = 4 -> Shift it 2 places to the left (because we are multiplying with the 1 place of the second number) to get 400
- 2 (from 100 place of first number) * 3 (from 10 place of second number) = 6 -> Shift it 3 places to the left (because we are multiplying with the 10 place of the second number) to get 6000
- 2 (from 100 place of first number) * 9 (from 100 place of second number) = 18 -> Shift it 4 places to the left (because we are multiplying with the 100 place of the second number) to get 180000
- 2 (from 100 place of first number) * 1 (from 1000 place of second number) = 2 -> Shift it 5 places to the left (because we are multiplying with the 1000 place of the second number) to get 200000
- 5 (from 1000 place of first number) * 2 (from 1 place of second number) = 10 -> Shift it 3 places to the left (because we are multiplying with the 1 place of the second number) to get 10000
- 5 (from 1000 place of first number) * 3 (from 10 place of second number) = 15 -> Shift it 4 places to the left (because we are multiplying with the 10 place of the second number) to get 150000
- 5 (from 1000 place of first number) * 9 (from 100 place of second number) = 45 -> Shift it 5 places to the left (because we are multiplying with the 100 place of the second number) to get 4500000
- 5 (from 1000 place of first number) * 1 (from 1000 place of second number) = 5 -> Shift it 6 places to the left (because we are multiplying with the 1000 place of the second number) to get 5000000

Now, add all these results together:
The sum of 8 + 120 + 3600 + 4000 + 80 + 1200 + 36000 + 40000 + 400 + 6000 + 180000 + 200000 + 10000 + 150000 + 4500000 + 5000000 = 10131408.

Anschließend haben wir ein Python-Skript geschrieben, das Prompt-Antwort-Paare generiert, indem es zufällig zwei Ziffern für die Multiplikation auswählt. So haben wir einen Datensatz mit 40.000 Zeilen kuratiert.

Feintunen des Modells

Sobald der Datensatz bereit ist, müssen wir das Modell feintunen.
Als Basismodell verwenden wir die von Meta feingetunte Chat-Variante (7 Milliarden Parameter) von Llama-2.

Wir haben das Fine-Tuning mittels QLoRA Fine-Tuning unter Verwendung der Bibliotheken BitsAndBytes und PEFT durchgeführt. Hier ist die LoRA-Konfiguration, die wir verwendet haben:

LoraConfig(
   lora_alpha=16,
   lora_dropout=0.1,
   r=64,
   bias="none",
   task_type="CAUSAL_LM",
   target_modules=[
       "q_proj",
       "k_proj",
       "v_proj",
       "o_proj",
   ],
)

Das Training auf einer A100 40GB GPU-Maschine dauerte für einen Datensatz von 40.000 Zeilen etwa 8 Stunden.

Schließlich haben wir das feingetunte Modell erneut auf TrueFoundry deployed, und hier sind die Ergebnisse:

Endlich!! Wir können sehen, dass das feingetunte Modell in der Lage ist, das Ergebnis korrekt zu berechnen.

Fazit

Obwohl Arithmetik keine Aufgabe ist, für die man typischerweise ein LLM nutzt, zeigt dieses Beispiel, wie ein "kleines" LLM (7B Parameter), das ordnungsgemäß für eine spezifische Aufgabe feingetunt wurde, die "großen" LLMs (wie GPT-3.5 Turbo mit 175B Parametern und GPT-4) bei einer spezialisierten Aufgabe übertreffen kann.

Die kleineren, feingetunten Modelle sind günstig im Inference-Betrieb, besser in spezialisierten Aufgaben und können einfach in Ihrer eigenen Cloud deployed werden!

Wir haben einen ausführlichen Blogbeitrag über das Fine-Tuning von Llama 2 geschrieben

‍

Try now.

One gateway for all your models, MCP servers, and agents. No credit card needed.

Melde dich an
Inhaltsverzeichniss

Steuern, implementieren und verfolgen Sie KI in Ihrer eigenen Infrastruktur

Buchen Sie eine 30-minütige Fahrt mit unserem KI-Experte

Eine Demo buchen

Der schnellste Weg, deine KI zu entwickeln, zu steuern und zu skalieren

Demo buchen
Summarize with
ChatGPT logo by OpenAI
Perplexity AI logo
Blurry red snowflake on white background, symmetrical frosty design with soft edges and abstract shape.

Entdecke mehr

August 26, 2026
|
Lesedauer: 5 Minuten

Gemini 3 Pro: Benchmarks und Nutzung über das AI Gateway

July 20, 2023
|
Lesedauer: 5 Minuten

LLMops CoE: Die nächste Grenze in der MLOps-Landschaft

April 16, 2024
|
Lesedauer: 5 Minuten

Cognita: Entwicklung modularer Open-Source-RAG-Anwendungen für die Produktion

May 25, 2023
|
Lesedauer: 5 Minuten

Open-Source-LLMs: Nutzen oder untergehen

November 14, 2026
|
Lesedauer: 5 Minuten

Claude Managed Agents vs LangChain Deep Agents: Which Agent Harness Should You Choose?

Keine Artikel gefunden.
November 13, 2026
|
Lesedauer: 5 Minuten

Claude Managed Agents vs TrueForge: Which Agent Harness Should Enterprise Teams Run in 2026

Keine Artikel gefunden.
 What is an LLM Gateway
November 13, 2026
|
Lesedauer: 5 Minuten

Was ist ein LLM Gateway? Ein kompletter Leitfaden

Technik und Produkt
November 13, 2026
|
Lesedauer: 5 Minuten

Helm Charts auf ArtifactHub über Hosting auf GitHub Pages

Technik und Produkt
Keine Artikel gefunden.

Aktuelle Blogs

Black left pointing arrow symbol on white background, directional indicator.
Black left pointing arrow symbol on white background, directional indicator.
Machen Sie eine kurze Produkttour
Produkttour starten
Produkttour