chat-ui
0f62487f - Transcribe UI (#2006)

Commit
80 days ago
Transcribe UI (#2006) * Add voice transcription feature to chat Introduces voice recording and transcription in the chat window using Whisper models. Adds new components for voice recording and audio waveform visualization, updates feature flags and environment variables, and implements a server API endpoint for audio transcription. * Fix frequencyData reactivity in VoiceRecorder Replaces in-place mutation of frequencyData with assignment of a new Uint8Array to ensure Svelte reactivity in the voice visualization. * Improve AudioWaveform visualization and responsiveness Refactors AudioWaveform.svelte to use a timeline-based amplitude visualization with dynamic pill count based on container width, smoother animation, and responsive resizing. Updates VoiceRecorder.svelte to remove fixed pillCount and adjust maxHeight for better appearance. These changes provide a more accurate and visually appealing waveform display. * Improve audio waveform and voice recorder UI Reduced pill width and gap in AudioWaveform for a denser visualization, boosted amplitude for better visibility, and updated pill color for improved contrast. Adjusted padding in VoiceRecorder for a more compact layout. Fixed ChatWindow to trim transcribed text before appending to draft. * Update voice recorder UI and loading icons Improved styling for voice recording buttons and waveform container in ChatWindow and VoiceRecorder components. Replaced loading icon with EosIconsLoading for transcription state and adjusted class names for better visual consistency. * Add touch device support for voice recording send VoiceRecorder and ChatWindow now detect touch devices and adjust behavior: on touch devices, the confirm button sends the audio message immediately using a new onsend handler, with updated button styling and icon. This improves usability for mobile users by streamlining the voice message workflow. * Add TRANSCRIPTION_MODEL env var to dev and prod configs Introduces the TRANSCRIPTION_MODEL environment variable set to 'openai/whisper-large-v3-turbo' in both dev.yaml and prod.yaml to support transcription functionality. * Update VoiceRecorder.svelte * Add error notifications for transcription and recording Introduces user-facing error messages for transcription and recording failures by updating the $error store. This improves feedback to users when audio processing encounters issues.
Author
Parents
Loading