다음을 통해 공유


Session

AgentSession 는 에이전트 실행에서 사용되는 대화 상태 컨테이너입니다.

AgentSession에 무엇이 포함되어 있는가

분야 목적
session_id 이 세션의 로컬 고유 식별자
service_session_id 원격 서비스 대화 식별자(서비스 관리 기록이 사용되는 경우)
state 컨텍스트/기록 공급자와 공유되는 변경 가능한 사전

기본 제공 사용 패턴

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)

기존 서비스 대화 ID에서 세션 만들기

지원 서비스에 이미 대화 상태가 있는 경우 이를 사용합니다.

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

직렬화와 복원

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

중요합니다

세션은 에이전트/서비스별로 적용됩니다. 다른 에이전트 구성 또는 공급자를 사용하여 세션을 다시 사용하면 잘못된 컨텍스트가 발생할 수 있습니다.

다음 단계: