Tokeny Bug Report: SenseNova 6.7 Flash-Lite 空响应问题

综合讨论
微信用户2026-06-015502

问题描述

在 Tokeny 中使用 sensenova-6.7-flash-lite 模型进行对话时,所有请求均返回"服务端返回空响应,正在重试"错误,5次重试后触发 Doom Loop 终止。该模型在其他工具(Cursor、Cline、curl 等)中正常使用。

根因分析

sensenova-6.7-flash-lite 是推理模型,其 API 响应结构与标准 OpenAI 格式不同:

非流式响应

json

{  "choices": [{    "message": {      "role": "assistant",      "reasoning": "模型的思考过程...",      "content": null  // 注意:字段不存在或为 null    },    "finish_reason": "stop"  }]}
  • 推理内容在 message.reasoning 字段中
  • message.content 字段不存在(标准模型为文本回复)

流式响应(Tokeny 使用流式模式)

data: {"choices":[{"delta":{"reasoning":"好的"},"finish_reason":""}]}data: {"choices":[{"delta":{"reasoning":"用户"},"finish_reason":""}]}... (大量 reasoning chunks)data: {"choices":[{"delta":{"content":"你好!"},"finish_reason":"stop"}]}
  • 推理阶段:所有 chunk 只有 delta.reasoning,delta.content 始终为空字符串
  • 回复阶段:delta.content 才有实际内容
  • 但推理阶段可能消耗大量 token,甚至全部用尽

Tokeny 的问题

  1. 未发送 reasoning_effort 参数:Tokeny 的流式解析器只读 delta.content,忽略 delta.reasoning,导致整段推理过程被视为空响应
  2. 未在频道/模型配置中暴露 reasoning_effort 参数:用户无法通过 UI 设置该参数

修复建议

方案一(推荐):发送 reasoning_effort: "none"

当用户选择 sensenova-6.7-flash-lite 模型时,自动在请求中加入 "reasoning_effort": "none"。实测验证:

reasoning_effort=none 时:直接输出 content,28 token,正常回复无 reasoning_effort 时:推理阶段消耗所有 token,content 为空

方案二:支持解析 reasoning 字段

在流式解析器中增加对 delta.reasoning 的处理,将推理内容展示给用户(类似 o1/o3 的思考过程展示)。

方案三:模型配置增加 reasoningEffort 字段

在频道模型配置中新增可选参数,允许用户自定义 reasoning_effort(low/medium/high/none),默认对推理模型设为 none。

复现步骤

  1. Tokeny → 设置 → 大模型 → 选择 sensenova 频道 → sensenova-6.7-flash-lite
  2. 新建会话,发送"你好"
  3. 观察:5次重试后报错"服务端返回空响应"

测试环境

评论与讨论

0/2000

还没有评论,分享你的体验吧。