feat(transcribe): Azure Speech server-side key, remove translate option, add beam/VAD hints
- api/transcribe.php falls back to DBN_AZURE_SPEECH_KEY/REGION env vars so BYOK not required - JS hides Azure key input when DBN_AZURE_SPEECH_CONFIGURED is true - Remove Translate to English task option from Advanced settings - Add explanatory hint text for Beam size and VAD filter in all 4 languages Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+12
-2
@@ -56,8 +56,10 @@ const TRANSCRIBE_I18N = {
|
||||
beamSize: 'Beam size',
|
||||
beamFastest: '(fastest)',
|
||||
beamBest: '(best)',
|
||||
beamSizeHint: 'Controls search breadth — higher values improve accuracy but take longer. 5 is recommended for legal recordings.',
|
||||
vadFilter: 'VAD filter',
|
||||
vadFilterLabel: 'Remove silence',
|
||||
vadFilterHint: 'Voice Activity Detection — skips silent passages before transcribing. Speeds up processing and prevents the model hallucinating on silence.',
|
||||
run: 'Run',
|
||||
running: 'Transcribing…',
|
||||
runningOther: 'Running…',
|
||||
@@ -120,8 +122,10 @@ const TRANSCRIBE_I18N = {
|
||||
beamSize: 'Beam size',
|
||||
beamFastest: '(raskest)',
|
||||
beamBest: '(best)',
|
||||
beamSizeHint: 'Styrer søkebredde — høyere verdier gir bedre nøyaktighet men tar lengre tid. 5 anbefales for juridiske opptak.',
|
||||
vadFilter: 'VAD-filter',
|
||||
vadFilterLabel: 'Fjern stillhet',
|
||||
vadFilterHint: 'Taleaktivitetsdeteksjon — hopper over stille partier før transkripsjon. Raskere behandling og forhindrer hallusinasjon på stillhet.',
|
||||
run: 'Kjør',
|
||||
running: 'Transkriberer…',
|
||||
runningOther: 'Kjører…',
|
||||
@@ -184,8 +188,10 @@ const TRANSCRIBE_I18N = {
|
||||
beamSize: 'Розмір пучка',
|
||||
beamFastest: '(найшвидший)',
|
||||
beamBest: '(найкращий)',
|
||||
beamSizeHint: 'Ширина пошуку — більше значення підвищує точність, але займає більше часу. 5 рекомендовано для юридичних записів.',
|
||||
vadFilter: 'VAD-фільтр',
|
||||
vadFilterLabel: 'Видалити тишу',
|
||||
vadFilterHint: 'Виявлення мовної активності — пропускає тихі ділянки перед транскрипцією. Прискорює обробку та запобігає галюцинаціям на тиші.',
|
||||
run: 'Запустити',
|
||||
running: 'Транскрибування…',
|
||||
runningOther: 'Виконання…',
|
||||
@@ -248,8 +254,10 @@ const TRANSCRIBE_I18N = {
|
||||
beamSize: 'Rozmiar wiązki',
|
||||
beamFastest: '(najszybszy)',
|
||||
beamBest: '(najlepszy)',
|
||||
beamSizeHint: 'Kontroluje szerokość wyszukiwania — wyższe wartości poprawiają dokładność, ale wydłużają czas. 5 zalecane dla nagrań prawnych.',
|
||||
vadFilter: 'Filtr VAD',
|
||||
vadFilterLabel: 'Usuń ciszę',
|
||||
vadFilterHint: 'Wykrywanie aktywności głosowej — pomija ciche fragmenty przed transkrypcją. Przyspiesza przetwarzanie i zapobiega halucynacjom na ciszy.',
|
||||
run: 'Uruchom',
|
||||
running: 'Transkrybowanie…',
|
||||
runningOther: 'Uruchamianie…',
|
||||
@@ -901,7 +909,7 @@ async function runTranscribe() {
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (engine === 'azure') {
|
||||
if (engine === 'azure' && !window.DBN_AZURE_SPEECH_CONFIGURED) {
|
||||
const key = document.getElementById('azureKeyInput')?.value?.trim();
|
||||
if (!key) {
|
||||
els.status.textContent = currentUiT('missingAzureKey');
|
||||
@@ -1208,7 +1216,9 @@ function setupTranscribeControls() {
|
||||
radio.addEventListener('change', () => {
|
||||
const engine = currentTranscribeEngine();
|
||||
document.getElementById('openaiKeyControl')?.classList.toggle('is-hidden', engine !== 'openai');
|
||||
document.getElementById('azureKeyControl')?.classList.toggle('is-hidden', engine !== 'azure');
|
||||
// Hide azure key row if server has a pre-configured key
|
||||
const azureNeedsKey = engine === 'azure' && !window.DBN_AZURE_SPEECH_CONFIGURED;
|
||||
document.getElementById('azureKeyControl')?.classList.toggle('is-hidden', !azureNeedsKey);
|
||||
document.getElementById('modelControl')?.classList.toggle('is-hidden', engine === 'openai' || engine === 'azure');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user