Partager via


Session

AgentSession est le conteneur d’état de conversation utilisé entre les exécutions de l’agent.

Ce que AgentSession contient

Champ Objectif
session_id Identificateur unique local pour cette session
service_session_id Identificateur de conversation de service distant (lorsque l’historique géré par le service est utilisé)
state Dictionnaire mutable partagé avec des fournisseurs de contexte/d’historique

Modèle d’utilisation intégré

AgentSession session = await agent.CreateSessionAsync();

var first = await agent.RunAsync("My name is Alice.", session);
var second = await agent.RunAsync("What is my name?", session);
session = agent.create_session()

first = await agent.run("My name is Alice.", session=session)
second = await agent.run("What is my name?", session=session)

Création d’une session à partir d’un ID de conversation de service existant

Utilisez ceci lorsque le service de support dispose déjà d'un état de conversation.

session = agent.get_session(service_session_id="<service-conversation-id>")
response = await agent.run("Continue this conversation.", session=session)

Sérialisation et restauration

var serialized = agent.SerializeSession(session);
AgentSession resumed = await agent.DeserializeSessionAsync(serialized);
serialized = session.to_dict()
resumed = AgentSession.from_dict(serialized)

Important

Les sessions sont spécifiques à l’agent/au service. La réutilisation d’une session avec une autre configuration d’agent ou fournisseur peut entraîner un contexte non valide.

Prochaines étapes