有状态聊天 API
创建一次聊天会话,随后将事件发送到 `/api/v1/chats/{chat_id}/responses`,无需在每次请求时重新构建完整对话记录。
Twigg 是用于与大语言模型交互的应用的托管式上下文存储、组装与模型路由服务。应用创建一个聊天会话,保存其聊天 ID,并向同一聊天会话发送新事件;Twigg 存储对话、组装请求上下文、调用指定模型,并返回响应和使用情况信息。
对话保留在大语言模型提供商之外,因此同一个聊天会话可以使用来自不同提供商的模型。API 可以保留推理和工具调用等提供商原生产物,将累积的记录转换为各提供商的消息格式,并在必要时压缩较早的上下文。
创建一次聊天会话,随后将事件发送到 `/api/v1/chats/{chat_id}/responses`,无需在每次请求时重新构建完整对话记录。
Twigg 存储并获取对话历史,因此应用只需保存聊天 ID,而无需保存完整对话记录。
每次运行都会指定要使用的模型,因此对话可以在列出的模型和提供商之间切换,无需将聊天迁移到新的供应商线程中。
Twigg 为每个请求组装历史记录,并在需要时压缩较早的内容,以使请求保持在配置的上下文预算内。
命名空间可以定义上下文窗口预算,以及保留、截断或删除不同内容类型的规则。工具参数和结果可以使用单独的大小与时效规则。
响应可以通过 API 流式返回;已完成的运行会包含模型、令牌使用量、停止原因和费用信息(如果服务返回这些信息)。
在单独的命名空间下保存每位用户的聊天记录,同时应用只存储当前打开的聊天 ID。Twigg 的示例 CLI 支持创建、列出、重新打开以及切换用户对话。
即使进程重启或迁移到其他机器,也不会丢失对话,因为系统通过聊天 ID 获取对话记录,而不是将其保存在应用内存中。
将同一对话中的不同轮次发送给不同的指定模型或提供商,以比较表现,或根据可用模型能力匹配任务。
在上下文记录中保留工具调用、工具结果、推理产物和普通消息,同时对较大的工具负载应用单独的保留规则。
使用文档中的 JavaScript 或 Python 示例构建流式聊天机器人;这些示例不依赖 SDK 或外部软件包。
对于文档所述的聊天工作流,应用可以保存聊天 ID 及自身的代理循环状态。示例 CLI 表示,除当前打开的聊天 ID 外不保存其他内容,而 Twigg 负责保存聊天和消息。
可以。响应请求包含模型名称,示例通过 `GET /api/v1/models` 列出模型,并为同一聊天中的后续轮次选择不同模型。
支持。示例会消费流式响应,并在文本增量事件到达时将其打印出来。API 示例还展示了运行帧和最终的 `done` 事件。
Twigg 会在上下文预算内组装对话,并可以压缩较早的内容。网站还介绍了命名空间级别和模型级别的预算、保留边界及截断规则控制。
目前没有文档说明其提供这样的完整运行时。产品描述将代理循环和工具交由应用负责,而 Twigg 管理上下文记录、请求组装、模型调用及相关响应数据。
流量数据仅供参考。