[GH-ISSUE #10] 思维链的响应部分好像有点问题 #4

Closed
opened 2026-02-27 01:55:48 +03:00 by kerem · 13 comments
Owner

Originally created by @Passerby1011 on GitHub (Feb 5, 2025).
Original GitHub issue: https://github.com/ErlichLiu/DeepClaude/issues/10

每次问答完,思维链的内容就消失了,只保留主体回答,按理说不应该的
客户端:最新的librechat

Originally created by @Passerby1011 on GitHub (Feb 5, 2025). Original GitHub issue: https://github.com/ErlichLiu/DeepClaude/issues/10 每次问答完,思维链的内容就消失了,只保留主体回答,按理说不应该的 客户端:最新的librechat
kerem closed this issue 2026-02-27 01:55:48 +03:00
Author
Owner

@GowayLee commented on GitHub (Feb 5, 2025):

需要确定这个客户端是否支持显示深度思考内容

当前DeepClaude的Stream返回体数据结构遵从DeepSeek官方'

  • choices
    • delta
      • reasoning_content: 深度思考内容
      • content: 回答内容

Image

<!-- gh-comment-id:2636006173 --> @GowayLee commented on GitHub (Feb 5, 2025): 需要确定这个客户端是否支持显示深度思考内容 当前DeepClaude的Stream返回体数据结构遵从DeepSeek官方' - choices - delta - reasoning_content: 深度思考内容 - content: 回答内容 ![Image](https://github.com/user-attachments/assets/3f8eef6c-5e19-492b-828d-f2506e0b6af8)
Author
Owner

@Passerby1011 commented on GitHub (Feb 5, 2025):

Image
Image

<!-- gh-comment-id:2636011169 --> @Passerby1011 commented on GitHub (Feb 5, 2025): ![Image](https://github.com/user-attachments/assets/839ad2b0-ae88-4748-8b5c-b7af2b7064e3) ![Image](https://github.com/user-attachments/assets/e97f8ff0-2efd-4a3e-92de-3e2bc7f9d0b9)
Author
Owner

@Passerby1011 commented on GitHub (Feb 5, 2025):

这是另一个类似项目的正常状态,也是deepseek-r1的正常状态
Image

<!-- gh-comment-id:2636021414 --> @Passerby1011 commented on GitHub (Feb 5, 2025): 这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 ![Image](https://github.com/user-attachments/assets/b1fb9121-a405-4f9c-8c3e-ad757b08f9be)
Author
Owner

@GowayLee commented on GitHub (Feb 5, 2025):

我怀疑是后一个思维链的后一个</think>没输出出来

能否提供接收到的chunk stream? 个人认为是目前的返回数据结构造成的兼容性问题.

DeepSeek官方和SiliconFlow的输出格式已取消<think></think>, 感觉可以做一个选项来控制DeepClaude的思维链输出格式.

  • embed: 使用Markdown代码块将思考过程嵌入回答返回, 适配几乎所有支持MarkDown渲染的客户端.

    例如:

    
    ``thinking
    好的, 用户要我展示我的思考过程...
    这是我的思考过程...
    这是我的思考过程...
    ``
    这是我的回答
    
  • separate: 与官方使用一样的数据结构返回

<!-- gh-comment-id:2636035867 --> @GowayLee commented on GitHub (Feb 5, 2025): > 我怀疑是后一个思维链的后一个`</think>`没输出出来 能否提供接收到的chunk stream? 个人认为是目前的返回数据结构造成的兼容性问题. DeepSeek官方和SiliconFlow的输出格式已取消`<think></think>`, 感觉可以做一个选项来控制DeepClaude的思维链输出格式. - embed: 使用Markdown代码块将思考过程嵌入回答返回, 适配几乎所有支持MarkDown渲染的客户端. 例如: ```txt ``thinking 好的, 用户要我展示我的思考过程... 这是我的思考过程... 这是我的思考过程... `` 这是我的回答 ``` - separate: 与官方使用一样的数据结构返回
Author
Owner

@Passerby1011 commented on GitHub (Feb 5, 2025):

这是另一个类似项目的正常状态,也是deepseek-r1的正常状态

这只是我随便乱猜的,但肯定是有一些数据兼容性问题的,
只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的
像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的

<!-- gh-comment-id:2636045503 --> @Passerby1011 commented on GitHub (Feb 5, 2025): > 这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 这只是我随便乱猜的,但肯定是有一些数据兼容性问题的, 只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的 像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的
Author
Owner

@GowayLee commented on GitHub (Feb 5, 2025):

这只是我随便乱猜的,但肯定是有一些数据兼容性问题的, 只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的 像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的

看来确实需要做兼容

<!-- gh-comment-id:2636076428 --> @GowayLee commented on GitHub (Feb 5, 2025): > 这只是我随便乱猜的,但肯定是有一些数据兼容性问题的, 只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的 像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的 看来确实需要做兼容
Author
Owner

@Passerby1011 commented on GitHub (Feb 5, 2025):

这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 Image

这个项目是我拿deepclaude糊的cloudflare的workers,功能和deepclaude类似,可以看到显示是没有问题的

<!-- gh-comment-id:2636080976 --> @Passerby1011 commented on GitHub (Feb 5, 2025): > 这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 ![Image](https://github.com/user-attachments/assets/b1fb9121-a405-4f9c-8c3e-ad757b08f9be) 这个项目是我拿deepclaude糊的cloudflare的workers,功能和deepclaude类似,可以看到显示是没有问题的
Author
Owner

@ErlichLiu commented on GitHub (Feb 5, 2025):

这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 Image

这个项目是我拿deepclaude糊的cloudflare的workers,功能和deepclaude类似,可以看到显示是没有问题的

欢迎来提交一个 claudeflare 部署的版本呀,这个免费又稳定

<!-- gh-comment-id:2636101295 --> @ErlichLiu commented on GitHub (Feb 5, 2025): > > 这是另一个类似项目的正常状态,也是deepseek-r1的正常状态 ![Image](https://github.com/user-attachments/assets/b1fb9121-a405-4f9c-8c3e-ad757b08f9be) > > 这个项目是我拿deepclaude糊的cloudflare的workers,功能和deepclaude类似,可以看到显示是没有问题的 欢迎来提交一个 claudeflare 部署的版本呀,这个免费又稳定
Author
Owner

@ErlichLiu commented on GitHub (Feb 5, 2025):

这只是我随便乱猜的,但肯定是有一些数据兼容性问题的, 只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的 像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的

看来确实需要做兼容

这个项目里已经实现了,其实是分为两种:

  1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹;
  2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。
    这两个模式都支持的,无需改动。
<!-- gh-comment-id:2636106392 --> @ErlichLiu commented on GitHub (Feb 5, 2025): > > 这只是我随便乱猜的,但肯定是有一些数据兼容性问题的, 只要是官方的格式librechat应该就可以正常渲染响应,那些逆向项目还是其他三方api都是正常没问题的 像是硅基流动、官方、azure、groq、百炼、豆包,都是正常的 > > 看来确实需要做兼容 这个项目里已经实现了,其实是分为两种: 1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 <think></think> 作为思考内容的包裹; 2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。 这两个模式都支持的,无需改动。
Author
Owner

@GowayLee commented on GitHub (Feb 5, 2025):

这个项目里已经实现了,其实是分为两种:

  1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹;
  2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。
    这两个模式都支持的,无需改动。

SiliconFlow上部署的蒸馏模型们现在也是使用reasoning_content字段来返回推理过程.

我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式

  1. 与DeepSeek, SiliconFlow一样的reasoning_content字段
  2. 在客户端不支持reasoning_content字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以content字段的形式返回
<!-- gh-comment-id:2636175288 --> @GowayLee commented on GitHub (Feb 5, 2025): > 这个项目里已经实现了,其实是分为两种: > > 1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹; > 2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。 > 这两个模式都支持的,无需改动。 SiliconFlow上部署的蒸馏模型们现在也是使用`reasoning_content`字段来返回推理过程. 我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式 1. 与DeepSeek, SiliconFlow一样的`reasoning_content`字段 2. 在客户端不支持`reasoning_content`字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以`content`字段的形式返回
Author
Owner

@ErlichLiu commented on GitHub (Feb 5, 2025):

这个项目里已经实现了,其实是分为两种:

  1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹;
  2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。
    这两个模式都支持的,无需改动。

SiliconFlow上部署的蒸馏模型们现在也是使用reasoning_content字段来返回推理过程.

我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式

  1. 与DeepSeek, SiliconFlow一样的reasoning_content字段
  2. 在客户端不支持reasoning_content字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以content字段的形式返回

但我们是 API 层,我们不知到客户端是否支持。

而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。

<!-- gh-comment-id:2636338889 --> @ErlichLiu commented on GitHub (Feb 5, 2025): > > 这个项目里已经实现了,其实是分为两种: > > > > 1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹; > > 2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。 > > 这两个模式都支持的,无需改动。 > > SiliconFlow上部署的蒸馏模型们现在也是使用`reasoning_content`字段来返回推理过程. > > 我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式 > > 1. 与DeepSeek, SiliconFlow一样的`reasoning_content`字段 > 2. 在客户端不支持`reasoning_content`字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以`content`字段的形式返回 但我们是 API 层,我们不知到客户端是否支持。 而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。
Author
Owner

@GowayLee commented on GitHub (Feb 5, 2025):

但我们是 API 层,我们不知到客户端是否支持。

而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。

明白了, 合理滴👍

<!-- gh-comment-id:2636386098 --> @GowayLee commented on GitHub (Feb 5, 2025): > 但我们是 API 层,我们不知到客户端是否支持。 > > 而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。 明白了, 合理滴👍
Author
Owner

@Passerby1011 commented on GitHub (Feb 5, 2025):

这个项目里已经实现了,其实是分为两种:

  1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹;
  2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。
    这两个模式都支持的,无需改动。

SiliconFlow上部署的蒸馏模型们现在也是使用reasoning_content字段来返回推理过程.
我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式

  1. 与DeepSeek, SiliconFlow一样的reasoning_content字段
  2. 在客户端不支持reasoning_content字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以content字段的形式返回

但我们是 API 层,我们不知到客户端是否支持。

而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。

但是我现在的问题是在我客户端正常的情况下,deepclaude的输出有点不正常,或者说有些小问题

<!-- gh-comment-id:2636416919 --> @Passerby1011 commented on GitHub (Feb 5, 2025): > > > 这个项目里已经实现了,其实是分为两种: > > > > > > 1. deepseek r1 蒸馏过的密集模型:1.5b、7b、8b、14b、32b、70b 都是用 作为思考内容的包裹; > > > 2. deepseek r1 满血 671b 的版本,目前看硅基流动和 deepseek 官网都是增加了 reason_content 字段。 > > > 这两个模式都支持的,无需改动。 > > > > > > SiliconFlow上部署的蒸馏模型们现在也是使用`reasoning_content`字段来返回推理过程. > > 我提到的"兼容"是指DeepClaude向用户客户端返回最终的混合结果时采用的数据结构可以有两种模式 > > > > 1. 与DeepSeek, SiliconFlow一样的`reasoning_content`字段 > > 2. 在客户端不支持`reasoning_content`字段的解析&渲染的情况下, 则用户可以选择采用兼容模式: 将思考过程包裹在MarkDown代码块中, 与回答内容一起以`content`字段的形式返回 > > 但我们是 API 层,我们不知到客户端是否支持。 > > 而且客户端只要是活跃的,那么这几天一定都会支持推理字段解析,所以我们就无需再做两遍工作了。 但是我现在的问题是在我客户端正常的情况下,deepclaude的输出有点不正常,或者说有些小问题
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/DeepClaude#4
No description provided.