Fish Audio: Transcribe 1 Pro
Transcribe 1 Pro zamienia nagrania trwające do 60 minut na tekst ze znacznikami mówców i opcjonalnym czasowaniem na poziomie słów. Zachowuje wywnioskowane oznaczenia emocji i zdarzeń głosowych, ułatwiając przeglądanie i przeszukiwanie wywiadów, spotkań oraz podcastów, a także przygotowywanie do nich napisów.
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
Transcribe 1 Pro to model zamiany mowy na tekst firmy Fish Audio do krótkich klipów, rozmów z wieloma mówcami i długich nagrań. Przyjmuje nagrany dźwięk i zwraca transkrypcję, z opcjonalnym czasowaniem i uporządkowanymi wypowiedziami mówców. Wyróżniają go zmiany mówcy oznaczone w tekście i wskazówki dotyczące emocji lub zdarzeń głosowych, zachowujące więcej struktury rozmowy niż zwykła sekwencja słów.
W przypadku wywiadu, spotkania lub podcastu zachowaj całą rozmowę w jednym pliku, aby powracający mówcy mogli utrzymać spójne oznaczenia w obrębie odpowiedzi. Przydatnym materiałem do przeglądu jest transkrypcja powiązana z oryginalnym nagraniem, z osobno pokazanymi wypowiedziami i znacznikiem czasu do sprawdzenia cytatu. Podsumowanie lub lista działań to późniejszy krok aplikacji: zachowaj je osobno od transkrypcji, aby oryginalna treść wypowiedzi pozostała dostępna do porównania.
Producent przyjmuje nagrania do 60 minut i opisuje przetwarzanie długich plików ze skompresowanym dźwiękiem, takim jak MP3, Opus lub AAC. Obsługiwane formaty obejmują WAV, MP3, AAC w M4A lub MP4, FLAC, Ogg z Opus lub Vorbis, WebM/Matroska i MOV. W pliku wideo używa pierwszej ścieżki dźwiękowej. AIFF, CAF, WMA, AMR, AC-3 i surowy PCM bez nagłówka nie są obsługiwane. Na żądanie dostarcza się jeden plik audio; wynik przychodzi po transkrypcji całego nagrania, a przetwarzanie długiego nagrania może potrwać kilka minut. Klipy krótsze niż około 0,08 sekundy są odrzucane.
Odpowiedź producenta zawiera pełny tekst, czas trwania nagrania w sekundach i tablicę segments. Pro oznacza zmiany mówcy w tekście etykietami takimi jak <|speaker:0|> i <|speaker:1|>; etykieta dotyczy następującego po niej tekstu aż do kolejnego znacznika. Są to identyfikatory w obrębie jednej odpowiedzi, a nie zweryfikowane imiona ani tożsamości możliwe do dopasowania między żądaniami. Jeśli transkrypcja nie ma znacznika mówcy, przewodnik traktuje ją jako wynik dla jednego mówcy. Zachowaj tekst przed pierwszym znacznikiem w pierwszej wypowiedzi, zamiast go odrzucać.
Znaczniki czasu na poziomie słów są opcjonalne. W żądaniu producenta ignore_timestamps ma domyślnie wartość true; ustawienie false prosi o segmenty z tekstem oraz czasem początku i końca w sekundach. Segment jest zazwyczaj słowem albo jednym lub kilkoma znakami w języku chińskim i japońskim. Tekst segmentu pomija interpunkcję, znaczniki mówców i oznaczenia zdarzeń oraz może normalizować wypowiedzianą wartość inaczej niż pełna transkrypcja. Segment słowa może mieć ten sam czas początku i końca. Pusta tablica segments może oznaczać, że nie zażądano znaczników czasu, nie znaleziono mowy lub czasowanie było chwilowo niedostępne. Używaj pełnej transkrypcji do czytelnego zapisu, a segmentów do wyrównania czasowego, zamiast zakładać zgodność obu ciągów znak po znaku.
Ustawienie diarize ma domyślnie wartość auto. Gdy zażądano znaczników czasu i diarize nie jest false, Pro zwraca także speaker_turns. Każda wypowiedź zawiera etykietę mówcy, tekst i czas początku oraz końca, zachowując interpunkcję i pozostawione oznaczenia bez znacznika mówcy wewnątrz tekstu. Jeśli czasowanie słów jest niedostępne, czasy wypowiedzi mogą być przybliżone i obejmować całe nagranie; sąsiednie wypowiedzi nie muszą być ciągłe ani rozłączne czasowo. Wyłączenie diarize usuwa uporządkowaną listę wypowiedzi, ale pozostawia znaczniki mówców w pełnym tekście. Znana liczba mówców albo minimalna i maksymalna liczba mogą pomóc w rozróżnianiu mówców w dłuższych nagraniach, bez gwarancji wyniku. Dokładnej liczby mówców nie można łączyć z jej minimalną ani maksymalną wartością, a wskazówek dotyczących liczby nie można używać przy wyłączonym diarize.
Oznaczenia emocji i zdarzeń głosowych pojawiają się jako tekst w nawiasach kwadratowych, na przykład [laughter], obok rozpoznanej mowy. Są to wnioski z dźwięku, a nie słowa, które użytkownik musi dodać przed transkrypcją. Ustawienie tag_audio_events w Pro ma domyślnie wartość true; jego wyłączenie usuwa te oznaczenia z transkrypcji i tekstu wypowiedzi bez zmiany czasowania. Nie ma osobnego pola emocji ani stałej listy wartości emocji. Zachowaj transkrypcję z oznaczeniami, gdy sposób wypowiedzenia uwagi ma znaczenie, a używaj wersji bez nich, gdy dalszy rezultat wymaga tylko wypowiedzianych słów.
Język jest wykrywany automatycznie. Opcjonalna wskazówka ISO 639-1 zapisana małymi literami nie wymusza tłumaczenia ani nie zmienia transkrypcji Pro. Jeśli nie da się ustalić języka, zwrócony kod języka może odzwierciedlać wskazówkę bez zweryfikowania jej względem dźwięku. Producent raportuje jeden język, a nie wykaz wszystkich języków w nagraniu mieszanym. Przygotowując archiwum do przeszukiwania, przechowuj oryginalne sformułowania wraz z metadanymi języka, szczególnie gdy różne części rozmowy przechodzą między językami.
W przypadku napisów grupuj kolejne słowa ze znacznikami czasu w czytelne jednostki SRT lub WebVTT, zamiast tworzyć osobny napis dla każdego słowa. Rozdzielaj jednostki przy pauzach i dobieraj długość oraz czas wyświetlania do odtwarzacza i odbiorców. Granice wypowiedzi mogą utrzymywać różnych mówców w osobnych jednostkach. Sprawdzaj pusty wynik czasowania oraz jednostki, których koniec musi być późniejszy niż początek. Formatowanie napisów, nadawanie nazw anonimowym etykietom mówców i późniejsze podsumowania to rezultaty aplikacji zbudowane z wyniku transkrypcji.
W praktycznym procesie pracy z nagraniem zdecyduj przed transkrypcją, czy potrzebujesz zwykłego czytelnego tekstu, oznaczonych wypowiedzi rozmowy czy czasowanych napisów. Zachowaj identyfikator dźwięku z wynikiem, pozostaw pełny zwrócony tekst, gdy interpunkcja i oznaczenia mają znaczenie, oraz używaj uporządkowanych pól czasowania do nawigacji. Możliwości Pro dotyczące długich nagrań i wielu mówców są odrębne od ogólnego modelu Transcribe 1 do krótkich nagrań; ich limitów i ustawień nie należy traktować jako wymiennych.
Ailoot Ultra · Rozpoznawanie mowy POST /v1/audio/transcriptions fish-audio/transcribe-1-pro
fish-audio/transcribe-1-proStart
Transcribe 1 Pro zamienia nagrania trwające do 60 minut na tekst ze znacznikami mówców i opcjonalnym czasowaniem na poziomie słów. Zachowuje wywnioskowane oznaczenia emocji i zdarzeń głosowych, ułatwiając przeglądanie i przeszukiwanie wywiadów, spotkań oraz podcastów, a także przygotowywanie do nich napisów.
- Akceptowane dane wejściowe
- Audio
- Wyniki
- Tekst
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · Rozpoznawanie mowy POST /v1/audio/transcriptions
- Wejście
audio- Wyjście
text- Format wyjściowy
- json
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity fish-audio/transcribe-1-pro | Domyślnie— |
Poleinput_audio | Typobject | WymaganieWymagane | Wartości i limity Dokładne klucze: data, format | Domyślnie— |
Poleinput_audio.data | Typbase64_string | WymaganieWymagane | Wartości i limity Maksymalna liczba zdekodowanych bajtów: 26 214 400 Ścisły Base64: Tak | Domyślnie— |
Poleinput_audio.format | Typstring | WymaganieWymagane | Wartości i limity Warunki: Musi odpowiadać rzeczywistemu formatowi ustalonemu przy badaniu pliku | Domyślnie— |
Poleresponse_format | Typstring | WymaganieOpcjonalne | Wartości i limity json | Domyślnie— |
Kombinacje materiałów wejściowych
speech_to_text · Wymagane: input_audio.data, input_audio.format
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, input_audio |
Parametradditional_properties | Kontraktfalse |
Parametrparameters | Kontrakt{"name":"model","type":"string","required":true,"enum":["fish-audio/transcribe-1-pro"]}, {"name":"input_audio","type":"object","required":true,"exact_keys":["data","format"],"data":"ścisłe kodowanie base64 rzeczywistych bajtów obsługiwanego dźwięku","format":"dokładny format ustalony przy badaniu pliku; musi odpowiadać rzeczywistym bajtom"}, {"name":"response_format","type":"string","required":false,"enum":["json"]} |
Parametrmax_audio_bytes | Kontrakt26214400 |
Parametrmultipart_for_this_profile | Kontraktfalse |
Parametrmaterial_types | Kontraktaudio |
Cykl życia: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Rzeczywiście zwrócony task_id lub wpis w bibliotece multimediów
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Zachowaj kompletną odpowiedź i pierwotne zwrócone identyfikatory.
Nigdy nie ponawiaj żądania utworzenia o nieznanym wyniku.
Cennik
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Jednostka rozliczeniowa | Opłata |
|---|---|---|---|
| KonfiguracjaBazowe stawki za tokeny | Tabela stawekStawka podstawowa | Jednostka rozliczeniowa— | Opłata Wejście · Tokeny wejściowe — / 1K tokenów Wyjście · Tokeny wyjściowe — / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
| Konfiguracjasekunda wejściowego audio | Tabela stawek— | Jednostka rozliczeniowaza sekundę dźwięku wejściowego | Opłata Wejście · sekunda wejściowego audio $0.0002 za sekundę dźwięku wejściowego |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Szczegóły taryfy referencyjnej
Referencyjne tabele modelu nie zmieniają wyboru metody, wyceny ani opłat. Naliczane opłaty korzystają ze stawek wybranej metody Ailoot.
Fish Audio: Transcribe 1 Pro
Ceny według konfiguracji
| Konfiguracja | Warunki rozliczania | Opłata |
|---|---|---|
| KonfiguracjaFish Audio: Transcribe 1 Pro · Domyślna konfiguracja | Warunki rozliczaniaKonfiguracja domyślna | Opłata Wejście · Sekundy wejściowego audio 0,0002 USD za sekundę dźwięku wejściowego |
Przykładowe żądania
Ailoot Ultra · Rozpoznawanie mowy
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set your actual audio file}"
: "${AILOOT_AUDIO_FORMAT:?Set its actual probed file format}"
export AILOOT_AUDIO_FILE AILOOT_AUDIO_FORMAT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "fish-audio/transcribe-1-pro", "response_format": "json"}')
import base64
f=Path(os.environ['AILOOT_AUDIO_FILE'])
raw=f.read_bytes()
if not raw or len(raw)>26214400:raise SystemExit('Use actual audio bytes within 25 MiB')
fmt=os.environ['AILOOT_AUDIO_FORMAT'].strip()
if not fmt:raise SystemExit('Use the actual probed format; the server checks it against the bytes')
p['input_audio']={'data':base64.b64encode(raw).decode(),'format':fmt}
Path('request.json').write_text(json.dumps(p,ensure_ascii=False))
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 result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Odbieranie i zapisywanie wyników
Ailoot Ultra · Rozpoznawanie mowy
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Zachowaj wszystkie ukończone wyniki
Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.
Zachowaj kompletny JSON, nagłówki odpowiedzi, tekst i każde faktycznie zwrócone pole użycia. Używaj rzeczywistych identyfikatorów zadań i zasobów z odpowiedzi lub biblioteki zasobów należących do użytkownika; operation_id nie jest task_id.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj pierwotny operation_id/X-Client-Request-ID do uzgodnienia danych bez ponownego wysyłania żądania; brak osobnej ścieżki API do cyklicznego sprawdzania stanu audio.
Pola odpowiedzi
| Pole | Typ | Znaczenie |
|---|---|---|
Poletext | Typstring | ZnaczenieTekst transkrypcji. |
Poleusage | Typobject | ZnaczenieUżycie dźwięku. |
Poleusage.seconds | Typnumber | ZnaczenieCzas trwania dźwięku w sekundach. |
Poleduration | Typnumber | ZnaczenieCzas trwania dźwięku w sekundach. |
Poletask_id | Typstring | ZnaczenieIdentyfikator zadania transkrypcji; zwracany wraz z asset_url, gdy niepusta transkrypcja zostanie zapisana, opublikowana i otrzyma podpisany URL treści. |
Poleasset_url | Typstring | ZnaczeniePodpisany URL treści transkrypcji; zwracany wraz z task_id, gdy niepusta transkrypcja zostanie zapisana, opublikowana i otrzyma podpisany URL treści. |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametru | Następny krokPopraw wskazane pola przed nowym żądaniem utworzenia. |
Odpowiedźserver_error | WarunekZwrócona odpowiedź wskazuje, że operacja lub wynik wymaga sprawdzenia | Następny krokZachowaj pierwotnie zwrócony identyfikator operacji lub zadania, nagłówki żądania i odpowiedź; kontynuuj obsługiwane odczyty tej pierwotnej operacji. Nie wysyłaj ponownie żądania utworzenia. |
Aliasy
Aliasy modelu
Ailoot Ultra fish-audio/transcribe-1-pro
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
FAQ · Fish Audio: Transcribe 1 Pro
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/audio/transcriptions·fish-audio/transcribe-1-pro:audio→text- Jakich pól używa żądanie?
POST /v1/audio/transcriptions·fish-audio/transcribe-1-pro:model,input_audio,response_format