Audio
Points d'accès de synthèse vocale et de transcription (Whisper) pour générer de l'audio à partir de texte et convertir des fichiers audio en texte.
Tchavi prend en charge deux points d'accès audio : la synthèse vocale (TTS) pour générer de l'audio à partir de texte, et la transcription (Whisper) pour convertir des fichiers audio en texte.
Synthèse vocale
/v1/audio/speechConvertit du texte en audio parlé. Renvoie des octets audio bruts. Facturation par tranche de 1K caractères en entrée, au prorata du nombre de caractères, arrondie une seule fois au millième de crédit supérieur.
| Modèle | Crédits / 1K car. | Entrée max | Notes |
|---|---|---|---|
tts-1 | 32 | 4 096 car. | Le plus rapide |
tts-1-hd | 64 | 4 096 car. | Qualité audio supérieure |
gpt-4o-mini-tts | 44 | 2 000 car. | Pilotable : accepte instructions pour diriger le ton, le rythme, l'accent |
| Paramètre | Type | Requis | Description |
|---|---|---|---|
model | string | Oui | tts-1, tts-1-hd ou gpt-4o-mini-tts |
input | string | Oui | Le texte à convertir en parole (max 4 096 caractères ; 2 000 pour gpt-4o-mini-tts) |
voice | string | Oui | alloy, ash, ballad, coral, echo, fable, nova, onyx, sage, shimmer. gpt-4o-mini-tts accepte aussi cedar, marin et verse |
instructions | string | Non | gpt-4o-mini-tts uniquement — comment parler, par ex. « Chaleureux, lent, comme une histoire du soir ». Les autres modèles renvoient un 400 |
response_format | string | Non | mp3, opus, aac, flac, wav, pcm. Par défaut : mp3 |
speed | number | Non | Vitesse de lecture 0.25–4.0. Par défaut : 1.0 |
import Tchavi from '@tchavi/sdk';
import { writeFileSync } from 'fs';
const client = new Tchavi({ apiKey: 'YOUR_API_KEY' });
const response = await client.audio.speech.create({
model: 'tts-1',
input: 'Tchavi est la meilleure passerelle d\'API IA en Afrique.',
voice: 'nova',
response_format: 'mp3',
});
const buffer = Buffer.from(await response.arrayBuffer());
writeFileSync('speech.mp3', buffer);Transcription (Whisper)
/v1/audio/transcriptionsTranscrit des fichiers audio en texte. Envoyez en multipart/form-data. Facturation : 13 crédits par minute d'audio, arrondie à la minute supérieure ; la durée facturée est renvoyée dans tchavi.duration_minutes.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
model | string | Oui | « whisper-1 » |
file | file | Oui | Fichier audio (mp3, wav, m4a, webm, ogg…). Max 25 Mo |
language | string | Non | Code ISO-639-1 (par ex. « fr », « en »). Détecté automatiquement si omis |
response_format | string | Non | json, text, srt, vtt, verbose_json. Par défaut : json |
prompt | string | Non | Texte facultatif pour guider le style du modèle ou poursuivre un segment précédent. Doit correspondre à la langue de l'audio. |
temperature | number | Non | Température d'échantillonnage 0–1. Des valeurs plus élevées produisent des transcriptions plus variées. Par défaut : 0 |
import Tchavi from '@tchavi/sdk';
import { createReadStream } from 'fs';
const client = new Tchavi({ apiKey: 'YOUR_API_KEY' });
const result = await client.audio.transcriptions.create({
model: 'whisper-1',
file: createReadStream('audio.mp3'),
language: 'fr',
});
console.log(result.text);
console.log('Durée :', result.tchavi.duration_minutes, 'min');
console.log('Crédits utilisés :', result.tchavi.credits_used);