kopia lustrzana https://github.com/transitive-bullshit/chatgpt-api
feat: support multiple system message
rodzic
431e6f1989
commit
21dded5698
|
@ -19,7 +19,7 @@ export class ChatGPTAPI {
|
||||||
protected _apiOrg?: string
|
protected _apiOrg?: string
|
||||||
protected _debug: boolean
|
protected _debug: boolean
|
||||||
|
|
||||||
protected _systemMessage: string
|
protected _systemMessage: string | string[]
|
||||||
protected _completionParams: Omit<
|
protected _completionParams: Omit<
|
||||||
types.openai.CreateChatCompletionRequest,
|
types.openai.CreateChatCompletionRequest,
|
||||||
'messages' | 'n'
|
'messages' | 'n'
|
||||||
|
@ -368,13 +368,22 @@ export class ChatGPTAPI {
|
||||||
const maxNumTokens = this._maxModelTokens - this._maxResponseTokens
|
const maxNumTokens = this._maxModelTokens - this._maxResponseTokens
|
||||||
let messages: types.openai.ChatCompletionRequestMessage[] = []
|
let messages: types.openai.ChatCompletionRequestMessage[] = []
|
||||||
|
|
||||||
if (systemMessage) {
|
if (typeof systemMessage === 'string') {
|
||||||
messages.push({
|
messages.push({
|
||||||
role: 'system',
|
role: 'system',
|
||||||
content: systemMessage
|
content: systemMessage
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Array.isArray(systemMessage)) {
|
||||||
|
messages = messages.concat(
|
||||||
|
systemMessage.map((content) => ({
|
||||||
|
role: 'system',
|
||||||
|
content
|
||||||
|
}))
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
const systemMessageOffset = messages.length
|
const systemMessageOffset = messages.length
|
||||||
let nextMessages = text
|
let nextMessages = text
|
||||||
? messages.concat([
|
? messages.concat([
|
||||||
|
|
|
@ -19,7 +19,7 @@ export type ChatGPTAPIOptions = {
|
||||||
Omit<openai.CreateChatCompletionRequest, 'messages' | 'n' | 'stream'>
|
Omit<openai.CreateChatCompletionRequest, 'messages' | 'n' | 'stream'>
|
||||||
>
|
>
|
||||||
|
|
||||||
systemMessage?: string
|
systemMessage?: string | string[]
|
||||||
|
|
||||||
/** @defaultValue `4096` **/
|
/** @defaultValue `4096` **/
|
||||||
maxModelTokens?: number
|
maxModelTokens?: number
|
||||||
|
@ -41,7 +41,7 @@ export type SendMessageOptions = {
|
||||||
conversationId?: string
|
conversationId?: string
|
||||||
messageId?: string
|
messageId?: string
|
||||||
stream?: boolean
|
stream?: boolean
|
||||||
systemMessage?: string
|
systemMessage?: string | string[]
|
||||||
timeoutMs?: number
|
timeoutMs?: number
|
||||||
onProgress?: (partialResponse: ChatMessage) => void
|
onProgress?: (partialResponse: ChatMessage) => void
|
||||||
abortSignal?: AbortSignal
|
abortSignal?: AbortSignal
|
||||||
|
|
Ładowanie…
Reference in New Issue