Edycja transkrypcji
Ten przewodnik pokazuje, jak stosować instrukcje edycji w języku naturalnym do zatwierdzonych transkrypcji za pomocą API Realtime Speech to Text.
Przewodnik · Zakłada, że masz już za sobą przewodnik o strumieniowaniu po stronie klienta lub po stronie serwera.
Omówienie
Edycja transkrypcji to funkcja eksperymentalna i zwiększa podstawowy koszt transkrypcji o 30%. Opłata jest naliczana za co najmniej 10 sekund audio na każdą zatwierdzoną transkrypcję. Szczegółowe informacje znajdziesz na stronie cen API.
Transkrypcja realtime może stosować instrukcję edycji w języku naturalnym do każdej zatwierdzonej transkrypcji, na przykład aby zapisywać wypowiadane daty w stałym formacie lub rozwijać skróty i akronimy. Instrukcję przekazujesz raz podczas otwierania połączenia, a po każdej zatwierdzonej transkrypcji wysyłane jest osobne zdarzenie edited_transcript z edytowanym tekstem.
Częściowe transkrypcje nigdy nie są edytowane. Zdarzenie committed_transcript także się nie zmienia, więc istniejące integracje nadal działają po włączeniu tej funkcji.
Edycji transkrypcji nie można łączyć z entity_detection ani entity_redaction. Połączenia,
które ustawiają oba parametry, są odrzucane z błędem invalid_request.
Włączanie edycji transkrypcji
Podczas łączenia przekaż instrukcję w opcji transcriptEdit (parametr zapytania transcript_edit w WebSocket API). Instrukcja może mieć do 2000 znaków. Wskazówki dotyczące pisania instrukcji znajdziesz w przewodniku po edycji transkrypcji batch.
We wszystkich SDK edytowane transkrypcje trafiają przez zdarzenie RealtimeEvents.EDITED_TRANSCRIPT.
Po stronie klienta
Użyj @elevenlabs/client w przeglądarce z tokenem jednorazowym wydanym przez serwer, jak opisano w przewodniku po strumieniowaniu po stronie klienta.
Po stronie serwera
Użyj oficjalnego SDK na serwerze, jak opisano w przewodniku po strumieniowaniu po stronie serwera. W porównaniu z tym przewodnikiem różnią się tylko opcja i obsługa zdarzenia; wysyłanie audio oraz zamykanie połączenia działają tak samo.
Odbieranie edytowanych transkrypcji
Po włączeniu tej funkcji po każdej zatwierdzonej transkrypcji wysyłane jest zdarzenie edited_transcript zawierające zatwierdzony tekst i jego edytowaną wersję:
Warto pamiętać o następujących zasadach:
- Edycje są stosowane do każdego zatwierdzonego segmentu osobno. Zdarzenie
edited_transcriptjest emitowane krótko po odpowiadającym mu zdarzeniucommitted_transcript, ponieważ edycja działa asynchronicznie. Może dotrzeć po kolejnej częściowej transkrypcji, a edycje kolejnych segmentów mogą dotrzeć w innej kolejności. Użyj polatext, aby dopasować edycję do zatwierdzonej transkrypcji. - Jeśli segment nie został zmieniony,
edited_textjest identyczny ztext. - Jeśli nie można utworzyć edycji segmentu, nie jest dla niego wysyłane zdarzenie
edited_transcript. Zdarzeniecommitted_transcriptpozostaje bez zmian. - Znaczniki czasu na poziomie słów w
committed_transcript_with_timestampsopisują oryginalny zatwierdzony tekst, a nie tekst po edycji.