首页
/ GPTel项目新增Gemini模型推理过程显示功能的技术解析

GPTel项目新增Gemini模型推理过程显示功能的技术解析

2025-07-02 12:54:46作者:冯爽妲Honey

背景与需求

在人工智能对话系统的开发中,模型推理过程的透明性一直是提升用户体验的重要方向。GPTel作为Emacs生态下的AI对话工具,近期针对Google的Gemini模型实现了推理过程显示功能,让用户能够直观看到AI生成回答时的思考链条。

技术实现要点

Gemini API与OpenAI在技术实现上存在差异,其推理过程需要通过特定参数开启。开发团队发现需要传递thinkingConfig.includeThoughts参数来实现这一功能:

"generationConfig": {
  "temperature": 1.0,
  "thinkingConfig": {
    "includeThoughts": true
  }
}

在Emacs Lisp实现中,开发者在请求数据处理函数gptel--request-data中添加了相关逻辑:

(when gptel-include-reasoning
  (setq params
        (plist-put params :thinkingConfig '(:includeThoughts t))))

响应数据结构

启用该功能后,Gemini API的响应中会包含标记为"thought": true的思考区块:

"candidates": [
  {
    "content": {
      "parts": [
        {
          "text": "......",
          "thought": true
        }
      ]
    }
  }
]

功能测试要点

开发者特别强调了四个需要重点测试的场景:

  1. 流式传输时不显示推理过程
  2. 流式传输时显示推理过程
  3. 非流式传输时显示推理过程
  4. 流式传输+工具调用+显示推理过程

这些测试点主要针对流式传输这一特殊场景,因为其实现在技术上较为复杂,容易出现边缘情况。

使用中的格式问题

在实际使用中,用户反馈了两个格式问题:

  1. 在Org模式下使用推理显示功能时,#+end_reasoning标签前会出现多余空行
  2. Markdown到Org模式的转换过程中,标题级别的星号标记存在不一致问题

经分析,空行问题源于Gemini API的原始响应格式,而非GPTel的后期处理。而星号标记问题确实属于格式转换过程中的bug,需要进一步修复。

技术价值

这一功能的实现不仅增强了Gemini模型在GPTel中的可用性,更重要的是为用户提供了更透明的AI交互体验。通过观察模型的思考过程,用户可以更好地理解AI的决策逻辑,这在教育、调试和内容创作等场景中尤为重要。

未来展望

随着AI模型解释性需求的增长,类似推理过程显示功能将成为AI工具的标准配置。GPTel团队表示将继续优化这一功能,特别是在流式传输等复杂场景下的稳定性和格式一致性方面。

登录后查看全文
热门项目推荐
相关项目推荐