Fish Audio: Transcribe 1
Transcribe 1 convertit de courts enregistrements audio en texte avec détection automatique de la langue et horodatage facultatif au niveau des mots. Utilisez la transcription pour des notes vocales, des extraits consultables par recherche ou la préparation de sous-titres, en gardant les segments horodatés séparés du texte intégral lisible.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
Transcribe 1 est le modèle général de transcription de Fish Audio pour les enregistrements courts. Il reçoit un fichier audio et renvoie les mots reconnus sous forme de texte, avec la durée de l’enregistrement, des segments horodatés facultatifs et des informations sur la langue lorsqu’elles sont connues. Ce modèle convient à une courte note vocale, une instruction orale, un extrait d’enregistrement ou un clip audio nécessitant une représentation textuelle lisible.
Un exemple de flux pour les notes vocales conserve l’enregistrement avec sa transcription intégrale et un identifiant du clip d’origine. Une étape applicative ultérieure peut rechercher dans ce texte, organiser la note ou élaborer un résumé tout en préservant la source parlée. Pour une commande, la transcription fournit les mots reconnus à l’application ; toute action relève d’une étape distincte d’interprétation et d’exécution. Pour un extrait d’entretien, enregistrez la position du clip dans l’audio complet afin qu’une citation puisse être vérifiée au bon endroit.
Le producteur accepte WAV, MP3, AAC, y compris M4A/MP4, FLAC et Ogg contenant Opus ou Vorbis. Pour ce modèle, les enregistrements de navigateur en WebM doivent être convertis en Ogg/Opus, MP3 ou WAV ; Pro documente une prise en charge native de conteneurs supplémentaires. Fournissez un fichier audio par requête. La capacité documentée du modèle de base atteint 50 MiB par requête, les fichiers MP3 et Opus devant rester inférieurs à 25 MiB. La taille du fichier et la durée de l’enregistrement sont deux considérations différentes : un fichier compressé peut respecter la limite d’envoi tout en demandant un traitement trop long.
Transcribe 1 est conçu pour les enregistrements courts. Le producteur recommande Pro pour un audio de plus de quelques minutes ; une longue requête au modèle de base peut échouer si elle dépasse la limite de temps de traitement. Lorsque vous préparez une source plus longue pour la transcrire en clips courts, conservez le décalage de début de chaque clip et confirmez que la transcription renvoyée couvre le clip entier avant de combiner les résultats. Ajoutez le décalage d’origine aux temps locaux des segments pour maintenir la navigation liée à l’enregistrement complet. Les recommandations du modèle de base ne doivent pas être interprétées comme la capacité distincte de 60 minutes de Pro.
La réponse du producteur comprend le texte, la durée et les segments. La durée est exprimée en secondes, et la transcription intégrale lisible doit rester la formulation principale du clip. L’horodatage est facultatif : ignore_timestamps vaut true par défaut dans l’API du producteur, tandis que false demande des segments au niveau des mots avec texte, temps de début et temps de fin en secondes. Demander l’alignement augmente le temps de traitement. Un tableau segments vide peut correspondre à un horodatage ignoré, à l’absence de parole ou à un alignement temporairement indisponible ; il ne doit donc pas être automatiquement interprété comme une transcription intégrale vide.
Les segments correspondent généralement à des mots, ou à un ou quelques caractères en chinois et en japonais. Leur texte omet la ponctuation et peut normaliser une valeur différemment de la transcription intégrale ; ce n’est pas une copie caractère par caractère de la réponse lisible. Un segment peut avoir le même temps de début et de fin. Utilisez les segments pour trouver une position dans l’enregistrement ou préparer un affichage synchronisé, et le texte intégral lorsque la formulation et la ponctuation importent. Conservez ces deux représentations distinctes dans le livrable obtenu.
La langue est détectée automatiquement, qu’un indice de langue facultatif soit fourni ou non. Le producteur documente des codes ISO 639-1 en minuscules pour ces indices et renvoie, lorsqu’ils sont connus, un code de langue pour la logique applicative et un nom de langue pour l’affichage. La réponse indique une seule langue plutôt que toutes les langues d’un enregistrement qui passe de l’une à l’autre. Conservez la formulation source et les métadonnées linguistiques disponibles avec le résultat, sans traiter la demande de transcription comme une opération de traduction.
Pour un flux de sous-titrage, regroupez les segments horodatés consécutifs en sous-titres lisibles plutôt que d’afficher un mot à la fois. Un livrable utile est un fichier SRT ou WebVTT lié au clip d’origine, dont les limites de sous-titres respectent les pauses et dont la quantité de texte à l’écran reste raisonnable. Vérifiez l’absence d’horodatages manquants et assurez-vous que la fin de chaque sous-titre suit son début. Le regroupement des sous-titres et le formatage du fichier sont des étapes applicatives construites à partir de l’alignement renvoyé ; leurs choix d’affichage doivent convenir au lecteur et au public.
Les commandes documentées de Transcribe 1 sont l’audio, un indice de langue et le choix de l’horodatage. Les marqueurs de locuteur, les tours de parole structurés, les commandes d’événements émotionnels et les indices de nombre de locuteurs de Pro sont des fonctions distinctes ; ils n’appartiennent pas au contrat de réponse documenté de ce modèle de base. Choisissez le livrable requis avant le traitement : du texte lisible simple pour une note, ou du texte accompagné d’un alignement pour la navigation en lecture et les sous-titres. Préserver l’identifiant du clip, la transcription et tout horodatage disponible rend ce résultat utile à l’étape applicative suivante.
Ailoot Ultra · Transcription audio POST /v1/audio/transcriptions fish-audio/transcribe-1
fish-audio/transcribe-1Premiers pas
Transcribe 1 convertit de courts enregistrements audio en texte avec détection automatique de la langue et horodatage facultatif au niveau des mots. Utilisez la transcription pour des notes vocales, des extraits consultables par recherche ou la préparation de sous-titres, en gardant les segments horodatés séparés du texte intégral lisible.
- Entrées acceptées
- Audio
- Résultats
- Texte
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Transcription audio POST /v1/audio/transcriptions
- Types d’entrée
audio- Types de sortie
text
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites fish-audio/transcribe-1 | Par défaut— |
Champinput_audio | Typeobject | ExigenceObligatoire | Valeurs et limites | Par défaut— |
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, input_audio |
Paramètrematerial_types | Contrataudio |
Paramètrematerial_conditions | ContratL’exemple lit votre fichier PCM WAV réel et non vide, encode l’intégralité de ses octets en base64 et définit input_audio.format sur wav pour l’envoi. |
Cycle de vie : synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id exact provenant d’un enregistrement média existant vous appartenant
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifs
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Non précisé Lorsque le mode rapide est sélectionné
- Mode Flex
- Non précisé Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs Ailoot
Prix par configuration
Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.
| Configuration | Barème tarifaire | Unité de facturation | Coût |
|---|---|---|---|
| ConfigurationTarifs de base par jeton | Barème tarifaireTarif de base | Unité de facturation— | Coût Entrée · Tokens en entrée — / 1K tokens Sortie · Tokens en sortie — / 1K tokens Entrée · Lecture du cache — / 1K tokens Entrée · Écriture dans le cache — / 1K tokens Entrée · Écriture dans le cache, 1 h — / 1K tokens |
| Configurationseconde d’audio en entrée | Barème tarifaire— | Unité de facturationpar seconde d’audio en entrée | Coût Entrée · seconde d’audio en entrée $0.0002 par seconde d’audio en entrée |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Transcription audio
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}"
export AILOOT_AUDIO_FILE
python3 - <<'PY_REQUEST'
import base64, io, json, os, wave
from pathlib import Path
audio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()
if not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):
raise SystemExit('Supply your actual PCM WAV audio file')
with wave.open(io.BytesIO(audio), 'rb') as recording:
if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:
raise SystemExit('Supply a nonempty PCM WAV recording')
request = {'model': 'fish-audio/transcribe-1', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}
Path('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete original response, headers and actual X-Client-Request-ID.
# Read existing owned records for recovery; do not resubmit an uncertain operation.
Recevoir et enregistrer les résultats
Ailoot Ultra · Transcription audio
Corps complet de la réponse d’origine, statut et en-têtes transmis. Ce gestionnaire n’ajoute aucune structure JSON universelle, aucun champ texte ni aucune enveloppe de tâche.
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Conserver tous les résultats terminés
Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.
Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.
Si la réponse d’origine doit être vérifiée
Conservez la valeur réelle de X-Client-Request-ID et la réponse complète. Consultez les ressources d’origine vous appartenant et leurs URL signées exactes de contenu ; ne soumettez jamais à nouveau une création incertaine.
Champs de la réponse
| Champ | Type |
|---|---|
Champtext (when present) | Type |
Champusage (when present) | Type |
Erreurs et étapes suivantes
| Réponse | Condition | Étape suivante |
|---|---|---|
Réponse400 · invalid_request_error | ConditionLe corps JSON ou l’identifiant canonique explicite du modèle n’est pas valide. | Étape suivanteConservez la réponse et corrigez le champ de requête indiqué. |
Réponse401 · authentication_error | ConditionLa clé API Ailoot n’est pas valide. | Étape suivanteUtilisez votre clé API Ailoot autorisée. |
Réponse403 · permission_error | ConditionLe groupe de la clé n’autorise pas cette méthode. | Étape suivanteConservez les détails de l’erreur renvoyés. |
Réponse404 · not_found_error | ConditionLa méthode sélectionnée ne dispose d’aucune route autorisée. | Étape suivanteConservez les détails de l’erreur renvoyés. |
Réponse422 · price_unavailable | ConditionLe tarif accepté ne permet pas d’obtenir la quantité d’entrée ou la borne requise. | Étape suivanteConservez la réponse ; utilisez la représentation d’entrée requise par le tarif accepté. |
Réponse503 · | ConditionLe stockage, la route, le tarif de la méthode ou la réservation requis ne sont pas disponibles. | Étape suivanteConservez la réponse d’origine complète. Une réservation incertaine n’autorise pas une nouvelle soumission. |
Réponse502 · server_error | ConditionLe résultat d’origine, l’utilisation ou le règlement nécessite une vérification. | Étape suivanteConservez l’identifiant réel de la requête et la réponse d’origine. Consultez l’enregistrement existant vous appartenant ; ne soumettez pas à nouveau la création. |
Alias
Alias du modèle
Ailoot Ultra fish-audio/transcribe-1
Alias des chemins de méthode
Utilisez les chemins de méthode indiqués ci-dessus.
ID d’appel associés
FAQ · Fish Audio: Transcribe 1
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/audio/transcriptions·fish-audio/transcribe-1:audio→text- Quels champs la requête utilise-t-elle ?
POST /v1/audio/transcriptions·fish-audio/transcribe-1:model,input_audio