@@ -12,39 +12,47 @@ VeADK 的长期记忆通常存储在数据库中,通过如下方式定义一
1212``` python
1313from veadk.memory.long_term_memory import LongTermMemory
1414
15- long_term_memory = LongTermMemory()
15+ # 由于长期记忆需要构建索引,因此你必须在初始化长期记忆时定义 `app_name` 以及 `user_id`
16+ long_term_memory = LongTermMemory(app_name = " my_app_name" , user_id = " user_id" )
1617```
1718
1819通过如下例子说明长期记忆:
1920
2021以下示例展示了如何在 VeADK 中使用长期记忆实现跨会话的信息保留与调用。开发者可以通过 ` save_session_to_long_term_memory ` 方法,将某一会话中的知识性信息存入长期记忆存储后端。在新的会话中,即使上下文为空,Agent 依然能够基于长期记忆准确回忆并回答相关问题。
2122
2223``` python
24+ import asyncio
25+
2326from veadk import Agent, Runner
2427from veadk.memory.long_term_memory import LongTermMemory
25- from veadk.memory.short_term_memory import ShortTermMemory
2628
27- session_id = " ..."
28- new_session_id = " ..."
29+ app_name = " ltm_demo"
30+ user_id = " temp_user"
31+
32+ teaching_session_id = " teaching_session"
33+ student_session_id = " student_session"
34+
35+ long_term_memory = LongTermMemory(backend = " local" , app_name = app_name, user_id = user_id)
2936
30- long_term_memory = LongTermMemory(backend = ... ) # default backend is `opensearch`
31- agent = Agent(long_term_memory = long_term_memory) # agent with long term memort backend
37+ agent = Agent(long_term_memory = long_term_memory)
3238
3339runner = Runner(
3440 agent = agent,
35- app_name = " ..." ,
36- user_id = " ..." ,
37- short_term_memory = ShortTermMemory(),
41+ app_name = app_name,
42+ user_id = user_id,
3843)
39- teaching_prompt = " ..."
40- await runner.run(messages = teaching_prompt, session_id = session_id)
44+
45+ teaching_prompt = " My secret is 0xabcd"
46+ asyncio.run(runner.run(messages = teaching_prompt, session_id = teaching_session_id))
4147
4248# save the teaching prompt and answer in long term memory
43- await runner.save_session_to_long_term_memory(session_id = session_id )
49+ asyncio.run( runner.save_session_to_long_term_memory(session_id = teaching_session_id) )
4450
4551# now, let's validate this in a new session
46- student_prompt = " ..."
47- response = await runner.run(messages = student_prompt, session_id = new_session_id)
52+ student_prompt = " What is my secret?"
53+ response = asyncio.run(
54+ runner.run(messages = student_prompt, session_id = student_session_id)
55+ )
4856print (response)
4957```
5058
0 commit comments