跳转到主要内容

概览

LemonData API 旨在与所有主流 AI 开发工具实现即插即用式兼容。本指南记录了支持的参数和经过验证的集成。
所有参数均经过验证并透传至上游提供商。针对特定模型不支持的参数将被静默忽略,以确保最大程度的兼容性。

支持的 API 格式

端点格式使用场景
/v1/chat/completionsOpenAI Chat通用兼容性
/v1/responsesOpenAI Responses有状态对话
/v1/messagesAnthropic MessagesClaude 原生功能
/v1beta/models/:model:generateContentGoogle GeminiGemini 原生功能

IDE 与 CLI 兼容性

已验证工具

工具状态格式备注
Cursor✅ 完全支持OpenAI支持 Anthropic 工具格式
Claude Code CLI✅ 完全支持Anthropic支持 Extended thinking, tool_choice
Windsurf✅ 完全支持OpenAI标准 OpenAI 格式
Aider✅ 完全支持OpenAI支持所有模型
Continue.dev✅ 完全支持OpenAI/Anthropic双格式支持
OpenCode✅ 完全支持OpenAI多提供商支持
Cline/Roo Code✅ 完全支持OpenAI通过 OpenRouter 格式
GitHub Copilot✅ 完全支持OpenAI标准格式
Codex CLI✅ 完全支持OpenAIOpenAI Responses API
Gemini CLI✅ 完全支持Gemini原生 Gemini 格式

配置示例

Base URL: https://api.lemondata.cc/v1
API Key: sk-your-lemondata-key
Cursor 内部使用 Anthropic 风格的工具格式。LemonData 同时支持以下两种格式:
  • OpenAI 格式:{ type: "function", function: { name, parameters } }
  • Anthropic 格式:{ name, input_schema }(无 type 字段)

SDK 兼容性

已验证 SDK

SDK语言状态备注
OpenAI SDKPython/JS/Go✅ 完全支持支持所有参数
Anthropic SDKPython/JS✅ 完全支持支持 Extended thinking, tools
Vercel AI SDKTypeScript✅ 完全支持支持 streamText, generateObject
LangChainPython/JS✅ 完全支持支持 ChatOpenAI, bind_tools
LlamaIndexPython✅ 完全支持兼容 OpenAI
Dify-✅ 完全支持OpenAI 格式

Chat Completions 参数

核心参数

参数类型描述
modelstring模型标识符(必填)
messagesarray对话消息(必填)
max_tokensinteger最大输出 token 数
temperaturenumber采样温度 (0-2)
top_pnumber核采样 (0-1)
streamboolean启用流式传输

工具调用

{
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get weather for a location",
        "parameters": {
          "type": "object",
          "properties": {
            "location": { "type": "string" }
          }
        },
        "strict": true
      }
    }
  ],
  "tool_choice": "auto",
  "parallel_tool_calls": true
}

工具选择选项

格式示例描述
String"auto", "none", "required"简单选择
OpenAI Object{ "type": "function", "function": { "name": "fn" } }强制指定函数
Anthropic Object{ "type": "tool", "name": "fn", "disable_parallel_tool_use": true }Anthropic 原生格式

高级参数

参数类型描述
stream_optionsobject用于获取 token 计数的 { include_usage: true }
reasoning_effortstring适用于 o1/o3 模型的 "low", "medium", "high"
service_tierstring"auto""default"
seedinteger确定性输出
logprobsboolean返回对数概率
top_logprobsinteger前几个最高对数概率的数量 (0-20)
logit_biasobjectToken 偏置映射 (-100 到 100)
frequency_penaltynumber重复惩罚 (-2 到 2)
presence_penaltynumber话题惩罚 (-2 到 2)
stopstring/array停止序列
ninteger生成结果数量 (1-128)
userstring用于追踪的用户标识符

OpenAI 高级功能

参数类型描述
modalitiesarray用于多模态的 ["text", "audio"]
audioobject音频输出配置(音色、格式)
predictionobject用于加速生成的预测输出
metadataobject用于追踪的键值对
storeboolean存储以便后续检索

特定提供商选项

{
  "anthropic_options": {
    "thinking": {
      "type": "enabled",
      "budget_tokens": 10000
    },
    "prompt_caching": true
  },
  "google_options": {
    "safety_settings": [...],
    "google_search": true,
    "code_execution": true
  }
}

Anthropic Messages 参数

核心参数

参数类型描述
modelstring模型标识符
messagesarray对话消息
max_tokensinteger最大输出(最高 128000)
systemstring/array系统提示词
streamboolean启用流式传输

工具调用

{
  "tools": [
    {
      "name": "get_weather",
      "description": "Get weather",
      "input_schema": {
        "type": "object",
        "properties": {
          "location": { "type": "string" }
        }
      }
    }
  ],
  "tool_choice": {
    "type": "auto",
    "disable_parallel_tool_use": false
  }
}

思维链扩展 (Extended Thinking)

{
  "model": "claude-opus-4-5",
  "thinking": {
    "type": "enabled",
    "budget_tokens": 10000
  }
}

Responses API 参数

核心参数

参数类型描述
modelstring模型标识符
inputstring/array输入内容
instructionsstring系统指令
max_output_tokensinteger最大输出 token 数
previous_response_idstring继续对话

高级参数

参数类型描述
truncation_strategystring"auto""disabled"
includearray["reasoning.encrypted_content"]
reasoning_effortstring适用于推理模型
service_tierstring优先级层级

工具格式

支持 OpenAI 和 Anthropic 两种工具格式:
// OpenAI 格式
{ "type": "function", "name": "fn", "parameters": {...} }

// Anthropic 格式 (Cursor 兼容)
{ "name": "fn", "input_schema": {...} }

Gemini API 参数

核心参数

参数类型描述
contentsarray对话内容
systemInstructionobject系统提示词
generationConfigobject生成配置

工具

{
  "tools": [{
    "functionDeclarations": [{
      "name": "search",
      "description": "Search the web",
      "parameters": {...}
    }],
    "codeExecution": {},
    "googleSearch": {}
  }],
  "toolConfig": {
    "functionCallingConfig": {
      "mode": "AUTO"
    }
  }
}

安全设置

{
  "safetySettings": [
    {
      "category": "HARM_CATEGORY_HARASSMENT",
      "threshold": "BLOCK_MEDIUM_AND_ABOVE"
    }
  ]
}

附加参数

参数类型描述
cachedContentstring缓存内容引用
responseMimeTypestring"text/plain""application/json"
responseSchemaobject用于结构化输出的 JSON schema

流式传输

所有端点均支持服务器发送事件 (SSE) 流式传输:
# Chat Completions
curl https://api.lemondata.cc/v1/chat/completions \
  -H "Authorization: Bearer sk-xxx" \
  -d '{"model": "gpt-4o", "messages": [...], "stream": true}'

# 带用量追踪
-d '{"...", "stream_options": {"include_usage": true}}'

错误处理

LemonData 返回兼容 OpenAI 的错误响应:
{
  "error": {
    "message": "Invalid API key",
    "type": "invalid_api_key",
    "code": "invalid_api_key"
  }
}
详见 错误处理指南

最佳实践

所有 schema 均使用 .passthrough() —— 未知参数将被转发至上游提供商。
启用 stream_options.include_usage 以在流式响应中获取准确的 token 计数。
请匹配您 SDK 预期的格式。LemonData 同时接受 OpenAI 和 Anthropic 格式。