OCOpenCowork
Get startedInstallChannelsAgentsCapabilitiesSkillsModelsPlatformsOpsReferenceHelp

AI 提供商体系

OpenCowork 的 provider 抽象、协议支持和内置预设。

AI 提供商体系 / API Providers

OpenCowork 的 provider 层位于 src/renderer/src/lib/api/,它把不同供应商的 API 差异收敛到统一的调用模型里。

运行时适配器 / Runtime adapters

应用启动时会注册 5 个运行时 adapter:

  • anthropic
  • openai-chat
  • openai-responses
  • openai-images
  • gemini

这 5 个 adapter 负责真正的请求、流式输出和图像生成事件。

内置预设 / Built-in presets

src/renderer/src/stores/providers/ 下维护了 24 个内置 provider preset,覆盖:

  • Anthropic / Claude
  • OpenAI / Azure OpenAI
  • Google / Gemini
  • Ollama
  • DeepSeek
  • Qwen
  • Moonshot
  • MiniMax
  • Baidu / ERNIE
  • SiliconFlow
  • Gitee AI
  • Codex OAuth
  • Copilot OAuth
  • Xiaomi
  • BigModel
  • LongCat
  • Routin AI
  • OpenRouter

其中很多 preset 本质上是 OpenAI-compatible,只是默认 Base URL、认证方式或模型集合不同。

统一模型 / Unified model config

模型配置通常包含这些信息:

字段作用
id / name模型标识和显示名
categorychatimage
vision是否支持图片输入
thinking是否支持思考流
reasoning是否支持推理模型
baseUrl自定义 API 地址
apiKey认证凭据
input/output price费用估算

流式事件 / Stream events

provider 层会把 API 响应转成统一的流事件,例如:

  • text_delta
  • thinking_delta
  • thinking_encrypted
  • tool_call_start
  • tool_call_delta
  • tool_call_end
  • image_generated
  • image_error
  • message_end
  • request_debug

这些事件再被 Agent Loop 消费,最终驱动 UI。

图像生成 / Image generation

图像模型只有在 category = image 时才会被图像插件识别。换句话说:

  • provider 负责提供模型
  • app plugin 决定是否把这个模型暴露成 ImageGenerate

OpenAI-compatible 规则 / Compatibility rule

只要一个服务兼容 OpenAI Chat Completions API,就可以通过 openai-chat 协议接入。必要时只改:

  • Base URL
  • API Key
  • 模型名

这也是为什么很多第三方模型都能直接进入 OpenCowork。

你在代码里会看到什么 / What to look for in code

  • src/renderer/src/lib/api/index.ts:运行时 adapter 注册入口
  • src/renderer/src/stores/providers/:内置 provider preset
  • src/renderer/src/lib/api/types.ts:统一消息、流事件、usage 类型
  • src/renderer/src/lib/api/provider.ts:具体 provider 创建与发送逻辑

On this page