From b0fefd6dc5e17fe12f850000aa31fefdfb1a2c46 Mon Sep 17 00:00:00 2001 From: Martial BE Date: Thu, 21 Dec 2023 16:52:00 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix=20usage=20error=20&=20web=20?= =?UTF-8?q?channel=20edit=20label=20error?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- providers/claude/chat.go | 6 ++++-- providers/gemini/chat.go | 6 ++++-- providers/openai/image_generations.go | 2 +- providers/palm/chat.go | 6 ++++-- providers/providers.go | 2 ++ providers/tencent/chat.go | 6 ++++-- web/src/views/Channel/component/EditModal.js | 4 ++-- web/src/views/Channel/type/Config.js | 12 +++++++++++- 8 files changed, 32 insertions(+), 12 deletions(-) diff --git a/providers/claude/chat.go b/providers/claude/chat.go index cfff6bc0..aaf8b3f7 100644 --- a/providers/claude/chat.go +++ b/providers/claude/chat.go @@ -100,8 +100,10 @@ func (p *ClaudeProvider) ChatAction(request *types.ChatCompletionRequest, isMode return } - usage.PromptTokens = promptTokens - usage.CompletionTokens = common.CountTokenText(responseText, request.Model) + usage = &types.Usage{ + PromptTokens: promptTokens, + CompletionTokens: common.CountTokenText(responseText, request.Model), + } usage.TotalTokens = promptTokens + usage.CompletionTokens } else { diff --git a/providers/gemini/chat.go b/providers/gemini/chat.go index 9e2efa15..2f893e60 100644 --- a/providers/gemini/chat.go +++ b/providers/gemini/chat.go @@ -147,8 +147,10 @@ func (p *GeminiProvider) ChatAction(request *types.ChatCompletionRequest, isMode return } - usage.PromptTokens = promptTokens - usage.CompletionTokens = common.CountTokenText(responseText, request.Model) + usage = &types.Usage{ + PromptTokens: promptTokens, + CompletionTokens: common.CountTokenText(responseText, request.Model), + } usage.TotalTokens = promptTokens + usage.CompletionTokens } else { diff --git a/providers/openai/image_generations.go b/providers/openai/image_generations.go index ba5a450b..f0ba865b 100644 --- a/providers/openai/image_generations.go +++ b/providers/openai/image_generations.go @@ -19,7 +19,7 @@ func (c *OpenAIProviderImageResponseResponse) ResponseHandler(resp *http.Respons func (p *OpenAIProvider) ImageGenerationsAction(request *types.ImageRequest, isModelMapped bool, promptTokens int) (usage *types.Usage, errWithCode *types.OpenAIErrorWithStatusCode) { - if isWithinRange(request.Model, request.N) == false { + if !isWithinRange(request.Model, request.N) { return nil, common.StringErrorWrapper("n_not_within_range", "n_not_within_range", http.StatusBadRequest) } diff --git a/providers/palm/chat.go b/providers/palm/chat.go index b158e9b1..7ec6dd06 100644 --- a/providers/palm/chat.go +++ b/providers/palm/chat.go @@ -92,8 +92,10 @@ func (p *PalmProvider) ChatAction(request *types.ChatCompletionRequest, isModelM return } - usage.PromptTokens = promptTokens - usage.CompletionTokens = common.CountTokenText(responseText, request.Model) + usage = &types.Usage{ + PromptTokens: promptTokens, + CompletionTokens: common.CountTokenText(responseText, request.Model), + } usage.TotalTokens = promptTokens + usage.CompletionTokens } else { diff --git a/providers/providers.go b/providers/providers.go index e84cabeb..a143d843 100644 --- a/providers/providers.go +++ b/providers/providers.go @@ -13,6 +13,7 @@ import ( "one-api/providers/base" "one-api/providers/claude" "one-api/providers/closeai" + "one-api/providers/gemini" "one-api/providers/openai" "one-api/providers/openaisb" "one-api/providers/palm" @@ -49,6 +50,7 @@ func init() { providerFactories[common.ChannelTypeAIGC2D] = aigc2d.Aigc2dProviderFactory{} providerFactories[common.ChannelTypeAPI2GPT] = api2gpt.Api2gptProviderFactory{} providerFactories[common.ChannelTypeAzureSpeech] = azurespeech.AzureSpeechProviderFactory{} + providerFactories[common.ChannelTypeGemini] = gemini.GeminiProviderFactory{} } diff --git a/providers/tencent/chat.go b/providers/tencent/chat.go index 9d3288ab..10e77e6f 100644 --- a/providers/tencent/chat.go +++ b/providers/tencent/chat.go @@ -105,8 +105,10 @@ func (p *TencentProvider) ChatAction(request *types.ChatCompletionRequest, isMod return } - usage.PromptTokens = promptTokens - usage.CompletionTokens = common.CountTokenText(responseText, request.Model) + usage = &types.Usage{ + PromptTokens: promptTokens, + CompletionTokens: common.CountTokenText(responseText, request.Model), + } usage.TotalTokens = promptTokens + usage.CompletionTokens } else { diff --git a/web/src/views/Channel/component/EditModal.js b/web/src/views/Channel/component/EditModal.js index 06467ffc..c91c97cb 100644 --- a/web/src/views/Channel/component/EditModal.js +++ b/web/src/views/Channel/component/EditModal.js @@ -70,13 +70,13 @@ const EditModal = ({ open, channelId, onCancel, onOk }) => { const initChannel = (typeValue) => { if (typeConfig[typeValue]?.inputLabel) { - setInputLabel({ ...inputLabel, ...typeConfig[typeValue].inputLabel }); + setInputLabel({ ...defaultConfig.inputLabel, ...typeConfig[typeValue].inputLabel }); } else { setInputLabel(defaultConfig.inputLabel); } if (typeConfig[typeValue]?.prompt) { - setInputPrompt({ ...inputPrompt, ...typeConfig[typeValue].prompt }); + setInputPrompt({ ...defaultConfig.prompt, ...typeConfig[typeValue].prompt }); } else { setInputPrompt(defaultConfig.prompt); } diff --git a/web/src/views/Channel/type/Config.js b/web/src/views/Channel/type/Config.js index 576fbdd4..a813a96d 100644 --- a/web/src/views/Channel/type/Config.js +++ b/web/src/views/Channel/type/Config.js @@ -78,11 +78,15 @@ const typeConfig = { } }, 18: { + inputLabel: { + other: '版本号' + }, input: { models: ['SparkDesk'] }, prompt: { - key: '按照如下格式输入:APPID|APISecret|APIKey' + key: '按照如下格式输入:APPID|APISecret|APIKey', + other: '请输入版本号,例如:v3.1' } }, 19: { @@ -104,8 +108,14 @@ const typeConfig = { } }, 25: { + inputLabel: { + other: '版本号' + }, input: { models: ['gemini-pro'] + }, + prompt: { + other: '请输入版本号,例如:v1' } } };