Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ This section uses DeepSeek as an example, adding the provider and two models.
- You can create multiple configs for the same provider with different names, e.g., `DeepSeek-Person`, `DeepSeek-Team`.

3. Choose the API format: `API Format`.
- DeepSeek uses the `OpenAI Chat Completion` format, so select that.
- DeepSeek uses the `OpenAI Responses` format by default, so select that.
- To see all supported formats, refer to the [API Format Support Table](#api-format-support-table).

4. Set the base URL: `API Base URL`.
Expand Down
2 changes: 1 addition & 1 deletion README_zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ Zed 编辑器使用自研的 Zeta 系列模型,这里推荐两种方式添加
- 同一个供应商可以添加多个不同名称的配置,比如 `DeepSeek-Person`、`DeepSeek-Team`。

3. 填写接口格式:`API 格式`。
- DeepSeek 的接口是 `OpenAI Chat Completion` 格式,所以选则该格式
- DeepSeek 默认使用 `OpenAI Responses` 格式,所以选择该格式
- 要了解支持的所有格式可查看 [API 格式支持表](#api-格式支持表)。

4. 填写基础 URL:`API 基础 URL`。
Expand Down
2 changes: 1 addition & 1 deletion src/well-known/providers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -455,7 +455,7 @@ export const WELL_KNOWN_PROVIDERS: WellKnownProviderConfig[] = [
{
name: 'DeepSeek',
category: 'General',
type: 'openai-chat-completion',
type: 'openai-responses',
baseUrl: 'https://api.deepseek.com',
completion: { baseUrl: '../beta' },
balanceProvider: { method: 'deepseek' },
Expand Down
9 changes: 9 additions & 0 deletions test/unit/plan4-provider-catalog.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,15 @@ describe('Plan 4 well-known catalog', () => {
});
});

it('uses Responses by default for DeepSeek', () => {
expect(
WELL_KNOWN_PROVIDERS.find((provider) => provider.name === 'DeepSeek'),
).toMatchObject({
type: 'openai-responses',
baseUrl: 'https://api.deepseek.com',
});
});

it('declares Zeta primary IDs, aliases, and only completion templates', () => {
expect(getModel('zeta')).toMatchObject({
completion: { templates: ['zeta1'] },
Expand Down