← 返回信息流
Agent SkillLINUX DO · AI·2 小时前

ChatGPT Free号果汁值8升至64:透传thinking_effort参数

原标题:chatgpt2api注册的web权限free号,原来是能把free号的果汁值Juice 8 提高到 64的?

速览

ChatGPT免费账号的果汁值(Juice)通常限制为8,影响模型思考深度。通过修改chatgpt2api源码,在对话链路中增加reasoning_effort/thinking_effort参数的解析与透传,可将该值提升至64。此方法需修改conversation.py、openai_backend_api.py等文件,将参数映射至Web后端payload,从而解锁更高级别的思考模式。

AI 深度解读

背景

在开源社区及 AI 技术爱好者圈层中,利用第三方代理工具(如 chatgpt2api)接入 ChatGPT 服务是一种常见做法。部分用户通过此类工具注册获得带有 Web 权限的免费账号(Free Account)。然而,这类免费账号在实际使用中往往存在明显的性能瓶颈,最显著的特征是模型在对话时缺乏深度思考能力,回答质量与付费账号存在差距。

近期,社区用户发现 ChatGPT 账号体系中存在一个名为“果汁值”(Juice)的指标,该指标与账号的推理能力上限相关。普通免费账号的果汁值通常被限制在较低水平(如 8),而通过特定手段或付费升级,该值可提升至更高水平(如 64)。这一发现引发了社区对于如何最大化利用免费资源、突破性能限制的讨论。

核心内容

本文分享的核心在于通过修改开源项目 chatgpt2api(版本 1.5.0)的源代码,实现将 ChatGPT Web 后端特有的“思考强度”(Thinking Effort / Reasoning Effort)参数透传到 API 接口,从而在免费账号上激活更高级别的推理能力,试图将果汁值从默认的 8 提升至 64。

具体技术实现路径如下:

  1. 需求分析

    • 目标是在 /v1/chat/completions/v1/responses 接口中支持客户端传入 reasoning_effortthinking_effort 参数。
    • 这些参数需要映射到 ChatGPT Web 后端 Payload 中的 thinking_effort 字段。
    • 仅针对普通文本对话链路进行修改,严禁改动图片生成、图生图、PPT/PSD 文件处理等非对话逻辑。
  2. 代码修改细节

    • 数据模型层 (services/protocol/conversation.py)
      • ConversationRequest 数据类中增加 thinking_effort: str = "" 字段。
      • 修改 conversation_events() 函数,使其接收并透传 thinking_effort 参数至 backend.stream_conversation()
    • 后端 API 适配层 (services/openai_backend_api.py)
      • stream_conversation()_conversation_payload() 函数中增加 thinking_effort 参数。
      • 在构造后端 Payload 时,若 thinking_effort 为合法值,则将其写入 payload["thinking_effort"]
    • OpenAI 协议解析层 (services/protocol/openai_v1_chat_complete.py)
      • 新增解析逻辑,优先读取 body["thinking_effort"],其次读取 body["reasoning_effort"],并兼容 body["reasoning"]["effort"] 结构。
      • 实现值映射逻辑:low/medium/high 保持不变;xhighextended 均映射为 extended;非法或空值映射为空字符串。
      • 确保流式(stream_text_chat_completion)和非流式(collect_text)接口在生成 ConversationRequest 时均携带该参数。
      • 优化缓存键(cache_key),确保不同 effort 设置不会复用错误的缓存结果。
    • Responses 协议支持 (services/protocol/openai_v1_response.py)
      • 同步实现上述解析逻辑,确保 /v1/responses 接口的文本链路也能生效。
  3. 值映射规则

    • none 或空值 → 不传输(保持默认行为)
    • lowlow
    • mediummedium
    • highhigh
    • xhigh / extendedextended
    • 非法值 → 直接忽略,不报错
  4. 验证方法

    • 通过 curl 命令直接调用 API 接口,传入 reasoning_effort: "xhigh" 等参数进行测试。
    • 检查后端日志或 Payload,确认 thinking_effort 字段是否正确透传。
    • 观察模型回答的质量变化,验证是否从“不思考”状态转变为具备深度推理能力的状态。

关键要点

  • 技术原理:ChatGPT Web 端与 API 端在底层实现上存在差异,Web 端拥有更细粒度的控制参数(如 thinking_effort)。通过逆向工程或源码修改,可以将 Web 端的特有参数“嫁接”到开源 API 代理工具中。
  • 性能提升预期:用户反馈免费账号默认果汁值为 8,表现为模型缺乏深度思考。通过透传 extended 级别的思考强度,有望将果汁值提升至 64,从而显著改善回答的逻辑性和深度。
  • 代码侵入性:修改涉及多个核心服务文件,包括协议解析、后端适配和数据模型定义。修改范围严格限定在文本对话链路,确保不影响其他功能模块。
  • 兼容性处理:代码实现了向后兼容,默认情况下不传输该参数,保持原有行为;仅在客户端显式请求时才启用高级思考模式。
  • 社区驱动:该方案由社区用户发现并分享,体现了开源社区在挖掘产品潜力、优化免费资源使用体验方面的积极作用。

意义与影响

  1. 资源利用最大化:对于无法承担高昂 API 费用的个人开发者或爱好者而言,此方法提供了一种低成本提升 AI 模型表现的手段。通过软件层面的优化,挖掘免费账号的潜在性能,实现了“白嫖”体验的最优化。
  2. 开源生态的活力chatgpt2api 等开源项目因其灵活性和可定制性,成为用户探索 AI 边界的重要工具。此类技术分享促进了社区内的知识流动和技术迭代,推动了代理工具功能的完善。
  3. 对厂商策略的挑战与启示:厂商通过“果汁值”等隐性指标限制免费用户的体验,以引导付费转化。然而,开源社区通过技术手段绕过这些限制,表明单纯的技术壁垒难以完全阻挡用户对高性能免费服务的需求。这可能促使厂商重新评估其免费策略,或加强反自动化、反逆向工程的措施。
  4. 技术普及与教育:此类深度技术分享不仅提供了具体的解决方案,还向广大开发者展示了如何深入理解 API 协议、分析后端逻辑并进行定制化开发,具有较高的技术教育价值。
查看原文 →linux.do