Compartilhar via


Visão geral de conversas e memória

Use AgentSession para manter o contexto de conversa entre invocações.

Padrão de uso principal

A maioria dos aplicativos segue o mesmo fluxo:

  1. Criar uma sessão (CreateSessionAsync())
  2. Passe essa sessão para cada RunAsync(...)
  3. Reidratar do estado serializado (DeserializeSessionAsync(...))
  4. Continuar com uma ID de conversa de serviço (varia de acordo com o agente, por exemplo myChatClientAgent.CreateSessionAsync("existing-id"))
  1. Criar uma sessão (create_session())
  2. Passe essa sessão para cada run(...)
  3. Reidratar por ID de conversa de serviço (get_session(...)) ou de estado serializado
// Create and reuse a session
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);

// Persist and restore later
var serialized = agent.SerializeSession(session);
AgentSession resumed = await agent.DeserializeSessionAsync(serialized);
# Create and reuse a 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)

# Rehydrate by service conversation ID when needed
service_session = agent.get_session(service_session_id="<service-conversation-id>")

# Persist and restore later
serialized = session.to_dict()
resumed = AgentSession.from_dict(serialized)

Mapa de guias

Página Foco
Sessão AgentSession estrutura e serialização
Provedores de contexto Padrões de fornecedor de contexto/histórico incorporados e personalizados
Compactação de contexto Gerenciar com eficiência o crescimento da conversa
Armazenamento Modos de armazenamento internos e estratégias de persistência externa

Próximas etapas