Feat/15534 support replacing the bot in chat input placeholder with the bots name (#20473)

This commit is contained in:
crazywoola 2025-05-30 10:51:19 +08:00 committed by GitHub
parent 91eeb2ab76
commit 8e2d342de6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
17 changed files with 28 additions and 15 deletions

View File

@ -99,7 +99,15 @@ const DebugWithMultipleModel = () => {
}, [twoLine, threeLine, fourLine])
const setShowAppConfigureFeaturesModal = useAppStore(s => s.setShowAppConfigureFeaturesModal)
const inputsForm = modelConfig.configs.prompt_variables.filter(item => item.type !== 'api').map(item => ({ ...item, label: item.name, variable: item.key })) as InputForm[]
const inputsForm = modelConfig.configs.prompt_variables
.filter(item => item.type !== 'api')
.map(item => ({
...item,
label: item.name,
variable: item.key,
hide: item.hide ?? false,
required: item.required ?? false,
})) as InputForm[]
return (
<div className='flex h-full flex-col'>
@ -133,6 +141,7 @@ const DebugWithMultipleModel = () => {
{isChatMode && (
<div className='shrink-0 px-6 pb-0'>
<ChatInputArea
botName='Bot'
showFeatureBar
showFileUpload={false}
onFeatureBarClick={setShowAppConfigureFeaturesModal}

View File

@ -29,6 +29,7 @@ import type { FileUpload } from '@/app/components/base/features/types'
import { TransferMethod } from '@/types/app'
type ChatInputAreaProps = {
botName?: string
showFeatureBar?: boolean
showFileUpload?: boolean
featureBarDisabled?: boolean
@ -43,6 +44,7 @@ type ChatInputAreaProps = {
disabled?: boolean
}
const ChatInputArea = ({
botName,
showFeatureBar,
showFileUpload,
featureBarDisabled,
@ -192,7 +194,7 @@ const ChatInputArea = ({
className={cn(
'body-lg-regular w-full resize-none bg-transparent p-1 leading-6 text-text-tertiary outline-none',
)}
placeholder={t('common.chat.inputPlaceholder') || ''}
placeholder={t('common.chat.inputPlaceholder', { botName }) || ''}
autoFocus
minRows={1}
onResize={handleTextareaResize}

View File

@ -303,6 +303,7 @@ const Chat: FC<ChatProps> = ({
{
!noChatInput && (
<ChatInputArea
botName={appData?.site.title || ''}
disabled={inputDisabled}
showFeatureBar={showFeatureBar}
showFileUpload={showFileUpload}

View File

@ -550,7 +550,7 @@ const translation = {
vectorHash: 'Vektorhash:',
hitScore: 'Abrufwertung:',
},
inputPlaceholder: 'Sprechen Sie mit dem Bot',
inputPlaceholder: 'Sprechen Sie mit dem {{botName}}',
thought: 'Gedanke',
thinking: 'Denken...',
resend: 'Erneut senden',

View File

@ -569,7 +569,7 @@ const translation = {
vectorHash: 'Vector hash:',
hitScore: 'Retrieval Score:',
},
inputPlaceholder: 'Talk to Bot',
inputPlaceholder: 'Talk to {{botName}}',
thinking: 'Thinking...',
thought: 'Thought',
resend: 'Resend',

View File

@ -554,7 +554,7 @@ const translation = {
vectorHash: 'Hash de vector:',
hitScore: 'Puntuación de recuperación:',
},
inputPlaceholder: 'Hablar con el bot',
inputPlaceholder: 'Hablar con el {{botName}}',
thinking: 'Pensamiento...',
thought: 'Pensamiento',
resend: 'Reenviar',

View File

@ -550,7 +550,7 @@ const translation = {
vectorHash: 'Hachage vectoriel:',
hitScore: 'Score de Récupération:',
},
inputPlaceholder: 'Parler au bot',
inputPlaceholder: 'Parler au {{botName}}',
thinking: 'Pensée...',
thought: 'Pensée',
resend: 'Renvoyer',

View File

@ -581,7 +581,7 @@ const translation = {
vectorHash: 'Hash del vettore:',
hitScore: 'Punteggio di recupero:',
},
inputPlaceholder: 'Parla con il bot',
inputPlaceholder: 'Parla con il {{botName}}',
thinking: 'Pensante...',
thought: 'Pensiero',
resend: 'Reinvia',

View File

@ -570,7 +570,7 @@ const translation = {
vectorHash: 'ベクトルハッシュ:',
hitScore: '検索スコア:',
},
inputPlaceholder: 'ボットと話す',
inputPlaceholder: '{{botName}} と話す',
thought: '思考',
thinking: '考え中...',
resend: '再送信してください',

View File

@ -565,7 +565,7 @@ const translation = {
vectorHash: 'Wektor hash:',
hitScore: 'Wynik trafień:',
},
inputPlaceholder: 'Porozmawiaj z botem',
inputPlaceholder: 'Porozmawiaj z {{botName}}',
thought: 'Myśl',
thinking: 'Myślenie...',
resend: 'Prześlij ponownie',

View File

@ -550,7 +550,7 @@ const translation = {
vectorHash: 'Hash de vetor:',
hitScore: 'Pontuação de recuperação:',
},
inputPlaceholder: 'Fale com o bot',
inputPlaceholder: 'Fale com o {{botName}}',
thinking: 'Pensante...',
thought: 'Pensamento',
resend: 'Reenviar',

View File

@ -550,7 +550,7 @@ const translation = {
vectorHash: 'Hash vector:',
hitScore: 'Scor de recuperare:',
},
inputPlaceholder: 'Vorbește cu Bot',
inputPlaceholder: 'Vorbește cu {{botName}}',
thinking: 'Gândire...',
thought: 'Gând',
resend: 'Reexpediați',

View File

@ -554,7 +554,7 @@ const translation = {
vectorHash: 'Vektör Hash:',
hitScore: 'Geri Alım Skoru:',
},
inputPlaceholder: 'Bot ile konuş',
inputPlaceholder: '{{botName}} ile konuş',
thought: 'Düşünce',
thinking: 'Düşünü...',
resend: 'Yeniden gönder',

View File

@ -550,7 +550,7 @@ const translation = {
vectorHash: 'Vector hash:',
hitScore: 'Điểm truy xuất:',
},
inputPlaceholder: 'Nói chuyện với Bot',
inputPlaceholder: 'Nói chuyện với {{botName}}',
thought: 'Tư duy',
thinking: 'Suy nghĩ...',
resend: 'Gửi lại',

View File

@ -569,7 +569,7 @@ const translation = {
vectorHash: '向量哈希:',
hitScore: '召回得分:',
},
inputPlaceholder: '和机器人聊天',
inputPlaceholder: '和 {{botName}} 聊天',
thinking: '深度思考中...',
thought: '已深度思考',
resend: '重新发送',

View File

@ -552,7 +552,7 @@ const translation = {
vectorHash: '向量雜湊:',
hitScore: '召回得分:',
},
inputPlaceholder: '與 Bot 對話',
inputPlaceholder: '與 {{botName}} 對話',
thinking: '思維。。。',
thought: '思想',
resend: '重新發送',

View File

@ -59,6 +59,7 @@ export type PromptVariable = {
config?: Record<string, any>
icon?: string
icon_background?: string
hide?: boolean // used in frontend to hide variable
}
export type CompletionParams = {