Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
AgentSession adalah kontainer status percakapan yang digunakan di seluruh proses eksekusi agen.
Apa yang AgentSession berisi
| Bidang | Tujuan |
|---|---|
StateBag |
Kontainer status arbitrer untuk sesi ini |
C# AgentSession adalah kelas dasar abstrak. Implementasi konkret (dibuat melalui CreateSessionAsync()) dapat menambahkan status tambahan misalnya id untuk penyimpanan riwayat obrolan jarak jauh, ketika riwayat yang dikelola layanan digunakan.
| Bidang | Tujuan |
|---|---|
session_id |
Pengidentifikasi unik lokal untuk sesi ini |
service_session_id |
Pengidentifikasi percakapan layanan jarak jauh (saat riwayat yang dikelola layanan digunakan) |
state |
Kamus yang dapat diubah dibagikan dengan penyedia konteks/riwayat |
Pola penggunaan bawaan
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)
Membuat sesi dari ID percakapan layanan yang sudah ada
Buat sesi baru dari id percakapan yang sudah ada bervariasi menurut jenis agen. Berikut adalah beberapa contoh.
Saat menggunakan ChatClientAgent
AgentSession session = await chatClientAgent.CreateSessionAsync(conversationId);
Saat menggunakan A2AAgent
AgentSession session = await a2aAgent.CreateSessionAsync(contextId, taskId);
Gunakan ini ketika layanan pendukung sudah memiliki status percakapan.
session = agent.get_session(service_session_id="<service-conversation-id>")
response = await agent.run("Continue this conversation.", session=session)
Serialisasi dan pemulihan
var serialized = agent.SerializeSession(session);
AgentSession resumed = await agent.DeserializeSessionAsync(serialized);
serialized = session.to_dict()
resumed = AgentSession.from_dict(serialized)
Penting
Sesi bersifat spesifik untuk agen/layanan. Menggunakan kembali sesi dengan konfigurasi agen atau penyedia yang berbeda dapat menyebabkan konteks yang tidak valid.