Skip to content

Voice Pipeline

🚧Coming Soon — This feature is planned but not yet implemented.

नीचे सूचीबद्ध STT और TTS providers केवल interface stubs हैं। Provider

interfaces परिभाषित हैं लेकिन implementations अभी तक वास्तविक speech सेवाओं से जुड़े नहीं हैं। :::

Triggerfish macOS, iOS, और Android पर wake word detection, push-to-talk, और text-to-speech प्रतिक्रिया के साथ speech interaction का समर्थन करता है।

आर्किटेक्चर

Voice pipeline: Wake Word Detection → STT → Agent Processing → TTS → Voice Output

Audio text के समान agent processing pipeline के माध्यम से प्रवाहित होता है। Voice input transcribed होता है, session में एक classified message के रूप में प्रवेश करता है, policy hooks से गुज़रता है, और प्रतिक्रिया वापस speech में synthesized होती है।

Voice Modes

ModeविवरणPlatform
Voice Wakeकॉन्फ़िगर करने योग्य wake word के लिए हमेशा-on सुननाmacOS, iOS, Android
Push-to-TalkButton या keyboard shortcut द्वारा मैन्युअल सक्रियणmacOS (menu bar), iOS, Android
Talk Modeनिरंतर वार्तालापिक speechसभी platforms

STT Providers

Speech-to-text आपकी आवाज़ को agent द्वारा संसाधित करने के लिए text में बदलता है।

ProviderTypeनोट्स
WhisperLocalडिफ़ॉल्ट। डिवाइस पर चलता है, कोई cloud dependency नहीं। गोपनीयता के लिए सर्वोत्तम।
DeepgramCloudकम-latency streaming transcription।
OpenAI Whisper APICloudउच्च accuracy, API key आवश्यक।

TTS Providers

Text-to-speech agent प्रतिक्रियाओं को बोले गए audio में बदलता है।

ProviderTypeनोट्स
ElevenLabsCloudडिफ़ॉल्ट। Voice cloning विकल्पों के साथ प्राकृतिक-ध्वनि वाली आवाज़ें।
OpenAI TTSCloudउच्च गुणवत्ता, कई voice विकल्प।
System VoicesLocalOS-native voices। कोई cloud dependency नहीं।

Provider Registry

Triggerfish STT और TTS दोनों के लिए provider registry pattern उपयोग करता है। आप संबंधित interface implement करके कोई भी संगत provider plug कर सकते हैं:

typescript
interface SttProvider {
  transcribe(audio: Uint8Array, options?: SttOptions): Promise<string>;
}

interface TtsProvider {
  synthesize(text: string, options?: TtsOptions): Promise<Uint8Array>;
}

कॉन्फ़िगरेशन

triggerfish.yaml में voice सेटिंग्स कॉन्फ़िगर करें:

yaml
voice:
  stt:
    provider: whisper # whisper | deepgram | openai
    model: base # Whisper model आकार (tiny, base, small, medium, large)
  tts:
    provider: elevenlabs # elevenlabs | openai | system
    voice_id: "your-voice" # Provider-विशिष्ट voice पहचानकर्ता
  wake_word: "triggerfish" # कस्टम wake word
  push_to_talk:
    shortcut: "Ctrl+Space" # Keyboard shortcut (macOS)

सुरक्षा एकीकरण

Voice डेटा text के समान classification नियमों का पालन करता है:

  • Voice input text input के समान वर्गीकृत है। Transcribed speech session में प्रवेश करती है और typed message की तरह taint बढ़ा सकती है।
  • TTS output synthesis से पहले PRE_OUTPUT hook से गुज़रता है। यदि policy engine प्रतिक्रिया अवरुद्ध करता है, यह कभी बोली नहीं जाती।
  • Voice sessions text sessions की तरह taint रखते हैं। Mid-session voice पर स्विच करने से taint reset नहीं होता।
  • Wake word detection स्थानीय रूप से चलता है। Wake word matching के लिए कोई audio cloud पर नहीं भेजा जाता।
  • Audio recordings (यदि बनाए रखी जाएँ) कैप्चर के समय session के taint स्तर पर वर्गीकृत होती हैं।

Voice pipeline iOS और Android पर Buoy companion apps के साथ एकीकृत

होगी, मोबाइल उपकरणों से push-to-talk और voice wake सक्षम करती है। Buoy अभी उपलब्ध नहीं है। :::