常见问题说明

本章节主要解答用户在使用 AwesomeAPI 过程中遇到的常见疑问,特别是关于模型自我认知、版本回答以及协议转换相关的技术细节。

关于模型的“自我认知”与版本回答

在使用过程中,您可能会遇到询问模型“你是谁”、“你是什么版本”或者“你的知识库截止到什么时候”时,模型的回答与您实际选择的模型不符(例如:选择了 Claude 3.5 Sonnet,但模型回答自己是 GPT-4 或 Claude 2)。

请放心,这是由于协议转换与系统提示词(System Prompt)注入机制导致的正常技术现象,不代表模型被替换。

核心原理

大型语言模型(LLM)本身并没有“自我意识”或“版本认知”。它们对“我是谁”的回答,完全取决于训练数据系统提示词(System Prompt)

  1. 协议转换层的影响: AwesomeAPI 为了兼容各种客户端(如 NextChat, OneAPI 等),通常需要支持 OpenAI 兼容协议。当您通过 OpenAI 格式调用非 OpenAI 模型(如 Claude、Gemini)时,后端中间件需要进行协议格式转换。

  2. 提示词注入: 为了确保模型在转换后的协议中能正常工作(例如强制输出 JSON 格式,或遵守特定的安全规范),中间件可能会在 System Prompt 中注入通用的身份描述。

    • 如果注入了“You are a helpful assistant based on GPT...”,Claude 就会回答自己是 GPT。
    • 如果未注入特定身份,模型可能会根据训练数据随机回答(幻觉)。

OpenCode 与原生协议示例

相比之下,OpenCode 等工具支持 Claude 原生协议。在使用原生协议时,客户端通常会将准确的模型名称(Model ID)直接传递给后端,或者在 System Prompt 中明确写入当前模型的信息。

如下图所示,在 OpenCode 中使用 Claude 原生协议时,由于客户端正确注入了模型身份信息,模型能够准确回答自己的版本:

OpenCode 模型标识示例

注意:即便是 OpenCode,其回答准确也是因为客户端在请求时“告诉”了模型它是谁,而非模型自己“知道”。

郑重承诺

无论模型在聊天中如何回答自己的身份,AwesomeAPI 后端严格按照您 API 请求中的 model 参数进行路由转发

  • 如果您请求的是 claude-3-5-sonnet,后端就会将请求发送给真实的 Claude 3.5 Sonnet 节点。
  • 如果您请求的是 gpt-4o,后端就会发送给真实的 GPT-4o 节点。

请各位用户放心使用,后端底层计算资源绝对真实可靠。

results matching ""

    No results matching ""