v2.24.0
What's Changed
Added
- Deepgram speech-to-text provider — selectable via
AIFactory.create_speech_to_text("deepgram", "nova-3"), complementing the existing Deepgram TTS. Posts to/v1/listen, auth viaDEEPGRAM_API_KEY, normalizes toTranscriptionResponsewithtext+segments(Deepgram extras under each segment'smetadata;Nonewhen no timing returned). (#202)
Fixed
- OpenAI STT
gpt-4o-transcribecompatibility — no longer hardcodesresponse_format="verbose_json"; sendsverbose_jsonfor the Whisper family andjsonfor thegpt-4o-transcribe/gpt-4o-mini-transcribefamily, which previously failed. Segments/duration stayNonewhen those models omit them. (#204) mypy --strictre-exports — package-level__all__is now a static literal, so downstream packages withmypy --strictcanfrom esperanto import AIFactorywithout "does not explicitly export attribute" errors. Runtime behavior unchanged. (#190)
Full Changelog: v2.23.0...v2.24.0