Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
AgentSession är containern för konversationstillstånd som används mellan agentkörningar.
Vad AgentSession innehåller
| Fält | Avsikt |
|---|---|
StateBag |
Flexibel tillståndsbehållare för sessionen |
C# AgentSession är en abstrakt basklass. Konkreta implementeringar (skapade via CreateSessionAsync()) kan lägga till ytterligare tillstånd, t.ex. ett ID för lagring av fjärrchatthistorik, när tjänsthanterad historik används.
| Fält | Avsikt |
|---|---|
session_id |
Lokal unik identifierare för den här sessionen |
service_session_id |
Fjärrtjänstkonversationsidentifierare (när tjänsthanterad historik används) |
state |
Föränderlig ordlista som delas med kontext-/historikprovidrar |
Inbyggt användningsmönster
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)
Skapa en session från ett befintligt tjänstkonversations-ID
Skapa en ny session från ett befintligt konversations-ID varierar beroende på agenttyp. Här följer några exempel.
När du använder ChatClientAgent
AgentSession session = await chatClientAgent.CreateSessionAsync(conversationId);
När du använder en A2AAgent
AgentSession session = await a2aAgent.CreateSessionAsync(contextId, taskId);
Använd detta när den stödjande tjänsten redan har konversationstillstånd.
session = agent.get_session(service_session_id="<service-conversation-id>")
response = await agent.run("Continue this conversation.", session=session)
Serialisering och återställning
var serialized = agent.SerializeSession(session);
AgentSession resumed = await agent.DeserializeSessionAsync(serialized);
serialized = session.to_dict()
resumed = AgentSession.from_dict(serialized)
Viktigt!
Sessioner är agent-/tjänstspecifika. Om du återanvänder en session med en annan agentkonfiguration eller leverantör kan det leda till en ogiltig kontext.