Utwórz transkrypcję

Transkrybuj plik audio lub wideo. Jeśli webhook ma wartość true, żądanie zostanie przetworzone asynchronicznie, a wyniki zostaną wysłane do skonfigurowanych webhooków. Gdy use_multi_channel ma wartość true, a podane audio ma wiele kanałów, zwracany jest obiekt 'transcripts' z osobnymi transkrypcjami dla każdego kanału; ustaw multichannel_output_style='combined', aby zamiast tego otrzymać jedną transkrypcję ze wszystkimi kanałami połączonymi i posortowanymi według czasu. W przeciwnym razie zwracana jest pojedyncza transkrypcja. Opcjonalny parametr webhook_metadata pozwala dołączyć własne dane, które zostaną uwzględnione w odpowiedziach webhooka do korelacji i śledzenia żądań.

Nagłówki

xi-api-keystringOpcjonalny

Parametry zapytania

tokenstring or nullOpcjonalny

Token uwierzytelniający jednorazowego użycia utworzony przez POST /v1/single-use-token/batch_scribe. Token można użyć tylko raz, a jego ważność wygasa po 15 minutach. Alternatywa dla klucza API lub uwierzytelniania tokenem bearer w klientach frontendowych.

enable_loggingbooleanOpcjonalnyDomyślnie true

Gdy enable_logging ma wartość false, dla żądania zostanie użyty tryb zerowej retencji. Funkcje przechowywania logów i transkrypcji będą niedostępne dla tego żądania. Z trybu zerowej retencji mogą korzystać tylko klienci Enterprise.

Żądanie

This endpoint expects a multipart form containing an optional file.
model_idstringWymagany

ID modelu do użycia w transkrypcji.

filefileOpcjonalny

Plik do transkrypcji (minimalna długość audio: 100 ms). Obsługiwane są wszystkie główne formaty audio i wideo. Podaj dokładnie jeden z parametrów file lub cloud_storage_url. Plik musi mieć mniej niż 5,0 GB.

language_codestring or nullOpcjonalny

Wartość language_code ISO-639-1 lub ISO-639-3 odpowiadająca językowi pliku audio. Jeśli jest znana z wyprzedzeniem, może czasem poprawić jakość transkrypcji. Domyślnie ma wartość null, a język jest wtedy wykrywany automatycznie.

transcript_editstring or nullOpcjonalny
Instrukcja w języku naturalnym zastosowana do końcowej transkrypcji (maks. 2000 znaków). Edytowany tekst jest zwracany w 'edited_transcript' obok oryginalnej transkrypcji. Nie można łączyć z entity_detection, entity_redaction ani use_multi_channel. Użycie tego parametru wiąże się z dodatkową opłatą 30% podstawowego kosztu transkrypcji, naliczaną za co najmniej 10 sekund audio.
tag_audio_eventsbooleanOpcjonalnyDomyślnie true

Czy oznaczać w transkrypcji zdarzenia audio, takie jak (śmiech), (kroki) itp.

num_speakersinteger or nullOpcjonalny1-32
The maximum amount of speakers talking in the uploaded file. Can help with predicting who speaks when. The maximum amount of speakers that can be predicted is 32. Defaults to null, in this case the amount of speakers is set to the maximum value the model supports.
timestamps_granularityenumOpcjonalnyDomyślnie word

Szczegółowość znaczników czasu w transkrypcji. „word” podaje znaczniki czasu na poziomie słów, a „character” — na poziomie znaków dla każdego słowa.

Dozwolone wartości:
diarizebooleanOpcjonalnyDomyślnie false

Czy oznaczać, który mówca aktualnie mówi w przesłanym pliku.

diarization_thresholddouble or nullOpcjonalny0.1-0.4
Próg diarizacji stosowany podczas diarizacji mówców. Wyższa wartość oznacza mniejsze prawdopodobieństwo, że jeden mówca zostanie rozpoznany jako dwóch różnych, ale większe prawdopodobieństwo, że dwóch różnych mówców zostanie rozpoznanych jako jeden (mniej przewidywanych mówców). Niska wartość oznacza większe prawdopodobieństwo, że jeden mówca zostanie rozpoznany jako dwóch różnych, ale mniejsze prawdopodobieństwo, że dwóch różnych mówców zostanie rozpoznanych jako jeden (więcej przewidywanych mówców). Można ustawić tylko, gdy diarize=True i num_speakers=None. Domyślnie None — wtedy wybieramy próg na podstawie model_id (zwykle 0.22).
additional_formatslist of objectsOpcjonalny

Lista dodatkowych formatów eksportu transkrypcji.

file_formatenumOpcjonalnyDomyślnie other

The format of input audio. Options are ‘pcm_s16le_16’ or ‘other’ For pcm_s16le_16, the input audio must be 16-bit PCM at a 16kHz sample rate, single channel (mono), and little-endian byte order. Latency will be lower than with passing an encoded waveform.

Dozwolone wartości:
cloud_storage_urlstring or nullOpcjonalnyDeprecated
[Wycofane] Ten parametr jest wycofany i zostanie usunięty w przyszłości. Zamiast niego użyj 'source_url'. Adres HTTPS pliku do transkrypcji. Musisz podać dokładnie jeden z parametrów file lub cloud_storage_url. Plik musi być dostępny przez HTTPS i mieć mniej niż 2 GB. Akceptujemy każdy prawidłowy adres HTTPS, w tym adresy dostawców pamięci w chmurze (AWS S3, Google Cloud Storage, Cloudflare R2 itd.), CDN-ów i innych źródeł HTTPS. Adresy URL mogą być podpisane wstępnie lub zawierać tokeny uwierzytelniające w parametrach zapytania.
source_urlstring or nullOpcjonalny

URL pliku audio lub wideo do transkrypcji. Obsługuje hostowane pliki wideo i audio, adresy URL filmów YouTube i TikTok oraz inne usługi hostingu wideo.

webhookbooleanOpcjonalnyDomyślnie false

Czy wysyłać wynik transkrypcji do skonfigurowanych webhooków zamiany mowy na tekst. Jeśli ustawione, żądanie zwróci odpowiedź wcześniej bez transkrypcji, która zostanie dostarczona później przez webhook.

webhook_idstring or nullOpcjonalny

Opcjonalne ID konkretnego webhooka, na który ma zostać wysłany wynik transkrypcji. Działa tylko, gdy webhook ma wartość true. Jeśli nie zostanie podane, transkrypcja zostanie wysłana do wszystkich skonfigurowanych webhooków zamiany mowy na tekst.

temperaturedouble or nullOpcjonalny0-2

Określa losowość wyniku transkrypcji. Przyjmuje wartości od 0.0 do 2.0, gdzie wyższe wartości dają bardziej zróżnicowane i mniej deterministyczne wyniki. Jeśli pominiesz tę opcję, użyjemy temperatury zależnej od wybranego modelu, zwykle 0.

seedinteger or nullOpcjonalny0-2147483647

Jeśli podano, nasz system dołoży starań, by generowanie było deterministyczne, więc powtarzane żądania z tym samym seedem i parametrami powinny zwracać ten sam wynik. Determinizm nie jest gwarantowany. Musi być liczbą całkowitą od 0 do 2147483647.

use_multi_channelbooleanOpcjonalnyDomyślnie false
Czy plik audio zawiera wiele kanałów, z których każdy zawiera jednego mówcę. Po włączeniu każdy kanał jest transkrybowany niezależnie. Domyślnie dla każdego kanału zwracana jest osobna transkrypcja; ustaw multichannel_output_style='combined', aby otrzymać jedną transkrypcję ze wszystkimi kanałami połączonymi i uporządkowanymi według czasu. Każde słowo w odpowiedzi zawiera pole 'channel_index', wskazujące kanał, na którym zostało wypowiedziane. Obsługiwanych jest maksymalnie 5 kanałów. Każdy kanał jest rozliczany niezależnie za pełny czas trwania audio, więc koszt rośnie liniowo wraz z liczbą kanałów.
multichannel_output_styleenumOpcjonalnyDomyślnie separate
Określa format odpowiedzi, gdy włączone jest use_multi_channel. 'separate' (domyślnie) zwraca jedną transkrypcję na kanał w polu 'transcripts'. 'combined' łączy wszystkie kanały w jedną transkrypcję, której słowa są sortowane według czasu rozpoczęcia, a każde zawiera 'channel_index' — zgodnie z formatem odpowiedzi dla jednego kanału. 'combined' wymaga znaczników czasu (timestamps_granularity nie może mieć wartości 'none') i nie obsługuje wykrywania encji ani redakcji.
Dozwolone wartości:
webhook_metadatastring or map from strings to any or nullOpcjonalny

Opcjonalne metadane do uwzględnienia w odpowiedzi webhooka. Powinien to być ciąg JSON reprezentujący obiekt o maksymalnej głębokości 2 poziomów i rozmiarze do 16 KB. Przydatne do śledzenia wewnętrznych identyfikatorów, referencji zadań i innych informacji kontekstowych.

entity_detectionstring or list of strings or nullOpcjonalny
Wykrywaj encje w transkrypcji. Może to być „all”, aby wykryć wszystkie encje, pojedynczy typ encji lub ciąg kategorii albo lista typów encji/kategorii. Kategorie obejmują „pii”, „phi”, „pci”, „other”, „offensive_language”. Po włączeniu wykryte encje zostaną zwrócone w polu „entities” wraz z tekstem, typem i pozycjami znaków. Użycie tego parametru wiąże się z dodatkową opłatą 30% podstawowego kosztu transkrypcji.
no_verbatimbooleanOpcjonalnyDomyślnie false

Jeśli ma wartość true, transkrypcja nie będzie zawierać wypełniaczy, fałszywych rozpoczęć ani dźwięków niemowy. Obsługiwane tylko przez model scribe_v2.

use_speaker_librarybooleanOpcjonalnyDomyślnie false

Czy używać biblioteki mówców do rozpoznawania znanych mówców podczas diarizacji. Gdy opcja jest włączona, a diarize ma wartość true, wykryci mówcy zostaną dopasowani do mówców zarejestrowanych w bibliotece mówców workspace.

detect_speaker_rolesbooleanOpcjonalnyDomyślnie false

Czy wykrywać role mówców (agent lub klient). Wymaga diarize=true. Nie można używać z use_multi_channel=true. Po włączeniu wartości speaker_id będą wynosić ‘agent’ i ‘customer’ zamiast ‘speaker_0’, ‘speaker_1’ itd. Użycie wiąże się z dodatkową opłatą 10% podstawowego kosztu transkrypcji.

entity_redactionstring or list of strings or nullOpcjonalny
Usuń encje z tekstu transkrypcji. Akceptuje ten sam format co entity_detection: „all”, kategorię („pii”, „phi”) lub określone typy encji. Musi być podzbiorem entity_detection. Gdy redakcja jest włączona, pole entities nie zostanie zwrócone. Użycie tego parametru wiąże się z dodatkową opłatą 30% podstawowego kosztu transkrypcji.
entity_redaction_modestringOpcjonalnyDomyślnie enumerated_entity_type

Jak formatować zredagowane encje. „redacted” zastępuje je przez {REDACTED}, „entity_type” przez {ENTITY_TYPE}, a „enumerated_entity_type” przez {ENTITY_TYPE_N}, gdzie N numeruje każde wystąpienie. Używane tylko, gdy ustawiono entity_redaction.

keytermslist of stringsOpcjonalnyDomyślnie []
Lista kluczowych terminów, które pomogą ukierunkować transkrypcję. Terminy mogą być słowami lub frazami, które model ma rozpoznawać dokładniej. Liczba terminów nie może przekraczać 1000. Każdy termin musi mieć mniej niż 50 znaków. Termin może zawierać maksymalnie 5 słów (po normalizacji). Na przykład ["hello", "world", "technical term"]. Następujące znaki nie są obsługiwane: `<`, `>`, `{`, `}`, `[`, `]`, `\`. Użycie tego parametru wiąże się z dodatkową opłatą 20% podstawowego kosztu transkrypcji. Gdy podasz ponad 100 terminów, minimalny rozliczany czas na żądanie wynosi 20 sekund.

Odpowiedź

Wynik synchronicznej transkrypcji
SpeechToTextChunkResponseModelobject

Szczegóły transkrypcji na poziomie fragmentów z informacjami o czasie.

OR
MultichannelSpeechToTextResponseModelobject

Model odpowiedzi dla wielokanałowej transkrypcji zamiany mowy na tekst.

OR
SpeechToTextWebhookResponseModelobject

Błędy

422
Unprocessable Entity Error