Skip to content

【功能建议】提供获取用户/会话ID及聊天记录的接口/方法 #1463

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
2 tasks done
MiaoCento opened this issue May 4, 2025 · 0 comments
Open
2 tasks done
Labels
enhancement New feature or request

Comments

@MiaoCento
Copy link

描述

我们希望平台能够提供一套标准化的接口或方法,以便外部应用(例如我们正在开发的中间件、或其他第三方集成)能够方便地获取以下信息:

当前用户的唯一标识 (User ID)。
当前聊天会话的唯一标识 (Conversation ID)。
与特定用户和会话关联的聊天记录历史数据。
目前,外部中间件如果需要管理对话上下文(例如,为了向无状态的大模型 API 传递完整的历史消息),需要自行实现复杂的历史存储和管理逻辑。或者依赖于不太可靠的启发式方法(如检查消息内容或长度)来猜测会话状态,这在多用户和复杂场景下容易出错。

通过平台层暴露获取这些核心数据的功能,可以极大地降低外部集成的开发难度。

emmm,讲白点就是我想要获取平台内的用户ID和用户的聊天记录这样暴露出来的话会更加容易应付多用户区分,和自行优化上传的数据请求量,可以节省大量的上传数据。

使用场景

开发者基于本项目(AstrBot)构建连接到各种大型语言模型(LLMs)的中间件,例如使用 Langflow、或者自定义的 FastAPI 服务等。这些中间件需要处理用户请求,并将其发送到实际的 LLM API。

由于大多数 LLM API (如 OpenAI, Gemini, Claude 等) 是无状态的,中间件必须在每次调用时将完整的(或足够的)历史消息与当前用户输入一起发送,以维持对话上下文。

当前,中间件难以准确地获取“当前是哪个用户”以及“这个请求属于哪个具体的对话会话”,也无法直接访问平台已有的聊天记录数据库。

你愿意提交PR吗?

  • 是的, 我愿意提交PR!

Code of Conduct

@MiaoCento MiaoCento added the enhancement New feature or request label May 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant