mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-29 09:43:55 +08:00
update: mobile 智能体管理多语言调整
This commit is contained in:
@@ -85,7 +85,7 @@ export default {
|
|||||||
'agent.chatHistory': 'Chat-Verlauf',
|
'agent.chatHistory': 'Chat-Verlauf',
|
||||||
'agent.voiceprintManagement': 'Stimmabdruckverwaltung',
|
'agent.voiceprintManagement': 'Stimmabdruckverwaltung',
|
||||||
'agent.editTitle': 'Agent bearbeiten',
|
'agent.editTitle': 'Agent bearbeiten',
|
||||||
'agent.toolsTitle': 'Funktionen bearbeiten',
|
'agent.toolsTitle': 'Bearbeiten',
|
||||||
'agent.voiceActivityDetection': 'Sprachaktivitätserkennung',
|
'agent.voiceActivityDetection': 'Sprachaktivitätserkennung',
|
||||||
'agent.speechRecognition': 'Spracherkennung',
|
'agent.speechRecognition': 'Spracherkennung',
|
||||||
'agent.largeLanguageModel': 'Großes Sprachmodell',
|
'agent.largeLanguageModel': 'Großes Sprachmodell',
|
||||||
@@ -116,7 +116,7 @@ export default {
|
|||||||
'agent.tts': 'Text-zu-Sprache',
|
'agent.tts': 'Text-zu-Sprache',
|
||||||
'agent.voiceprint': 'Agenten-Stimme',
|
'agent.voiceprint': 'Agenten-Stimme',
|
||||||
'agent.plugins': 'Plugins',
|
'agent.plugins': 'Plugins',
|
||||||
'agent.editFunctions': 'Funktionen bearbeiten',
|
'agent.editFunctions': 'Bearbeiten',
|
||||||
'agent.historyMemory': 'Verlaufsspeicher',
|
'agent.historyMemory': 'Verlaufsspeicher',
|
||||||
'agent.memoryContent': 'Speicherinhalt',
|
'agent.memoryContent': 'Speicherinhalt',
|
||||||
'agent.saving': 'Wird gespeichert...',
|
'agent.saving': 'Wird gespeichert...',
|
||||||
@@ -371,7 +371,7 @@ export default {
|
|||||||
'agent.tools.mcpAccessPoint': 'MCP-Zugangspunkt',
|
'agent.tools.mcpAccessPoint': 'MCP-Zugangspunkt',
|
||||||
'agent.tools.copy': 'Kopieren',
|
'agent.tools.copy': 'Kopieren',
|
||||||
'agent.tools.noTools': 'Keine Werkzeuge verfügbar',
|
'agent.tools.noTools': 'Keine Werkzeuge verfügbar',
|
||||||
'agent.tools.parameterConfig': 'Parameterkonfiguration',
|
'agent.tools.parameterConfig': 'Konfig',
|
||||||
'agent.tools.noParamsNeeded': 'Keine Parameter benötigt',
|
'agent.tools.noParamsNeeded': 'Keine Parameter benötigt',
|
||||||
'agent.tools.pleaseInput': 'Bitte eingeben',
|
'agent.tools.pleaseInput': 'Bitte eingeben',
|
||||||
'agent.tools.inputOneItemPerLine': 'Ein Element pro Zeile eingeben',
|
'agent.tools.inputOneItemPerLine': 'Ein Element pro Zeile eingeben',
|
||||||
|
|||||||
@@ -371,7 +371,7 @@ export default {
|
|||||||
'agent.tools.mcpAccessPoint': 'MCP Access Point',
|
'agent.tools.mcpAccessPoint': 'MCP Access Point',
|
||||||
'agent.tools.copy': 'Copy',
|
'agent.tools.copy': 'Copy',
|
||||||
'agent.tools.noTools': 'No tools available',
|
'agent.tools.noTools': 'No tools available',
|
||||||
'agent.tools.parameterConfig': 'Parameter Configuration',
|
'agent.tools.parameterConfig': 'Param Config',
|
||||||
'agent.tools.noParamsNeeded': 'No parameters needed',
|
'agent.tools.noParamsNeeded': 'No parameters needed',
|
||||||
'agent.tools.pleaseInput': 'Please input',
|
'agent.tools.pleaseInput': 'Please input',
|
||||||
'agent.tools.inputOneItemPerLine': 'Input one item per line',
|
'agent.tools.inputOneItemPerLine': 'Input one item per line',
|
||||||
|
|||||||
@@ -371,7 +371,7 @@ export default {
|
|||||||
'agent.tools.mcpAccessPoint': 'Ponto de Acesso MCP',
|
'agent.tools.mcpAccessPoint': 'Ponto de Acesso MCP',
|
||||||
'agent.tools.copy': 'Copiar',
|
'agent.tools.copy': 'Copiar',
|
||||||
'agent.tools.noTools': 'Nenhuma ferramenta disponível',
|
'agent.tools.noTools': 'Nenhuma ferramenta disponível',
|
||||||
'agent.tools.parameterConfig': 'Configuração de Parâmetros',
|
'agent.tools.parameterConfig': 'Configuração',
|
||||||
'agent.tools.noParamsNeeded': 'Nenhum parâmetro necessário',
|
'agent.tools.noParamsNeeded': 'Nenhum parâmetro necessário',
|
||||||
'agent.tools.pleaseInput': 'Por favor, insira',
|
'agent.tools.pleaseInput': 'Por favor, insira',
|
||||||
'agent.tools.inputOneItemPerLine': 'Insira um item por linha',
|
'agent.tools.inputOneItemPerLine': 'Insira um item por linha',
|
||||||
|
|||||||
@@ -371,7 +371,7 @@ export default {
|
|||||||
'agent.tools.mcpAccessPoint': 'Điểm truy cập MCP',
|
'agent.tools.mcpAccessPoint': 'Điểm truy cập MCP',
|
||||||
'agent.tools.copy': 'Sao chép',
|
'agent.tools.copy': 'Sao chép',
|
||||||
'agent.tools.noTools': 'Không có công cụ nào',
|
'agent.tools.noTools': 'Không có công cụ nào',
|
||||||
'agent.tools.parameterConfig': 'Cấu hình tham số',
|
'agent.tools.parameterConfig': 'Cấu hình',
|
||||||
'agent.tools.noParamsNeeded': 'Không cần tham số',
|
'agent.tools.noParamsNeeded': 'Không cần tham số',
|
||||||
'agent.tools.pleaseInput': 'Vui lòng nhập',
|
'agent.tools.pleaseInput': 'Vui lòng nhập',
|
||||||
'agent.tools.inputOneItemPerLine': 'Nhập một mục mỗi dòng',
|
'agent.tools.inputOneItemPerLine': 'Nhập một mục mỗi dòng',
|
||||||
|
|||||||
@@ -1006,6 +1006,7 @@ onMounted(async () => {
|
|||||||
<wd-action-sheet
|
<wd-action-sheet
|
||||||
v-model="pickerShow.tts"
|
v-model="pickerShow.tts"
|
||||||
:actions="modelOptions.TTS && modelOptions.TTS.map(item => ({ name: item.modelName, value: item.id }))"
|
:actions="modelOptions.TTS && modelOptions.TTS.map(item => ({ name: item.modelName, value: item.id }))"
|
||||||
|
class="custom-sheet-tts"
|
||||||
@close="onPickerCancel('tts')"
|
@close="onPickerCancel('tts')"
|
||||||
@select="({ item }) => onPickerConfirm('tts', item.value, item.name)"
|
@select="({ item }) => onPickerConfirm('tts', item.value, item.name)"
|
||||||
/>
|
/>
|
||||||
@@ -1059,4 +1060,13 @@ onMounted(async () => {
|
|||||||
background: transparent !important;
|
background: transparent !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
::v-deep .custom-sheet-tts {
|
||||||
|
.wd-action-sheet {
|
||||||
|
padding: 8px 0 !important;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.wd-action-sheet__actions {
|
||||||
|
padding: 0 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -311,7 +311,7 @@ onMounted(async () => {
|
|||||||
v-if="notSelectedList.length === 0"
|
v-if="notSelectedList.length === 0"
|
||||||
class="h-[400rpx] flex items-center justify-center"
|
class="h-[400rpx] flex items-center justify-center"
|
||||||
>
|
>
|
||||||
<wd-status-tip image="content" tip="{{ t('agent.tools.noMorePlugins') }}" />
|
<wd-status-tip image="content" :tip="t('agent.tools.noMorePlugins')" />
|
||||||
</view>
|
</view>
|
||||||
<view v-else class="p-[20rpx] space-y-[20rpx]">
|
<view v-else class="p-[20rpx] space-y-[20rpx]">
|
||||||
<view
|
<view
|
||||||
@@ -347,7 +347,7 @@ onMounted(async () => {
|
|||||||
v-if="selectedList.length === 0"
|
v-if="selectedList.length === 0"
|
||||||
class="h-[400rpx] flex items-center justify-center"
|
class="h-[400rpx] flex items-center justify-center"
|
||||||
>
|
>
|
||||||
<wd-status-tip image="content" tip="{{ t('agent.tools.pleaseSelectPlugin') }}" />
|
<wd-status-tip image="content" :tip="t('agent.tools.pleaseSelectPlugin')" />
|
||||||
</view>
|
</view>
|
||||||
<view v-else class="p-[20rpx] space-y-[20rpx]">
|
<view v-else class="p-[20rpx] space-y-[20rpx]">
|
||||||
<view
|
<view
|
||||||
@@ -445,7 +445,7 @@ onMounted(async () => {
|
|||||||
<!-- 参数编辑弹窗 -->
|
<!-- 参数编辑弹窗 -->
|
||||||
<wd-action-sheet
|
<wd-action-sheet
|
||||||
v-model="showParamDialog"
|
v-model="showParamDialog"
|
||||||
:title="`${t('agent.tools.paramConfiguration')} - ${currentFunction?.name || ''}`"
|
:title="`${t('agent.tools.parameterConfig')} - ${currentFunction?.name || ''}`"
|
||||||
custom-header-class="h-[75vh]"
|
custom-header-class="h-[75vh]"
|
||||||
@close="closeParamEdit"
|
@close="closeParamEdit"
|
||||||
>
|
>
|
||||||
@@ -586,3 +586,9 @@ onMounted(async () => {
|
|||||||
</wd-action-sheet>
|
</wd-action-sheet>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
::v-deep .wd-action-sheet__header {
|
||||||
|
padding-right: 30rpx;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -460,8 +460,11 @@ defineExpose({
|
|||||||
<view class="p-[32rpx]">
|
<view class="p-[32rpx]">
|
||||||
<!-- 声纹向量选择 -->
|
<!-- 声纹向量选择 -->
|
||||||
<view class="mb-[32rpx]">
|
<view class="mb-[32rpx]">
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-red font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.voiceVector') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.voiceVector') }}
|
||||||
</text>
|
</text>
|
||||||
<view
|
<view
|
||||||
class="flex cursor-pointer items-center justify-between border-[1rpx] border-[#eeeeee] rounded-[12rpx] bg-[#f5f7fb] p-[20rpx] transition-all duration-300 active:bg-[#eef3ff]"
|
class="flex cursor-pointer items-center justify-between border-[1rpx] border-[#eeeeee] rounded-[12rpx] bg-[#f5f7fb] p-[20rpx] transition-all duration-300 active:bg-[#eef3ff]"
|
||||||
@@ -479,8 +482,11 @@ defineExpose({
|
|||||||
|
|
||||||
<!-- 姓名 -->
|
<!-- 姓名 -->
|
||||||
<view class="mb-[32rpx]">
|
<view class="mb-[32rpx]">
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-red font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.name') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.name') }}
|
||||||
</text>
|
</text>
|
||||||
<input
|
<input
|
||||||
v-model="addForm.sourceName"
|
v-model="addForm.sourceName"
|
||||||
@@ -491,8 +497,11 @@ defineExpose({
|
|||||||
|
|
||||||
<!-- 描述 -->
|
<!-- 描述 -->
|
||||||
<view>
|
<view>
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-red font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.description') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.description') }}
|
||||||
</text>
|
</text>
|
||||||
<textarea
|
<textarea
|
||||||
v-model="addForm.introduce" :maxlength="100" :placeholder="t('voiceprint.pleaseInputDescription')"
|
v-model="addForm.introduce" :maxlength="100" :placeholder="t('voiceprint.pleaseInputDescription')"
|
||||||
@@ -521,7 +530,7 @@ defineExpose({
|
|||||||
safe-area-inset-bottom
|
safe-area-inset-bottom
|
||||||
>
|
>
|
||||||
<view>
|
<view>
|
||||||
<view class="w-full flex items-center justify-between border-b-[2rpx] border-[#eeeeee] p-[32rpx_32rpx_24rpx]">
|
<view class="box-border w-full flex items-center justify-between border-b-[2rpx] border-[#eeeeee] p-[32rpx_32rpx_24rpx]">
|
||||||
<text class="w-full text-center text-[32rpx] text-[#232338] font-semibold">
|
<text class="w-full text-center text-[32rpx] text-[#232338] font-semibold">
|
||||||
{{ t('voiceprint.editSpeaker') }}
|
{{ t('voiceprint.editSpeaker') }}
|
||||||
</text>
|
</text>
|
||||||
@@ -531,7 +540,10 @@ defineExpose({
|
|||||||
<!-- 声纹向量选择 -->
|
<!-- 声纹向量选择 -->
|
||||||
<view class="mb-[32rpx]">
|
<view class="mb-[32rpx]">
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.voiceVector') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.voiceVector') }}
|
||||||
</text>
|
</text>
|
||||||
<view
|
<view
|
||||||
class="flex cursor-pointer items-center justify-between border-[1rpx] border-[#eeeeee] rounded-[12rpx] bg-[#f5f7fb] p-[20rpx] transition-all duration-300 active:bg-[#eef3ff]"
|
class="flex cursor-pointer items-center justify-between border-[1rpx] border-[#eeeeee] rounded-[12rpx] bg-[#f5f7fb] p-[20rpx] transition-all duration-300 active:bg-[#eef3ff]"
|
||||||
@@ -550,7 +562,10 @@ defineExpose({
|
|||||||
<!-- 姓名 -->
|
<!-- 姓名 -->
|
||||||
<view class="mb-[32rpx]">
|
<view class="mb-[32rpx]">
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.name') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.name') }}
|
||||||
</text>
|
</text>
|
||||||
<input
|
<input
|
||||||
v-model="editForm.sourceName"
|
v-model="editForm.sourceName"
|
||||||
@@ -562,7 +577,10 @@ defineExpose({
|
|||||||
<!-- 描述 -->
|
<!-- 描述 -->
|
||||||
<view>
|
<view>
|
||||||
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
<text class="mb-[16rpx] block text-[28rpx] text-[#232338] font-medium">
|
||||||
* {{ t('voiceprint.description') }}
|
<text class="text-red">
|
||||||
|
*
|
||||||
|
</text>
|
||||||
|
{{ t('voiceprint.description') }}
|
||||||
</text>
|
</text>
|
||||||
<textarea
|
<textarea
|
||||||
v-model="editForm.introduce" :maxlength="100" :placeholder="t('voiceprint.pleaseInputDescription')"
|
v-model="editForm.introduce" :maxlength="100" :placeholder="t('voiceprint.pleaseInputDescription')"
|
||||||
|
|||||||
Reference in New Issue
Block a user