本文档由 AI 自动翻译。如有任何不准确之处,请参考 英文原版。
概述
大多数插件工具和端点以无状态的单轮交互模型运行:- 接收请求
- 处理数据
- 返回响应
- 结束交互
持久化存储让插件在同一工作空间内跨交互保存数据,从而实现有状态应用和记忆功能。
访问存储
所有存储操作都通过插件会话中可用的storage 对象执行:
存储操作
存储数据
使用set 方法存储数据:
示例:存储不同数据类型
检索数据
使用get 方法检索存储的数据:
示例:检索和转换数据
删除数据
使用delete 方法删除存储的数据:
最佳实践
使用描述性键名
为键创建一致的命名方案,以避免冲突并使代码更易于维护。
处理缺失的键
在处理数据之前始终检查数据是否存在,因为键可能不存在。
序列化复杂数据
在存储之前将复杂对象转换为 JSON 或其他序列化格式。
实现错误处理
将存储操作包装在 try/except 块中,以优雅地处理潜在错误。
常见用例
- 用户偏好:在会话之间存储用户设置和偏好。
- 对话历史:维护先前对话的上下文。
- API 令牌:安全存储认证令牌。
- 缓存数据:存储频繁访问的数据以减少 API 调用。
- 文件存储:存储用户上传的文件或生成的内容。