Skip to content

Commit 9fe06db

Browse files
roomote[bot]roomotedaniel-lxs
authored
fix: update DeepSeek models context window to 128k (#7269)
* fix: update DeepSeek models context window to 128k - Updated deepseek-chat and deepseek-reasoner models from 64k to 128k context window - Updated corresponding test expectations - Aligns with DeepSeek API documentation at https://api-docs.deepseek.com/quick_start/pricing/ Fixes #7268 * feat: update deepseek-reasoner maxTokens to 64K based on official documentation * fix: use default maxTokens values instead of maximum for DeepSeek models - deepseek-chat: 4096 (4K default) instead of 8192 (8K max) - deepseek-reasoner: 32768 (32K default) instead of 65536 (64K max) - Updated tests to match new default values - Updated description to clarify default vs max output tokens * fix: use maximum output tokens for both DeepSeek models - deepseek-chat: 8192 (8K max) - deepseek-reasoner: 65536 (64K max) - Updated tests to match maximum values - Updated description to reflect 64K max output --------- Co-authored-by: Roo Code <[email protected]> Co-authored-by: daniel-lxs <[email protected]>
1 parent 44fd643 commit 9fe06db

File tree

2 files changed

+21
-7
lines changed

2 files changed

+21
-7
lines changed

packages/types/src/providers/deepseek.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export const deepSeekDefaultModelId: DeepSeekModelId = "deepseek-chat"
77

88
export const deepSeekModels = {
99
"deepseek-chat": {
10-
maxTokens: 8192,
11-
contextWindow: 64_000,
10+
maxTokens: 8192, // 8K max output
11+
contextWindow: 128_000,
1212
supportsImages: false,
1313
supportsPromptCache: true,
1414
inputPrice: 0.27, // $0.27 per million tokens (cache miss)
@@ -18,15 +18,15 @@ export const deepSeekModels = {
1818
description: `DeepSeek-V3 achieves a significant breakthrough in inference speed over previous models. It tops the leaderboard among open-source models and rivals the most advanced closed-source models globally.`,
1919
},
2020
"deepseek-reasoner": {
21-
maxTokens: 8192,
22-
contextWindow: 64_000,
21+
maxTokens: 65536, // 64K max output for reasoning mode
22+
contextWindow: 128_000,
2323
supportsImages: false,
2424
supportsPromptCache: true,
2525
inputPrice: 0.55, // $0.55 per million tokens (cache miss)
2626
outputPrice: 2.19, // $2.19 per million tokens
2727
cacheWritesPrice: 0.55, // $0.55 per million tokens (cache miss)
2828
cacheReadsPrice: 0.14, // $0.14 per million tokens (cache hit)
29-
description: `DeepSeek-R1 achieves performance comparable to OpenAI-o1 across math, code, and reasoning tasks. Supports Chain of Thought reasoning with up to 32K tokens.`,
29+
description: `DeepSeek-R1 achieves performance comparable to OpenAI-o1 across math, code, and reasoning tasks. Supports Chain of Thought reasoning with up to 64K output tokens.`,
3030
},
3131
} as const satisfies Record<string, ModelInfo>
3232

src/api/providers/__tests__/deepseek.spec.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,12 +154,26 @@ describe("DeepSeekHandler", () => {
154154
const model = handler.getModel()
155155
expect(model.id).toBe(mockOptions.apiModelId)
156156
expect(model.info).toBeDefined()
157-
expect(model.info.maxTokens).toBe(8192)
158-
expect(model.info.contextWindow).toBe(64_000)
157+
expect(model.info.maxTokens).toBe(8192) // deepseek-chat has 8K max
158+
expect(model.info.contextWindow).toBe(128_000)
159159
expect(model.info.supportsImages).toBe(false)
160160
expect(model.info.supportsPromptCache).toBe(true) // Should be true now
161161
})
162162

163+
it("should return correct model info for deepseek-reasoner", () => {
164+
const handlerWithReasoner = new DeepSeekHandler({
165+
...mockOptions,
166+
apiModelId: "deepseek-reasoner",
167+
})
168+
const model = handlerWithReasoner.getModel()
169+
expect(model.id).toBe("deepseek-reasoner")
170+
expect(model.info).toBeDefined()
171+
expect(model.info.maxTokens).toBe(65536) // deepseek-reasoner has 64K max
172+
expect(model.info.contextWindow).toBe(128_000)
173+
expect(model.info.supportsImages).toBe(false)
174+
expect(model.info.supportsPromptCache).toBe(true)
175+
})
176+
163177
it("should return provided model ID with default model info if model does not exist", () => {
164178
const handlerWithInvalidModel = new DeepSeekHandler({
165179
...mockOptions,

0 commit comments

Comments
 (0)