LangChain Chat-Modell-API
Dieses Dokument bietet die vollständige API-Referenz für init_chat_model() und BaseChatModel.
init_chat_model() Vollständige Parameter
| Parameters | Type | Standardwert | Beschreibung |
|---|---|---|---|
| model | str or None | Keine | Modellname im Format provider:model_name. Übergeben Sie None, um ein konfigurierbares Modell zu erstellen. |
| model_provider | str or None | Keine | Geben Sie den Provider separat an. Verwenden Sie dies, wenn das Modell nicht automatisch abgeleitet werden kann. |
| configurable_fields | "any" oder list oder None | Keine | Felder, die zur Laufzeit geändert werden können. None=festes Modell, "any"=alle konfigurierbar. |
| config_prefix | str or None | Keine | Präfix für Konfigurationsschlüssel in Multi-Modell-Szenarien. |
| temperature | float | Variiert je nach Modell | Steuert die Zufälligkeit, 0~2. 0=deterministisch, 2=maximale Kreativität. |
| max_tokens | int | Modellmaximum | Maximale Anzahl an Ausgabe-Tokens |
| timeout | int/float oder None | Keine | Anfrage-Timeout in Sekunden |
| max_retries | int | Variiert je nach Modell | Anzahl der Wiederholungsversuche bei Fehlern |
| base_url | str or None | Offizielle URL | Benutzerdefinierter API-Endpunkt |
| rate_limiter | BaseRateLimiter | Keine | Ratenbegrenzer |
| top_p | float oder None | Variiert je nach Modell | Nucleus-Sampling-Parameter, 0~1 |
| stop | list[str] | Keine | Stoppsequenz |
BaseChatModel-Methoden
| Methode | Beschreibung | Rückgabewert |
|---|---|---|
| invoke(input, config=None, **kwargs) | Modell synchron aufrufen | AIMessage |
| ainvoke(input, config=None, **kwargs) | Modell asynchron aufrufen | AIMessage |
| stream(input, config=None, **kwargs) | Synchroner Streaming-Aufruf | Iterator[AIMessageChunk] |
| astream(input, config=None, **kwargs) | Asynchroner Streaming-Aufruf | AsyncIterator[AIMessageChunk] |
| batch(inputs, config=None, **kwargs) | Batch-Aufruf | list[AIMessage] |
| bind_tools(tools, **kwargs) | Tool-Liste binden | Runnable[input, AIMessage] |
| with_structured_output(schema, **kwargs) | Strukturiertes Ausgabeschema binden | Runnable[input, BaseModel/dict] |
| bind(**kwargs) | Laufzeitparameter binden | Ausführbar |
Kurzreferenz für unterstützte Modellanbieter
| Anbietername | Installationspaket | Beispiel-Modellwert |
|---|---|---|
| openai | langchain-deepseek | deepseek:deepseek-v4-flash |
| anthropic | langchain-anthropic | anthropic:claude-sonnet-4-5-20250929 |
| deepseek | langchain-deepseek | deepseek:deepseek-chat |
| google_genai | langchain-google-genai | google_genai:gemini-2.5-flash |
| ollama | langchain-ollama | ollama:llama3.2 |
| groq | langchain-groq | groq:llama-3.3-70b |
| xai | langchain-xai | xai:grok-3 |
| mistralai | langchain-mistralai | mistralai:mistral-large |
| openrouter | langchain-openrouter | openrouter:openai/gpt-4o |
| perplexity | langchain-perplexity | perplexity:sonar-pro |
Häufige Anwendungsbeispiele
Beispiele
from langchain.chat_models import init_chat_model
# Festes Modell
model = init_chat_model("deepseek:deepseek-v4-flash", temperature=0)
response = model.invoke("Hello")
# Konfigurierbares Modell
model = init_chat_model(configurable_fields=("model", "temperature"))
response = model.invoke("Hello", config={
"configurable": {"model": "deepseek:deepseek-v4-flash", "temperature": 0.3}
})
# Tools binden
model_with_tools = model.bind_tools([my_tool])
response = model_with_tools.invoke("Wetter abfragen")
# Strukturierte Ausgabe
model_structured = model.with_structured_output(MySchema)
result = model_structured.invoke("Informationen extrahieren")
# Festes Modell
model = init_chat_model("deepseek:deepseek-v4-flash", temperature=0)
response = model.invoke("Hello")
# Konfigurierbares Modell
model = init_chat_model(configurable_fields=("model", "temperature"))
response = model.invoke("Hello", config={
"configurable": {"model": "deepseek:deepseek-v4-flash", "temperature": 0.3}
})
# Tools binden
model_with_tools = model.bind_tools([my_tool])
response = model_with_tools.invoke("Wetter abfragen")
# Strukturierte Ausgabe
model_structured = model.with_structured_output(MySchema)
result = model_structured.invoke("Informationen extrahieren")