Merge pull request #1 from TZZack/feature-xt-zzz

feat: xt定制-根据不同模型分类有不同请求地址
pull/627/head
Zack 2023-04-04 16:51:16 +08:00 zatwierdzone przez GitHub
commit cb16f88c08
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
2 zmienionych plików z 29 dodań i 8 usunięć

Wyświetl plik

@ -1,6 +1,6 @@
{
"name": "chatgpt",
"version": "5.2.2",
"name": "@tzzack/chatgpt",
"version": "1.0.0",
"description": "Node.js client for the official ChatGPT API.",
"author": "Travis Fischer <travis@transitivebullsh.it>",
"repository": "transitive-bullshit/chatgpt-api",

Wyświetl plik

@ -181,7 +181,8 @@ export class ChatGPTAPI {
const responseP = new Promise<types.ChatMessage>(
async (resolve, reject) => {
const url = `${this._apiBaseUrl}/chat/completions`
const model = completionParams.model
let url = `${this._apiBaseUrl}/chat/completions`
const headers = {
'Content-Type': 'application/json',
Authorization: `Bearer ${this._apiKey}`
@ -193,6 +194,20 @@ export class ChatGPTAPI {
messages,
stream
}
const isGpt = [
'gpt-4',
'gpt-4-0314',
'gpt-4-32k',
'gpt-4-32k-0314',
'gpt-3.5-turbo',
'gpt-3.5-turbo-0301'
].includes(model)
if (!isGpt) {
url = `${this._apiBaseUrl}/completions`
// @ts-ignore
body.prompt = messages[messages.length - 1].content
delete body.messages
}
// Support multiple organizations
// See https://platform.openai.com/docs/api-reference/authentication
@ -227,12 +242,18 @@ export class ChatGPTAPI {
}
if (response.choices?.length) {
const delta = response.choices[0].delta
result.delta = delta.content
if (delta?.content) result.text += delta.content
if (isGpt) {
const delta = response.choices[0].delta
result.delta = delta.content
if (delta?.content) result.text += delta.content
if (delta.role) {
result.role = delta.role
if (delta.role) {
result.role = delta.role
}
} else {
// @ts-ignore
const text = response.choices[0].text
result.text += text
}
result.detail = response