Delen via


Session

AgentSession is de gespreksstatuscontainer die wordt gebruikt voor agentruns.

Wat AgentSession bevat

Veld Purpose
session_id Lokale unieke id voor deze sessie
service_session_id Gesprekken-ID voor externe service (wanneer door de service beheerde gespreksgeschiedenis wordt gebruikt)
state Veranderlijke woordenlijst die wordt gedeeld met context-/geschiedenisproviders

Ingebouwd gebruikspatroon

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)

Een sessie maken op basis van een bestaande servicegespreks-id

Gebruik deze optie wanneer de back-upservice al de gespreksstatus heeft.

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

Serialisatie en herstel

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

Belangrijk

Sessies zijn agent/servicespecifiek. Het opnieuw gebruiken van een sessie met een andere agentconfiguratie of -provider kan leiden tot ongeldige context.

Volgende stappen