API d'agent LangChain


Paramètres complets de create_agent()

ParamètreTypeValeur par défautDescription
modelstr ou BaseChatModelNone (obligatoire)Modèle de langage
toolsSequence ou NoneAucuneListe d’outils. Prend en charge les fonctions @tool, les modèles Pydantic, dict
system_promptstr ou SystemMessage ou NoneAucunePrompt système
middlewareSequence[AgentMiddleware]()Liste de middlewares
response_formatResponseFormat ou type ou dict ou NoneAucuneConfiguration de sortie structurée
state_schematype[AgentState] ou NoneAucuneStructure d'état personnalisée
context_schematype ou NoneAucuneStructure du contexte d'exécution
checkpointerCheckpointer ou NoneAucunePersistance des conversations
storeBaseStore ou NoneAucuneStockage inter-sessions
interrupt_beforelist[str] ou NoneAucunePause avant ces nœuds
interrupt_afterlist[str] ou NoneAucunePause après ces nœuds
debugboolFalseIndique s'il faut produire des journaux verbeux
namestr ou NoneAucuneNom de l'agent
cacheBaseCache ou NoneAucuneConfiguration du cache

Méthodes de CompiledStateGraph

MéthodeDescription
invoke(input, config=None)Exécuter de manière synchrone, renvoyer l'état final
ainvoke(input, config=None)Exécuter de manière asynchrone, renvoyer l'état final
stream(input, config=None, stream_mode="updates")Exécution de streaming synchrone
astream(input, config=None, stream_mode="updates")Exécution de streaming asynchrone
get_state(config)Obtenir un instantané de l'état actuel
update_state(config, values)Mettre à jour l'état manuellement

Structure d'AgentState

ChampTypeObligatoire ?Description
messageslist[AnyMessage]OuiHistorique des messages (réducteur add_messages)
jump_to"tools" ou "model" ou "end" ou NonenonSaut de flux (éphémère)
structured_responseAnynonRésultat de sortie structurée (OmitFromInput)

Exemples d'utilisation courants

Exemple

from langchain.agents import create_agent

# Utilisation de base
agent = create_agent(model="deepseek:deepseek-v4-flash", tools=[tool1, tool2])
result = agent.invoke({"messages": [HumanMessage(content="Hello")]})

# Configuration complète
agent = create_agent(
    model="deepseek:deepseek-v4-flash",
    tools=[tool1, tool2],
    system_prompt="Vous êtes un assistant.",
    middleware=[my_middleware],
    response_format=MySchema,
    checkpointer=checkpointer,
    store=store,
    name="my_agent",
)

# Exécution en streaming
for chunk in agent.stream(inputs, stream_mode="updates"):
    print(chunk)

# Récupérer l'état
state = agent.get_state({"configurable": {"thread_id": "1"}})
Autres extensions