首页 教程 常见问题

Agent SDK 会话管理

在 Agent SDK 中管理会话——保存、恢复和分支对话历史。

会话数据

会话包含:

保存会话

import json

def save_session(messages, filename="session.json"):
    """将消息历史保存到文件。"""
    with open(filename, 'w') as f:
        json.dump(messages, f)

def load_session(filename="session.json"):
    """从文件加载消息历史。"""
    with open(filename) as f:
        return json.load(f)

恢复会话

def continue_session(messages):
    """继续之前的会话。"""
    response = client.messages.create(
        model="claude-sonnet-4-20250514",
        max_tokens=2048,
        tools=tools,
        messages=messages
    )

    # 更新消息历史
    messages.append({
        "role": "assistant",
        "content": response.content
    })

    save_session(messages)
    return response

分支会话

def fork_session(messages, branch_point):
    """从特定点分支会话。"""
    branch = messages[:branch_point].copy()
    return branch

下一步