feat: add ASR provider support for voice co-creation

This commit is contained in:
2026-04-24 17:58:49 +08:00
parent 7e450aa5fc
commit 3805c18622
22 changed files with 471 additions and 126 deletions

View File

@@ -109,6 +109,14 @@
>
绘本
</button>
<button
type="button"
class="rounded-lg border px-3 py-1.5 text-sm transition-colors"
:class="analyticsCapability === 'asr' ? 'border-indigo-600 bg-indigo-600 text-white' : 'border-gray-200 bg-white text-gray-600 hover:border-gray-400'"
@click="analyticsCapability = 'asr'"
>
语音识别
</button>
</div>
</div>
@@ -316,7 +324,7 @@
<!-- Tabs -->
<div class="flex space-x-1 bg-gray-100 p-1 rounded-xl w-fit">
<button
v-for="tab in ['text', 'image', 'tts', 'storybook']"
v-for="tab in ['text', 'image', 'tts', 'storybook', 'asr']"
:key="tab"
@click="activeTab = tab"
class="px-6 py-2 rounded-lg text-sm font-medium transition-all duration-200"
@@ -593,7 +601,7 @@ const analytics = ref<ProviderAnalyticsResponse | null>(null)
const analyticsLoading = ref(false)
const analyticsError = ref('')
const analyticsWindow = ref<'7' | '30' | 'all'>('30')
const analyticsCapability = ref<'all' | 'text' | 'image' | 'tts' | 'storybook'>('all')
const analyticsCapability = ref<'all' | 'text' | 'image' | 'tts' | 'storybook' | 'asr'>('all')
const editing = ref(false)
const form = ref<Partial<Provider> & { api_key?: string; config_json: Record<string, any> }>({
type: 'text',
@@ -638,6 +646,8 @@ function formatCapability(value: string) {
return '语音'
case 'storybook':
return '绘本'
case 'asr':
return '语音识别'
default:
return value
}