Просмотр исходного кода

feat: gpt4 max token set to 8k (#67)

Joel 1 год назад
Родитель
Сommit
ce492d13f1

+ 12 - 1
web/app/components/app/configuration/config-model/index.tsx

@@ -11,6 +11,7 @@ import type { CompletionParams } from '@/models/debug'
 import { Cog8ToothIcon, InformationCircleIcon, ChevronDownIcon } from '@heroicons/react/24/outline'
 import { AppType } from '@/types/app'
 import { TONE_LIST } from '@/config'
+import Toast from '@/app/components/base/toast'
 
 export type IConifgModelProps = {
   mode: string
@@ -93,7 +94,7 @@ const ConifgModel: FC<IConifgModelProps> = ({
       key: 'max_tokens',
       tip: t('common.model.params.maxTokenTip'),
       step: 100,
-      max: 4000,
+      max: modelId === 'gpt-4' ? 8000 : 4000,
     },
   ]
 
@@ -114,6 +115,16 @@ const ConifgModel: FC<IConifgModelProps> = ({
         onShowUseGPT4Confirm()
         return
       }
+      if(id !== 'gpt-4' && completionParams.max_tokens > 4000) {
+        Toast.notify({
+          type: 'warning',
+          message: t('common.model.params.setToCurrentModelMaxTokenTip')
+        })
+        onCompletionParamsChange({
+          ...completionParams,
+          max_tokens: 4000
+        })
+      }
       setModelId(id)
     }
   }

+ 1 - 0
web/i18n/lang/common.en.ts

@@ -50,6 +50,7 @@ const translation = {
       maxToken: 'Max token',
       maxTokenTip:
         'Max tokens generated is 2,048 or 4,000, depending on the model. Prompt and completion share this limit. One token is roughly 1 English character.',
+      setToCurrentModelMaxTokenTip: 'Max token is updated to the maximum token of the current model 4,000.',
     },
     tone: {
       Creative: 'Creative',

+ 1 - 0
web/i18n/lang/common.zh.ts

@@ -50,6 +50,7 @@ const translation = {
       maxToken: '最大 Token',
       maxTokenTip:
         '生成的最大令牌数为 2,048 或 4,000,取决于模型。提示和完成共享令牌数限制。一个令牌约等于 1 个英文或 4 个中文字符。',
+      setToCurrentModelMaxTokenTip: '最大令牌数更新为当前模型最大的令牌数 4,000。',
     },
     tone: {
       Creative: '创意',