|
@@ -408,8 +408,12 @@
|
|
|
v-model:param="state.form.voicePackage"
|
|
|
link="select"
|
|
|
:options="[
|
|
|
- { value: 1, label: '语音包1' },
|
|
|
- { value: 2, label: '语音包2' },
|
|
|
+ { value: 'Echo', label: 'Echo' },
|
|
|
+ { value: 'Alloy', label: 'Alloy' },
|
|
|
+ { value: 'Fable', label: 'Fable' },
|
|
|
+ { value: 'Onyx', label: 'Onyx' },
|
|
|
+ { value: 'Nova', label: 'Nova' },
|
|
|
+ { value: 'Shimmer', label: 'Shimmer' },
|
|
|
]"
|
|
|
:clearable="false"
|
|
|
>
|
|
@@ -418,7 +422,7 @@
|
|
|
{{ row.label }}
|
|
|
<div
|
|
|
class="__hover ml-auto text-[var(--czr-main-color)]"
|
|
|
- @click.stop=""
|
|
|
+ @click.stop="onTryVoice(row.value)"
|
|
|
>
|
|
|
试听
|
|
|
</div>
|
|
@@ -428,6 +432,7 @@
|
|
|
</div>
|
|
|
<div
|
|
|
class="__hover ml-4 text-sm text-[var(--czr-main-color)]"
|
|
|
+ @click="onTryVoice(state.form.voicePackage)"
|
|
|
>
|
|
|
试听
|
|
|
</div>
|
|
@@ -469,7 +474,7 @@
|
|
|
link="select"
|
|
|
:options="DictionaryStore.models.list"
|
|
|
placeholder="点击选择模型"
|
|
|
- @click="onAdviseModel"
|
|
|
+ @click.capture.stop="onAdviseModel"
|
|
|
default-error-msg="请选择问题建议模型"
|
|
|
:clearable="false"
|
|
|
/>
|
|
@@ -700,6 +705,7 @@ import {
|
|
|
appModelConfigSave,
|
|
|
} from '@/api/modules/app/make'
|
|
|
import { appDetail } from '@/api/modules/app'
|
|
|
+import { appTextToAudio } from '@/api/modules/app/chat'
|
|
|
|
|
|
const DictionaryStore = useDictionaryStore()
|
|
|
const AppStore = useAppStore()
|
|
@@ -878,12 +884,6 @@ const initDetail = () => {
|
|
|
.finally(() => {
|
|
|
state.loading = false
|
|
|
})
|
|
|
- // pluginDetail(state.ID)
|
|
|
- // .then(({ data }: any) => {
|
|
|
- // state.detail = data
|
|
|
- // })
|
|
|
- // .catch(() => {})
|
|
|
- // .finally(() => {})
|
|
|
initDrag()
|
|
|
} else {
|
|
|
router.push({ name: 'd446bfb3-4605-477f-a0f4-b7a0a1aa78fe' })
|
|
@@ -974,12 +974,12 @@ const getModel = (val) => {
|
|
|
switch (state.modelSelect.transfer.type) {
|
|
|
case 'model':
|
|
|
{
|
|
|
- state.form.modelId = val.value
|
|
|
+ state.form.modelId = val.id
|
|
|
}
|
|
|
break
|
|
|
case 'advise':
|
|
|
{
|
|
|
- state.form.advise.modelId = val
|
|
|
+ state.form.advise.modelId = val.id
|
|
|
}
|
|
|
break
|
|
|
}
|
|
@@ -1085,6 +1085,20 @@ const onAddWorkflow = () => {
|
|
|
const getWorkflow = (val) => {
|
|
|
state.form.workflowId = val.id
|
|
|
}
|
|
|
+const onTryVoice = (type) => {
|
|
|
+ appTextToAudio({
|
|
|
+ voice: type,
|
|
|
+ text: `您好,欢迎使用${(import.meta as any).env.VITE_TITLE}。`,
|
|
|
+ }).then((bolb: any) => {
|
|
|
+ const url = URL.createObjectURL(new Blob([bolb], { type: 'audio/mp3' }))
|
|
|
+ const audio = new Audio(url)
|
|
|
+ audio.play()
|
|
|
+ // 播放结束后释放内存
|
|
|
+ audio.onended = function () {
|
|
|
+ URL.revokeObjectURL(url)
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
onMounted(() => {
|
|
|
initDictionary()
|
|
|
initDetail()
|