fix: 支援不接受 system role 的模型(DeepSeek-R1)
This commit is contained in:
+8
-1
@@ -16,9 +16,16 @@ export async function chat(systemPrompt, userContent) {
|
||||
};
|
||||
if (provider === 'claude') headers['anthropic-version'] = '2023-06-01';
|
||||
|
||||
// 部分模型(如 DeepSeek-R1)不支援 system role,改合併到 user message
|
||||
const NO_SYSTEM_ROLE_MODELS = ['deepseek-ai/deepseek-r1', 'deepseek-r1'];
|
||||
const isNoSystemRole = NO_SYSTEM_ROLE_MODELS.some(m => model.toLowerCase().includes(m.toLowerCase()));
|
||||
const messages = isNoSystemRole
|
||||
? [{ role: 'user', content: `${systemPrompt}\n\n${userContent}` }]
|
||||
: [{ role: 'system', content: systemPrompt }, { role: 'user', content: userContent }];
|
||||
|
||||
const resp = await axios.post(
|
||||
`${baseURL.replace(/\/$/, '')}/chat/completions`,
|
||||
{ model, messages: [{ role: 'system', content: systemPrompt }, { role: 'user', content: userContent }], temperature: 0.2 },
|
||||
{ model, messages, temperature: 0.2 },
|
||||
{ headers, timeout: 120000, httpsAgent }
|
||||
);
|
||||
return resp.data.choices[0].message.content;
|
||||
|
||||
Reference in New Issue
Block a user