Skip to content

会话开关与统一用法

适用版本:4.0.8+

本页用于统一团队写法:v4.0.8+ 推荐使用 activate_session/deactivate_sessionSession 核心能力。

1. 统一心智模型

  • 开启会话:activate_session(session_id=...)
  • 关闭会话:deactivate_session()
  • 控制窗口:session.max_length + resize()
  • 维护记忆:自定义 analysis/execution 策略更新 memo
  • 恢复会话:load_json_session/load_yaml_session + 会话池激活

2. 推荐会话开关写法

python
from agently import Agently

agent = Agently.create_agent()

# 开启
agent.activate_session(session_id="user_1001")
agent.input("请记住:我喜欢中文回答").streaming_print()

# 关闭
agent.deactivate_session()

3. 从导出数据恢复会话

python
from agently import Agently
from agently.core import Session

agent = Agently.create_agent()

restored = Session(settings=agent.settings)
restored.load_json_session("session.snapshot.json")  # 也可直接传 JSON 字符串

agent.sessions[restored.id] = restored
agent.activate_session(session_id=restored.id)

4. 如果你只想“记录不裁剪”

session.max_length 设为 None(默认)即可。

python
agent.activate_session(session_id="record_only")
agent.set_settings("session.max_length", None)

这就是新版“只记录”最直接写法,不需要额外 quick session 开关。

5. 检查清单

  • 确认代码统一使用 activate_session/deactivate_session
  • 确认字段名使用 full_context/context_window
  • memo 更新逻辑统一迁移到自定义执行策略