Konzepte zu großen Modellen
Wenn Sie zum ersten Mal mit großen Modellen (LLMs) entwickeln, strömt eine Flut neuer Begriffe auf Sie ein: Token, RAG, Embedding, Agent... Sie mögen unabhängig erscheinen, sind aber tatsächlich zu einer vollständigen technischen Pipeline verbunden.
Dieser Artikel verknüpft diese Konzepte in der Reihenfolge „Was ist ein Modell → Wie trainiert man → Wie verwendet man → Wie optimiert man“ und hilft Anfänger-Entwicklern, ein klares Wissensgerüst aufzubauen.
Dieser Artikel ist nicht nur ein Glossar; er demonstriert anhand von echtem, ausführbarem Python-Code, wie diese Konzepte angewendet werden.
Alle Beispiele basieren auf dem OpenAI-kompatiblen Protokoll. Sie können zu Anbietern wie Alibaba Cloud Bailian, DeepSeek usw. wechseln, indem Sie einfach den API-Endpunkt und den Schlüssel ändern.
Python OpenAI-Referenz:https://www.example.com/python3/python-openai.html
Gesamte technische Pipeline
Bevor wir die einzelnen Konzepte aufschlüsseln, werfen wir einen Blick auf die komplette Pipeline der Technologie großer Modelle, um ein Gesamtverständnis aufzubauen.
Von oben nach unten löst jede Schicht ein Kernproblem: Training erschafft das Modell, Optimierung macht es leichter, Inferenz lässt es Ergebnisse liefern, Retrieval liefert Wissen und Tools ermöglichen die Ausführung.
Die folgenden Abschnitte erweitern diese Pipeline Schicht für Schicht von oben nach unten.
Grundlegende Konzepte: Was ist ein Modell
Dieser Abschnitt beantwortet die grundlegendste Frage: Was genau ist ein großes Modell und wie funktioniert es?
LLM (Large Language Model)
LLM steht für Large Language Model (Großes Sprachmodell), ein Deep-Learning-Modell, das mit riesigen Mengen an Text trainiert wurde.
Seine Essenz ist ein probabilistisches Modell, das „das nächste Wort vorhersagt“: Ausgehend vom vorhergehenden Text sagt es den wahrscheinlichsten Inhalt voraus, der folgt.
Produkte wie ChatGPT, Claude, Tongyi Qianwen usw. basieren im Kern alle auf LLMs.
Transformer und Aufmerksamkeitsmechanismus
Fast alle modernen LLMs basieren auf der Transformer-Architektur.
Ihre Kerninnovation istder Aufmerksamkeitsmechanismus (Attention / Self-Attention): Bei der Verarbeitung eines Wortes kann das Modell andere relevante Wörter in der Eingabesequenz dynamisch „beachten“ (attend to) und so Kontextbeziehungen besser verstehen.
Wenn das Modell beispielsweise einen Satz liest, scannt es diesen nicht starren Schritt für Schritt Wort für Wort; stattdessen ermittelt es automatisch, „welches vorherige Wort am meisten mit diesem Wort zusammenhängt“.
Token
Modelle verarbeiten Text nicht nach „Zeichen“ oder „Wörtern“; stattdessen verarbeiten sie ihn in Form von Tokens.
Ein Token kann ein chinesisches Schriftzeichen, ein englisches Wort oder ein Teil eines Wortes sein.
Das Verständnis von Tokens hat zwei direkte praktische Auswirkungen:
Das Kontextlängenlimit des Modells wird in Tokens berechnet; auch die Abrechnung von API-Aufrufen erfolgt in Tokens.
Mit OpenAIs Open-Source-Tokenisierungsbibliothek tiktoken können Sie direkt sehen, in wie viele Tokens ein Text aufgeteilt wird:
Beispiel
import tiktoken
# Verschiedene Modelle verwenden unterschiedliche Tokenizer; encoding_for_model wählt automatisch den entsprechenden aus
enc = tiktoken.encoding_for_model("gpt-4o-mini")
tokens = enc.encode("Hello world") # Text in eine Liste von Tokens aufteilen
print("Token count:", len(tokens))
print("Split result:", [enc.decode([t]) for t in tokens])
Ausgabe:
Token 数量:2 切分结果:['Hello', ' world']
Beim Wechsel zu Chinesisch oder längeren Wörtern unterscheidet sich die Tokenisierungsmethode völlig, weshalb das „Schätzen von Tokens nach Zeichenanzahl“ nicht genau ist.
Kontextfenster
Bezieht sich auf die maximale Anzahl von Tokens, die das Modell gleichzeitig „sehen“ und verarbeiten kann.
Ein Kontextfenster von 100K bedeutet beispielsweise, dass ein einzelnes Gespräch (historische Nachrichten, Ihre Frage und die Antwort des Modells zusammen) 100.000 Tokens nicht überschreiten darf.
Je größer das Fenster, desto mehr Inhalt kann sich das Modell „merken“ und desto längere Dokumente kann es auf einmal verarbeiten.
Anzahl der Parameter (Parameters)
Die Anzahl der Parameter bezieht sich auf die Anzahl der erlernbaren Gewichte im Modell, die normalerweise in B (Milliarden) gemessen wird, wie z. B. 7B, 70B.
Sie spiegelt bis zu einem gewissen Grad die Skalierung und die Obergrenze der Leistungsfähigkeit des Modells wider, ist jedoch nicht die einzige Metrik – die Qualität der Trainingsdaten und das Architekturendesign sind gleichermaßen wichtig.
| Gängige Parametergrößen | Skalierung | Typische Positionierung |
|---|---|---|
| 1B ~ 7B | Klein bis mittel | Kann lokal auf GPUs für Verbraucher ausgeführt werden, geeignet für leichte Aufgaben |
| 8B ~ 34B | Mittel | Hohes Preis-Leistungs-Verhältnis, deckt die meisten allgemeinen Szenarien ab |
| 70B ~ Hunderte von B | groß | Stärkste Leistungsfähigkeit, wird normalerweise über Cloud-APIs aufgerufen |
Wie Modelle trainiert werden
Ein LLM, das sich natürlich unterhalten kann, durchläuft normalerweise mehrere Trainingsphasen, in denen Fähigkeiten Schicht für Schicht aufgebaut werden.
Pre-Training (Vortraining)
Das Modell erlernt statistische Sprachmuster aus massiven Mengen unbeschrifteten Texts (Webseiten, Bücher, Code usw.) wie Grammatik, gesunden Menschenverstand und logische Beziehungen.
Diese Phase verbraucht die meiste Rechenleistung und bildet das Fundament der Modellfähigkeiten.
Zu diesem Zeitpunkt ist das Modell jedoch noch nicht gut darin, „Dinge auf Anweisung zu tun“; es gleicht eher jemandem, der viel gelesen hat, aber nicht weiß, wie man kommuniziert.
SFT (Supervised Fine-Tuning)
SFT steht für Supervised Fine-Tuning (Überwachtes Feintuning).
Mithilfe von von Menschen annotierten „Frage-Antwort“-Paardaten wird dem Modell beigebracht, Fragen gemäß menschlichen Anweisungen zu beantworten, anstatt Text eigenständig fortzusetzen.
RLHF (Reinforcement Learning from Human Feedback)
RLHF steht für Reinforcement Learning from Human Feedback (Bestärkendes Lernen aus menschlichem Feedback).
Menschen bewerten oder ordnen mehrere Kandidatenantworten des Modells ein, und dieses Feedback wird dann verwendet, um das Modell zu trainieren, sodass seine Ausgaben besser mit menschlichen Präferenzen übereinstimmen (hilfreicher, ehrlicher und sicherer).
Eine ähnliche Technik ist RLAIF: Verwendung von KI statt Menschen zur Bewertung, wodurch die Annotationskosten gesenkt werden.
Beide verfolgen dasselbe Ziel; der einzige Unterschied ist, ob der "Bewerter" ein echter Mensch oder eine andere KI ist.
Alignment
Alignment ist ein breiteres Konzept: das Verhalten und die Werte des Modells an menschliche Erwartungen und Absichten anzupassen.
Es ist ein Kernthema im Bereich der KI-Sicherheit und zieht sich durch verschiedene Trainingsphasen wie SFT und RLHF – im Wesentlichen sind SFT und RLHF beides "Alignment-Methoden".
Fine-Tuning
Auf Basis eines bereits trainierten allgemeinen Modells wird mit Daten aus einem bestimmten Bereich (z. B. Recht, Gesundheitswesen, Kundenservice) weitertrainiert.
Im Vergleich zum Vortraining von Grund auf kostet Fine-Tuning viel weniger, und es ist gängige Praxis, allgemeine Modelle an spezialisierte Szenarien anzupassen.
MoE (Mixture of Experts)
MoE steht für Mixture of Experts, ein Design für eine Modellarchitektur.
Das Modell enthält mehrere „Experten“-Teilnetze; bei jeder Verarbeitung einer Eingabe wird nur ein Teil aktiviert, anstatt dass alle Parameter an der Berechnung teilnehmen.
Dadurch ist es möglich, die Gesamtgröße des Modells zu erweitern und gleichzeitig die tatsächliche Berechnung zu steuern, was zu „große Parameteranzahl, schnelle Inferenz“ führt.
| Trainingsphasen | Englisch | Hauptfunktion | Herangezogene Daten |
|---|---|---|---|
| Pre-Training (Vortraining) | Pre-Training (Vortraining) | Sprachmuster lernen und grundlegende Fähigkeiten aufbauen | Massive Mengen unbeschrifteten Textes |
| Überwachtes Fine-Tuning | SFT | Lernen, Fragen gemäß Anweisungen zu beantworten | Von Menschen annotierte Frage-Antwort-Paare |
| Bestärkendes Lernen durch menschliches Feedback | RLHF | Ausgaben, die besser an menschliche Präferenzen angepasst sind | Menschliche Bewertung/Einstufung der Antworten |
| Alignment | Alignment | Das Modell hilfreich, ehrlich und sicher machen | Erstreckt sich über alle oben genannten Phasen |
Wie Entwickler große Modelle nutzen
Dies ist der Teil, auf den sich Anfänger-Entwickler am meisten konzentrieren sollten: wie man große Modelle Anwendungen über eine API zugänglich macht.
Dieser Abschnitt bietet zunächst ein einfaches, ausführbares Beispiel für einen Dialogaufruf und erläutert dann die einzelnen Konzepte.
Einfacher API-Chat-Aufruf
Der folgende Code demonstriert eine vollständige Dialoganfrage und verwendet drei Konzepte: System-Prompt, Benutzernachrichten und Temperatur.
Beispiel
from openai import OpenAI
import os
# Erstellen Sie einen Client. Jeder Dienst, der ein OpenAI-kompatibles Protokoll verwendet, kann diesen Code wiederverwenden,
# Um zu einem anderen Anbieter zu wechseln, ändern Sie einfach api_key und base_url
client = OpenAI(
api_key=os.getenv("OPENAI_API_KEY"), # API-Schlüssel aus Umgebungsvariable lesen (erforderlich)
)
# Eine Dialoganfrage stellen
response = client.chat.completions.create(
model="gpt-4o-mini", # Modellname (erforderlich), je nach Anbieter ändern
messages=[
# System-Prompt: Voreinstellung der Rolle und Verhaltensrichtlinien des Modells
{"role": "system", "content": "Du bist ein professioneller Python-Programmierassistent und beantwortest nur technische Fragen."},
# Benutzernachricht: die eigentliche Frage
{"role": "user", "content": "Was ist Python?"},
],
temperature=0.7, # Temperatur für die Generierung, Bereich 0~2, höher ist divergenter (siehe unten)
)
# Die Antwort des Modells ausgeben
print("Antwort:", response.choices[0].message.content)
# Das Feld usage zeichnet die Anzahl der von diesem Aufruf verbrauchten Tokens auf (Abrechnungsgrundlage)
print("Anzahl Eingabe-Token:", response.usage.prompt_tokens)
print("Anzahl Ausgabe-Token:", response.usage.completion_tokens)
Ausgabe:
回答:example(Example)是一个提供编程教程的中文学习网站…… 输入 Token 数:33 输出 Token 数:18
Das Feld usage in der zurückgegebenen Struktur ist die konkrete Umsetzung des oben erwähnten Token-Konzepts: Es sagt Ihnen, wie viele Tokens dieser Aufruf verbraucht hat, und ist zugleich die Grundlage für die Abrechnung.
Prompt
Der Prompt ist die Anweisung oder Frage, die Sie dem Modell geben; er bestimmt direkt die Qualität der Modellausgabe.
Die Technik, zu untersuchen, wie man klarere und effektivere Prompts schreibt, heißtPrompt Engineering。
Häufige Techniken sind: konkrete Beispiele geben, schrittweises Schlussfolgern verlangen, Ausgabeformat vorgeben usw.
System-Prompt
Anweisungen, die dem Modell vor der eigentlichen Eingabe des Benutzers voreingestellt werden, um die Rolle, Verhaltensrichtlinien und das Hintergrundwissen des Modells zu definieren.
Der Satz „Du bist ein professioneller Python-Programmierassistent und beantwortest nur technische Fragen“ im vorherigen Beispiel ist ein typischer System-Prompt.
Unterschied zwischen System-Prompt und Benutzernachrichten: Der System-Prompt legt fest, „wie sich das Modell verhalten soll“, während Benutzernachrichten angeben, „was konkret zu tun ist“.
Allgemeine Regeln in den System-Prompt aufzunehmen, sorgt für einen konsistenten Antwortstil über Multi-Turn-Gespräche hinweg.
Temperatur
Temperatur ist ein Parameter, der die Zufälligkeit der Modellausgabe steuert und typischerweise von 0 bis 2 reicht.
Je höher die Temperatur, desto "kreativer" und zufälliger sind die Antworten und desto fehleranfälliger; je niedriger die Temperatur, desto konservativer und stabiler sind die Antworten.
| Werbereich | Ausgabeeigenschaften | Anwendbare Szenarien |
|---|---|---|
| Nahe 0 | Nahezu deterministisch, stabil und reproduzierbar | Code schreiben, Datenextraktion, faktische Q&A |
| 0.3 ~ 0.7 | Etwas Variation, aber kontrollierbar | Allgemeiner Dialog, Übersetzung, Zusammenfassung |
| 0.8 ~ 1.2 | Kreativ, vielfältig | Brainstorming, Copywriting, Geschichtenerstellung |
| Größer als 1.2 | Sehr zufällig, neigt zum Abdriften | Mit Vorsicht verwenden, nur für spezielle kreative Szenarien |
In-Context-Learning
Es ist überhaupt nicht nötig, das Modell feinabzustimmen; geben Sie einfach ein paar Beispiele im Prompt an, und das Modell kann sie nachahmen, um neue ähnliche Aufgaben zu erledigen.
Dies ist eine der am häufigsten verwendeten Techniken im Prompt Engineering, auch Few-shot Learning genannt.
Chain-of-Thought (CoT)
Führen Sie das Modell dazu, komplexe Probleme in einen schrittweisen Denkprozess zu zerlegen, bevor es die endgültige Antwort gibt, anstatt direkt zu einer Schlussfolgerung zu springen.
Die Praxis hat gezeigt, dass dieser Ansatz die Genauigkeit des Modells bei komplexen Aufgaben wie Mathematik und logischem Denken deutlich verbessert.
Der einfachste Weg ist, "Bitte denken Sie Schritt für Schritt" zum Prompt hinzuzufügen.
Halluzination
Halluzination bezeichnet Inhalte, die das Modell erzeugt, die plausibel und flüssig erscheinen, aber tatsächlich falsch oder erfunden sind.
Dies ist ein häufiger Mangel von LLMs, weil das Modell im Wesentlichen "den wahrscheinlichsten Text fortsetzt", anstatt "Fakten zu überprüfen".
Eine der Kernmethoden zur Verringerung von Halluzinationen ist RAG, das weiter unten beschrieben wird: zuerst echte Informationen abrufen, dann das Modell auf Grundlage dieser Informationen antworten lassen.
Das Modell mit der Außenwelt verbinden
Ein reines LLM kann zur Beantwortung von Fragen nur auf Wissen zurückgreifen, das während des Trainings gelernt wurde; es kennt weder die neuesten Informationen noch kann es proaktiv handeln.
Die Techniken in diesem Abschnitt sind der Schlüssel zur Behebung dieser beiden Schwächen.
Embedding
Embedding wandelt Text, Bilder und andere Inhalte in eine Zahlenfolge (Vektoren) um.
Nach der Umwandlung kann der Computer durch Berechnung des Abstands zwischen Vektoren feststellen, ob zwei Inhalte in ihrer "Semantik" ähnlich sind.
Dies ist die grundlegende Basis für Anwendungen wie Suche, Empfehlung und RAG.
Vektordatenbank
Eine Vektordatenbank wird speziell zum Speichern und Abrufen von Embedding-Vektoren verwendet, wie Pinecone, Milvus und Chroma.
Sie kann unter riesigen Vektormengen schnell Inhalte finden, die der Semantik der Abfrage am ähnlichsten sind, und ist eine wesentliche Komponente für den Aufbau von RAG-Systemen.
RAG (Retrieval-Augmented Generation)
RAG steht für Retrieval-Augmented Generation.
Sein Workflow ist: Zuerst die externe Wissensbasis in Vektoren umwandeln und in einer Vektordatenbank speichern; wenn der Benutzer eine Frage stellt, die relevantesten Inhalte abrufen; dann die abgerufenen Ergebnisse zusammen mit der Frage an das Modell übergeben, um eine Antwort zu generieren.
RAG kann Halluzinationen wirksam reduzieren und es dem Modell ermöglichen, neues Wissen jenseits der Trainingsdaten zu beantworten.
Unten ist ein minimales RAG-Beispiel, das nicht auf einer externen Vektordatenbank basiert und OpenAI Embedding plus numpy verwendet, um das Prinzip leichter verständlich zu machen:
Beispiel
from openai import OpenAI
import numpy as np
import os
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
# Simuliere eine sehr kleine "Wissensbasis": einige Dokumente
documents = [
"example ist eine chinesische Lernwebsite, die Programmier-Tutorials anbietet.",
"RAG reduziert Halluzinationen in großen Modellen, indem es echte Informationen abruft und dann generiert.",
"Python verwendet Einrückung, um Codeblöcke darzustellen, und es wird üblicherweise empfohlen, pro Ebene um 4 Leerzeichen einzurücken.",
]
# Schritt 1: Die Wissensbasis vektorisieren (offline aufbauen, nur einmal nötig)
doc_resp = client.embeddings.create(input=documents, model="text-embedding-3-small")
doc_vectors = [d.embedding for d in doc_resp.data]
# Schritt 2: Die Benutzerfrage vektorisieren
question = "Was ist Python?"
query_vector = client.embeddings.create(
input=question, model="text-embedding-3-small"
).data[0].embedding
# Schritt 3: Kosinusähnlichkeit verwenden, um das relevanteste Dokument zu finden
def cosine(a, b):
a, b = np.array(a), np.array(b)
return float(a @ b / (np.linalg.norm(a) * np.linalg.norm(b)))
scores = [cosine(query_vector, v) for v in doc_vectors]
best_doc = documents[int(np.argmax(scores))] # Das Dokument mit der höchsten Ähnlichkeit
print("Abgerufene Materialien:", best_doc)
# Schritt 4: Die abgerufenen Materialien zusammen mit der Frage an das Modell übergeben, um eine Antwort zu generieren
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "Bitte beantworte die Frage ausschließlich auf Basis der unten bereitgestellten Materialien; erfinde keine Informationen, die nicht in den Materialien enthalten sind."},
{"role": "user", "content": f"Materialien: {best_doc}\n\nFrage: {question}"},
],
)
print("Antwort:", response.choices[0].message.content)
Ausgabe:
检索到的资料:example 是一个提供编程教程的中文学习网站。 回答:example(Example)是一个提供编程教程的中文学习网站。
In echten Projekten ersetzt man einfach "die Berechnung der Ähnlichkeit im Speicher" in Schritt 3 durch "den Aufruf einer Vektordatenbank für den Abruf", und der Ablauf ist genau derselbe.
Function Calling
Function Calling ermöglicht es großen Modellen, externe Tools oder APIs aufzurufen, um Aufgaben zu erledigen, wie z. B. Echtzeitwetter abzufragen, mathematische Berechnungen durchzuführen, Datenbanken abzufragen und E-Mails zu senden.
Es gleicht die Schwäche des Modells aus, "nur Text generieren, aber keine Aktionen ausführen zu können", und ist ein entscheidender Schritt bei der Weiterentwicklung großer Modelle von Chatbots zu praktischen Werkzeugen.
Seine Funktionsweise ist eine Interaktion in zwei Runden: In der ersten Runde entscheidet das Modell, welche Funktion aufgerufen und welche Parameter übergeben werden sollen; nachdem dein Code die Funktion tatsächlich ausgeführt hat, wird das Ergebnis in der zweiten Runde zurückgegeben, sodass das Modell eine Antwort in natürlicher Sprache generieren kann.
Beispiel
import json
import os
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
# Vom Modell aufrufbare Tools (Funktionen) definieren
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Echtzeitwetter für die angegebene Stadt abfragen",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "Stadtname, z. B. Hangzhou"}
},
"required": ["city"],
},
},
}
]
# Lokale Funktion, die die Abfrage tatsächlich ausführt (in Produktion durch echte Wetter-API ersetzen)
def get_weather(city):
return f"{city} ist heute sonnig, Temperatur 28°C"
# Runde 1: Die Frage an das Modell übergeben, das entscheidet, welches Tool aufgerufen und welche Parameter übergeben werden
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Wie ist das Wetter heute in Hangzhou?"}],
tools=tools,
)
tool_call = response.choices[0].message.tool_calls[0]
args = json.loads(tool_call.function.arguments) # Parameter auslesen, z. B. {"city": "Hangzhou"}
result = get_weather(args["city"]) # Das Tool tatsächlich ausführen
print("Ergebnis der Tool-Ausführung:", result)
# Runde 2: Das Tool-Ergebnis zurück an das Modell senden, damit es auf Basis des Ergebnisses eine Antwort in natürlicher Sprache generiert
follow_up = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "user", "content": "Wie ist das Wetter heute in Hangzhou?"},
response.choices[0].message, # Die Entscheidung des Modells zum "Tool aufrufen" aus dem vorherigen Schritt
{"role": "tool", "tool_call_id": tool_call.id, "content": result}, # Das vom Tool zurückgegebene Ergebnis
],
tools=tools,
)
print("Endgültige Antwort:", follow_up.choices[0].message.content)
Ausgabeergebnis:
工具执行结果:杭州 今天晴,气温 28°C 最终回答:杭州今天是晴天,气温大约 28°C,适合外出活动。
MCP (Model Context Protocol)
MCP steht für Model Context Protocol, ein offenes Protokoll, das es großen Modellen ermöglicht, sich auf standardisierte Weise mit externen Tools und Datenquellen zu verbinden.
Man kann es mit einem "USB-Anschluss für KI" vergleichen: Solange verschiedene Tools und Datenquellen diesem Protokoll folgen, können sie von verschiedenen großen Modellen, die MCP unterstützen, einheitlich aufgerufen werden.
Es löst das Problem aus der Function-Calling-Ära, "jedes Tool immer wieder integrieren zu müssen", und reduziert den Entwicklungsaufwand.
Agent
Ein Agent ist ein System, das auf großen Modellen aufbaut und Aufgaben autonom planen, Tools aufrufen und mehrstufige Operationen ausführen kann.
Im Vergleich zu einem Frage-und-Antwort-Gespräch ist ein Agent eher wie ein "digitaler Mitarbeiter", der komplexe Aufgaben selbstständig erledigen kann, z. B. den gesamten Prozess von "Recherche → Code → Test → Fehlerbehebung" automatisch durchläuft.
Die Kernschleife, auf die es sich stützt, ist ReAct (Reason + Act): über den nächsten Schritt nachdenken, Tools aufrufen, Ergebnisse beobachten und dann erneut nachdenken, bis die Aufgabe abgeschlossen ist.
Multimodal
Multimodal bezieht sich auf die Fähigkeit eines Modells, gleichzeitig mehrere Datentypen zu verstehen und/oder zu erzeugen, nicht nur Text, sondern auch Bilder, Audio und Video.
Viele gängige große Modelle verfügen inzwischen bereits über multimodale Fähigkeiten wie das Lesen von Bildern und das Analysieren von Diagrammen.
| Technologie | Problem, das es löst | Verständnis in einem Satz |
|---|---|---|
| Embedding | Computern semantische Ähnlichkeit verstehen lassen | Text in berechenbare Vektoren umwandeln |
| Vektordatenbank | Effiziente Speicherung und Abruf von Vektoren | Spezialisiertes Repository für semantische Suche |
| RAG | Das Modell kennt aktuelles Wissen nicht oder erfindet es möglicherweise | Zuerst Informationen nachschlagen, dann antworten |
| Function Calling | Modelle können nur Text erzeugen und keine Aktionen ausführen | Modelle externe Tools aufrufen lassen |
| MCP | Jedes Mal, wenn ein Tool integriert wird, muss es erneut entwickelt werden | Einheitlicher USB-Anschluss für KI-Tools |
| Agent | Einzelrunden-Konversationen können komplexe Aufgaben nicht erledigen | Ein digitaler Mitarbeiter, der autonom mehrere Schritte planen kann |
Modelle schneller und effizienter machen
Je stärker das Modell, desto größer ist es tendenziell und desto höher sind die Betriebskosten.
Die folgenden beiden Konzepte zielen darauf ab, Modelle im tatsächlichen Einsatz leichter und effizienter zu machen.
Quantisierung
Die Quantisierung komprimiert Modellparameter von hoher Präzision (z. B. 32-Bit-Gleitkomma) auf niedrige Präzision (z. B. 8-Bit- oder 4-Bit-Ganzzahlen).
Es kann den vom Modell belegten GPU-Speicher erheblich reduzieren und die Inferenzgeschwindigkeit verbessern; der Kompromiss ist ein gewisser Präzisionsverlust, aber das ist in vielen Szenarien akzeptabel.
Modell-Destillation
Destillation nutzt die Ausgabe eines leistungsstarken, aber großen "Lehrermodells", um ein kleineres "Schülermodell" zu trainieren.
Das Ziel ist, das kleine Modell möglichst viele Fähigkeiten des großen Modells lernen zu lassen. Das destillierte Modell ist kleiner, schneller bei der Inferenz und günstiger bereitzustellen.
| Vergleichspunkt | Quantisierung | Destillation |
|---|---|---|
| Was es tut | Parameterpräzision komprimieren (32-Bit → 8/4-Bit) | Ein großes Modell nutzen, um ein kleines Modell zu lehren |
| Was sich ändert | Die numerische Darstellung desselben Modells | Ein neues kleines Modell erhalten |
| Hauptvorteil | Spart GPU-Speicher, erhöht die Geschwindigkeit | Kleines Modell ist stärker und schneller |
| Ob Training erforderlich ist | Normalerweise kein erneutes Training erforderlich | Erfordert das Training des Schülermodells |
| Typisches Szenario | Ein großes Modell in begrenzten GPU-Speicher einpassen | Ein kleines Modell anstelle eines großen Modells bereitstellen |
Lernpfad für Anfänger
Für Anfänger unter den Entwicklern ist es nicht notwendig, alle Konzepte auf einmal zu verstehen.
Es wird empfohlen, der folgenden Reihenfolge zu folgen und Schritt für Schritt vorzugehen; so lässt sich leichter ein vollständiges System aufbauen, als Konzepte isoliert auswendig zu lernen.
| Phase | Zu beherrschende Konzepte | Was Sie tun können |
|---|---|---|
| Schritt 1 | LLM、Token、Prompt | Die API aufrufen, um Gespräche durchzuführen |
| Schritt 2 | Embedding, Vektordatenbanken, RAG | Externes Wissen mit dem Modell verbinden |
| Schritt 3 | Function Calling、Agent | Das Modell Tools aufrufen und Aufgaben autonom erledigen lassen |
| Schritt 4 | Fine-Tuning, Quantisierung, Destillation | Produktivbereitstellung und Optimierung |
Definitionen müssen nicht auswendig gelernt werden — führen Sie einfach die Codebeispiele in diesem Artikel selbst aus, und Sie werden ein viel tieferes Verständnis gewinnen.
Schnellreferenz für Kernbegriffe
Alle Schlüsselbegriffe des Artikels sind in einer Tabelle zusammengefasst und nach "Phase" gruppiert, um jederzeit leicht nachschlagen und wiederholen zu können.
| Begriff | Englisch / Vollständiger Name | Phase | Erklärung in einem Satz |
|---|---|---|---|
| LLM | Großes Sprachmodell | Grundlegende Konzepte | Ein Deep-Learning-Modell, das mit riesigen Textmengen trainiert wurde; sein Wesen ist die "Vorhersage des nächsten Wortes" |
| Transformer | Transformer | Grundlegende Konzepte | Die zugrunde liegende Netzwerkarchitektur, die fast alle modernen LLMs gemeinsam haben |
| Attention-Mechanismus | Attention / Self-Attention | Grundlegende Konzepte | Ermöglicht dem Modell, sich dynamisch auf relevante Wörter in der Eingabe zu konzentrieren, um kontextuelle Beziehungen zu verstehen |
| Token | Token | Grundlegende Konzepte | Die kleinste Texteinheit, die vom Modell verarbeitet wird; Kontextlänge und API-Abrechnung werden beide darauf basierend berechnet |
| Kontextfenster | Kontextfenster | Grundlegende Konzepte | Die maximale Anzahl von Tokens, die das Modell auf einmal "sehen" und verarbeiten kann |
| Parameteranzahl | Parameters | Grundlegende Konzepte | Die Anzahl der lernbaren Gewichte im Modell, oft in B (Milliarden) gemessen |
| Pre-Training (Vortraining) | Pre-Training (Vortraining) | Training | Erlernen von Sprachmustern aus riesigen Mengen unbeschrifteten Texts, wodurch die Grundlage für Fähigkeiten gelegt wird |
| SFT | Überwachtes Fine-Tuning | Training | Dem Modell beibringen, anhand von QA-Paardaten Fragen gemäß Anweisungen zu beantworten |
| RLHF | Bestärkendes Lernen aus menschlichem Feedback | Training | Menschliche Bewertungen nutzen, um Modellausgaben zu kalibrieren, damit sie besser mit menschlichen Präferenzen übereinstimmen |
| RLAIF | Bestärkendes Lernen aus KI-Feedback | Training | KI anstelle menschlicher Bewertung verwenden, um Annotationskosten zu senken |
| Alignment | Alignment | Training | Das Verhalten des Modells an menschliche Absichten anpassen, sodass es hilfreich, ehrlich und sicher ist |
| Fine-Tuning | Fine-Tuning | Training | Weiteres Trainieren eines Allzweckmodells mit Domänendaten, um es an spezialisierte Szenarien anzupassen |
| MoE | Mischung von Experten | Training | Mehrere Experten-Subnetzwerke werden bei Bedarf aktiviert; große Parameteranzahl, aber schnelle Inferenz |
| Prompt | Prompt | Nutzung | Die in das Modell eingegebene Anweisung oder Frage; bestimmt direkt die Ausgabequalität |
| Prompt-Engineering | Prompt-Engineering | Nutzung | Die Untersuchung von Techniken zum Schreiben klarerer, effektiverer Prompts |
| System-Prompt | System-Prompt | Nutzung | Eine voreingestellte Anweisung, die die Rolle und Verhaltensrichtlinien des Modells definiert |
| Temperatur | Temperatur | Nutzung | Ein Parameter zur Steuerung der Zufälligkeit der Ausgabe, von 0 bis 2; höhere Werte erzeugen divergierendere Ausgaben |
| In-Context-Learning | In-Context-Learning | Nutzung | Geben Sie einige Beispiele im Prompt an, und das Modell folgt dem Muster; auch bekannt als Few-shot |
| Gedankenkette | Chain-of-Thought(CoT) | Nutzung | Das Modell anleiten, vor der Antwort Schritt für Schritt zu argumentieren, was die Genauigkeit bei komplexen Aufgaben verbessert |
| Halluzination | Halluzination | Nutzung | Das Modell erzeugt flüssigen, aber falschen oder erfundenen Inhalt |
| Embedding | Embedding | Externe Welt | Inhalte in Vektoren umwandeln, um semantische Ähnlichkeit zu messen |
| Vektordatenbank | Vektordatenbank | Externe Welt | Eine Datenbank, die speziell zum Speichern und Abrufen von Vektoren dient, wie Milvus, Chroma |
| RAG | Retrieval-Augmented Generation | Externe Welt | Zuerst echte Informationen abrufen und dann generieren, um Halluzinationen zu mildern und neues Wissen zu ergänzen |
| Function Calling | Function Calling | Externe Welt | Das Modell befähigen, externe Tools oder APIs aufzurufen, um tatsächliche Aktionen auszuführen |
| MCP | Model Context Protocol | Externe Welt | Ein offenes Protokoll zur Standardisierung von Tool-Verbindungen, die "USB-Schnittstelle" der KI |
| Agent | Agent | Externe Welt | Ein System, das autonom planen, Tools aufrufen und komplexe Aufgaben in mehreren Schritten ausführen kann |
| ReAct | Reason + Act | Externe Welt | Die Kernschleife des Agent: Denken—Handeln—Beobachten—Neu denken |
| Multimodal | Multimodal | Externe Welt | Gleichzeitig mehrere Datentypen wie Text, Bilder und Audio verstehen und/oder erzeugen |
| Quantisierung | Quantisierung | Optimierung | Parameterpräzision komprimieren (32-Bit → 8/4-Bit), VRAM sparen und Geschwindigkeit erhöhen |
| Modell-Destillation | Modell-Destillation | Optimierung | Ein großes Modell verwenden, um ein kleines Modell zu lehren, was zu einem kleineren und schnelleren Deployment-Modell führt |