mirror of
https://github.com/DayuanJiang/next-ai-draw-io.git
synced 2026-01-09 09:42:30 +08:00
fix: use OpenAI provider for Doubao multimodal models (#519)
DeepSeek provider was not properly formatting image content for Doubao's API. Now uses OpenAI provider for Doubao models (multimodal support), while keeping DeepSeek provider for DeepSeek/Kimi models on the platform.
This commit is contained in:
@@ -251,13 +251,26 @@ export async function POST(req: Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
case "doubao": {
|
case "doubao": {
|
||||||
// ByteDance Doubao uses DeepSeek-compatible API
|
// ByteDance Doubao: use DeepSeek for DeepSeek/Kimi models, OpenAI for others
|
||||||
const doubao = createDeepSeek({
|
const doubaoBaseUrl =
|
||||||
apiKey,
|
baseUrl || "https://ark.cn-beijing.volces.com/api/v3"
|
||||||
baseURL:
|
const lowerModelId = modelId.toLowerCase()
|
||||||
baseUrl || "https://ark.cn-beijing.volces.com/api/v3",
|
if (
|
||||||
})
|
lowerModelId.includes("deepseek") ||
|
||||||
model = doubao(modelId)
|
lowerModelId.includes("kimi")
|
||||||
|
) {
|
||||||
|
const doubao = createDeepSeek({
|
||||||
|
apiKey,
|
||||||
|
baseURL: doubaoBaseUrl,
|
||||||
|
})
|
||||||
|
model = doubao(modelId)
|
||||||
|
} else {
|
||||||
|
const doubao = createOpenAI({
|
||||||
|
apiKey,
|
||||||
|
baseURL: doubaoBaseUrl,
|
||||||
|
})
|
||||||
|
model = doubao.chat(modelId)
|
||||||
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -871,11 +871,24 @@ export function getAIModel(overrides?: ClientOverrides): ModelConfig {
|
|||||||
overrides?.baseUrl ||
|
overrides?.baseUrl ||
|
||||||
process.env.DOUBAO_BASE_URL ||
|
process.env.DOUBAO_BASE_URL ||
|
||||||
"https://ark.cn-beijing.volces.com/api/v3"
|
"https://ark.cn-beijing.volces.com/api/v3"
|
||||||
const doubaoProvider = createDeepSeek({
|
const lowerModelId = modelId.toLowerCase()
|
||||||
apiKey,
|
// Use DeepSeek provider for DeepSeek/Kimi models, OpenAI for others (multimodal support)
|
||||||
baseURL,
|
if (
|
||||||
})
|
lowerModelId.includes("deepseek") ||
|
||||||
model = doubaoProvider(modelId)
|
lowerModelId.includes("kimi")
|
||||||
|
) {
|
||||||
|
const doubaoProvider = createDeepSeek({
|
||||||
|
apiKey,
|
||||||
|
baseURL,
|
||||||
|
})
|
||||||
|
model = doubaoProvider(modelId)
|
||||||
|
} else {
|
||||||
|
const doubaoProvider = createOpenAI({
|
||||||
|
apiKey,
|
||||||
|
baseURL,
|
||||||
|
})
|
||||||
|
model = doubaoProvider.chat(modelId)
|
||||||
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user