Skip to main content
@ai_kit/core inclut un support de transcription audio agnostique du modèle, compatible avec n’importe quel endpoint OpenAI-compatible (Scaleway Whisper large v3, OpenAI whisper-1, etc.).

Quatre primitives publiques

createTranscriptionModel

Compatible avec tout endpoint /audio/transcriptions OpenAI-compatible (response_format=verbose_json).

transcribe

audio accepte un chemin de fichier, une URL http(s), ou un Buffer / Uint8Array. L’inputType est auto-détecté si omis.

Valeur retournée

createTranscriptionStreamingModel — streaming (natif)

Pour les enregistrements longs, vous pouvez streamer la transcription au fur et à mesure de sa production plutôt que d’attendre le fichier entier. Cette primitive dialogue directement avec l’endpoint OpenAI-compatible /audio/transcriptions avec stream=true et parse les server-sent events nativement — elle n’utilise pas experimental_transcribe de l’AI SDK.
La sortie commence à streamer dès que le provider a traité le premier segment de 30 secondes — au bout de quelques secondes, et non après le fichier entier.

Forme des chunks

Les événements delta portent le texte incrémental ; l’unique événement done de fermeture porte le texte complet accumulé (égal à la concaténation de tous les deltas). Passez un AbortSignal via abortSignal pour annuler en cours de stream.
Le streaming utilise le format JSON par défaut — verbose_json (et donc les timestamps par segment) n’est pas disponible en streaming. Utilisez transcribe / createTranscriptionModel si vous avez besoin des segments.

createTranscriptionTool — attacher à un Agent

Le schéma du tool exposé au LLM : audio (chemin / URL / base64), inputType, language.

Formats audio supportés

flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm (identique à OpenAI Whisper).