@@ -4,15 +4,16 @@ import OpenAI from "openai"
44import * as os from "os"
55import * as path from "path"
66
7- import type { ModelInfo } from "@roo-code/types"
7+ import { type ModelInfo , type QwenCodeModelId , qwenCodeModels , qwenCodeDefaultModelId } from "@roo-code/types"
8+
89import type { ApiHandlerOptions } from "../../shared/api"
910
1011import { convertToOpenAiMessages } from "../transform/openai-format"
1112import { ApiStream } from "../transform/stream"
13+
1214import { BaseProvider } from "./base-provider"
1315import type { SingleCompletionHandler } from "../index"
1416
15- // --- Constants for Qwen OAuth2 ---
1617const QWEN_OAUTH_BASE_URL = "https://chat.qwen.ai"
1718const QWEN_OAUTH_TOKEN_ENDPOINT = `${ QWEN_OAUTH_BASE_URL } /api/v1/oauth2/token`
1819const QWEN_OAUTH_CLIENT_ID = "f0304373b74a44d2b584a3fb70ca9e56"
@@ -266,7 +267,6 @@ export class QwenCodeHandler extends BaseProvider implements SingleCompletionHan
266267 }
267268 }
268269
269- // Handle reasoning content (o1-style)
270270 if ( "reasoning_content" in delta && delta . reasoning_content ) {
271271 yield {
272272 type : "reasoning" ,
@@ -285,16 +285,9 @@ export class QwenCodeHandler extends BaseProvider implements SingleCompletionHan
285285 }
286286
287287 override getModel ( ) : { id : string ; info : ModelInfo } {
288- const modelId = this . options . apiModelId
289- const { qwenCodeModels, qwenCodeDefaultModelId } = require ( "@roo-code/types" )
290- if ( modelId && modelId in qwenCodeModels ) {
291- const id = modelId
292- return { id, info : qwenCodeModels [ id ] }
293- }
294- return {
295- id : qwenCodeDefaultModelId ,
296- info : qwenCodeModels [ qwenCodeDefaultModelId ] ,
297- }
288+ const id = this . options . apiModelId ?? qwenCodeDefaultModelId
289+ const info = qwenCodeModels [ id as keyof typeof qwenCodeModels ] || qwenCodeModels [ qwenCodeDefaultModelId ]
290+ return { id, info }
298291 }
299292
300293 async completePrompt ( prompt : string ) : Promise < string > {
0 commit comments