feat(Grok): add isGrokModel function and update systemMessage handling for Grok models (#4823)
This commit is contained in:
parent
f0f44d5768
commit
5fbff8c1fe
@ -2220,6 +2220,13 @@ export function isSupportedReasoningEffortModel(model?: Model): boolean {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function isGrokModel(model?: Model): boolean {
|
||||||
|
if (!model) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return model.id.includes('grok')
|
||||||
|
}
|
||||||
|
|
||||||
export function isGrokReasoningModel(model?: Model): boolean {
|
export function isGrokReasoningModel(model?: Model): boolean {
|
||||||
if (!model) {
|
if (!model) {
|
||||||
return false
|
return false
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { DEFAULT_MAX_TOKENS } from '@renderer/config/constant'
|
import { DEFAULT_MAX_TOKENS } from '@renderer/config/constant'
|
||||||
import {
|
import {
|
||||||
getOpenAIWebSearchParams,
|
getOpenAIWebSearchParams,
|
||||||
|
isGrokModel,
|
||||||
isGrokReasoningModel,
|
isGrokReasoningModel,
|
||||||
isHunyuanSearchModel,
|
isHunyuanSearchModel,
|
||||||
isOpenAIoSeries,
|
isOpenAIoSeries,
|
||||||
@ -382,9 +383,13 @@ export default class OpenAIProvider extends BaseProvider {
|
|||||||
const { signal } = abortController
|
const { signal } = abortController
|
||||||
await this.checkIsCopilot()
|
await this.checkIsCopilot()
|
||||||
|
|
||||||
const reqMessages: ChatCompletionMessageParam[] = [systemMessage, ...userMessages].filter(
|
// Grok 模型要求每条消息都不能为空,所以当是 Grok 模型且 systemMessage 内容为空时不发送 systemMessage
|
||||||
Boolean
|
let reqMessages: ChatCompletionMessageParam[]
|
||||||
) as ChatCompletionMessageParam[]
|
if (isGrokModel(model) && !systemMessage.content) {
|
||||||
|
reqMessages = [...userMessages]
|
||||||
|
} else {
|
||||||
|
reqMessages = [systemMessage, ...userMessages].filter(Boolean) as ChatCompletionMessageParam[]
|
||||||
|
}
|
||||||
|
|
||||||
const toolResponses: MCPToolResponse[] = []
|
const toolResponses: MCPToolResponse[] = []
|
||||||
let firstChunk = true
|
let firstChunk = true
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user