API de modèle de chat LangChain

Ce document fournit la référence API complète pour init_chat_model() et BaseChatModel.


Paramètres complets de init_chat_model()

ParametersTypeValeur par défautDescription
modelstr ou NoneAucuneNom du modèle, au format provider:model_name. Passez None pour créer un modèle configurable.
model_providerstr ou NoneAucuneSpécifiez le fournisseur séparément. À utiliser lorsque le modèle ne peut pas être déduit automatiquement.
configurable_fields"any" ou list ou NoneAucuneChamps qui peuvent être modifiés à l'exécution. None=modèle fixe, "any"=tout configurable.
config_prefixstr ou NoneAucunePréfixe de clé de configuration dans les scénarios multi-modèles.
temperaturefloatVarie selon le modèleContrôle le caractère aléatoire, 0~2. 0=déterministe, 2=créativité maximale.
max_tokensintMaximum du modèleNombre maximal de tokens de sortie
timeoutint/float ou NoneAucuneDélai d'expiration de la requête en secondes
max_retriesintVarie selon le modèleNombre de tentatives en cas d'échec
base_urlstr ou NoneURL officiellePoint de terminaison d'API personnalisé
rate_limiterBaseRateLimiterAucuneLimiteur de débit
top_pfloat ou NoneVarie selon le modèleParamètre d'échantillonnage nucleus, 0~1
stoplist[str]AucuneSéquence d'arrêt

Méthodes de BaseChatModel

MéthodeDescriptionValeur de retour
invoke(input, config=None, **kwargs)Appeler le modèle de manière synchroneAIMessage
ainvoke(input, config=None, **kwargs)Appeler le modèle de manière asynchroneAIMessage
stream(input, config=None, **kwargs)Appel en streaming de manière synchroneIterator[AIMessageChunk]
astream(input, config=None, **kwargs)Appel en streaming de manière asynchroneAsyncIterator[AIMessageChunk]
batch(inputs, config=None, **kwargs)Appel par lotslist[AIMessage]
bind_tools(tools, **kwargs)Lier la liste d'outilsRunnable[input, AIMessage]
with_structured_output(schema, **kwargs)Lier le schéma de sortie structuréRunnable[input, BaseModel/dict]
bind(**kwargs)Lier les paramètres d'exécutionExécutable

Référence rapide des fournisseurs de modèles pris en charge

Nom du fournisseurPaquet d'installationExemple de valeur de modèle
openailangchain-deepseekdeepseek:deepseek-v4-flash
anthropiclangchain-anthropicanthropic:claude-sonnet-4-5-20250929
deepseeklangchain-deepseekdeepseek:deepseek-chat
google_genailangchain-google-genaigoogle_genai:gemini-2.5-flash
ollamalangchain-ollamaollama:llama3.2
groqlangchain-groqgroq:llama-3.3-70b
xailangchain-xaixai:grok-3
mistralailangchain-mistralaimistralai:mistral-large
openrouterlangchain-openrouteropenrouter:openai/gpt-4o
perplexitylangchain-perplexityperplexity:sonar-pro

Exemples d'utilisation courants

Exemples

from langchain.chat_models import init_chat_model

# Modèle fixe
model = init_chat_model("deepseek:deepseek-v4-flash", temperature=0)
response = model.invoke("Hello")

# Modèle configurable
model = init_chat_model(configurable_fields=("model", "temperature"))
response = model.invoke("Hello", config={
    "configurable": {"model": "deepseek:deepseek-v4-flash", "temperature": 0.3}
})

# Lier les outils
model_with_tools = model.bind_tools([my_tool])
response = model_with_tools.invoke("Interroger la météo")

# Sortie structurée
model_structured = model.with_structured_output(MySchema)
result = model_structured.invoke("Extraire les informations")
Autres extensions