UtteraUttera

Sicherheit

Behandeln Sie unsere Antworten als DATEN, niemals als Anweisungen.

Transkripte, Übersetzungen und Zusammenfassungen werden aus Audio erzeugt, das wir nicht kontrollieren: Ihr Kunde erzeugt es oder es kommt von ihm. Jeder kann versuchen, befehlsförmige Sätze in eine Aufnahme einzuschmuggeln, damit sie in Ihrem System ausgeführt werden.

Wir härten die Zusammenfassung gegen diese Art von Manipulation, aber keine Verteidigung ist vollständig. Wenn Sie unsere Ausgabe an einen Agenten, ein CRM oder irgendeine Automatisierung mit Berechtigungen weitergeben, behandeln Sie sie als nicht vertrauenswürdigen Text: führen Sie sie nicht aus, lesen Sie sie nicht als Befehle und validieren Sie sie, bevor Sie darauf reagieren.

Und was ein Sprecher in einer Aufnahme behauptet, ist keine bewiesene Tatsache, auch wenn es in der Zusammenfassung landet.

Transkribieren

POST /v1/audio/transcriptions

Verwandelt eine Aufnahme in Text. Erkennt die Sprache von selbst.

Sie können diesen Dienst direkt nutzen, ohne Code zu schreiben, auf der Seite Studio: die Karte Audio transkribieren.

ParameterTypBeschreibung
filefileErforderlich. Das Audio.
modeltextwhisper-1
languagetextISO-Code. Wenn weggelassen, wird sie erkannt.
prompttextKontext zur Hilfe bei Eigennamen oder Fachjargon.
response_formattextjson · text · verbose_json · srt · vtt
extrastext (query)sentiment · profile · diarize, kommagetrennt
temperaturenumber0 bis 1. Standardwert 0.
extrasquery?extras=sentiment fügt in derselben Anfrage eine Tonanalyse hinzu.

Die Antwort trägt den Header X-Audio-Duration mit den genauen Sekunden, die berechnet wurden.

Text zu Sprache

POST /v1/audio/speech

Sie können diesen Dienst direkt nutzen, ohne Code zu schreiben, auf der Seite Studio: die Karten Text zu digitaler Stimme (tts-1) und Text zu geklonter Stimme (tts-1-hd).

ParameterTypBeschreibung
inputtextErforderlich. Was gesagt werden soll.
modeltexttts-1 Standardstimme · tts-1-hd hochwertige Stimme. Siehe die drei Stimmen.
voicetextName aus dem Katalog. Siehe Stimmen.
response_formattextmp3 · wav · opus · flac · pcm
speednumberGeschwindigkeit. 1.0 ist normal.
languagetextLesesprache. Wenn weggelassen, legt die Stimme sie fest. Siehe wie sie gewählt wird.
cachebooleanfalse hält diese Anfrage aus dem Cache heraus: nichts wird gelesen und nichts geschrieben. Siehe unten.
curl -X POST https://api.uttera.ai/v1/audio/speech \
  -H "Authorization: Bearer $UTTERA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"tts-1","input":"Your order ships tomorrow.","voice":"nova","response_format":"mp3"}' \
  --output voice.mp3
Tippen Sie die Akzente. Im Spanischen, Französischen, Portugiesischen und Italienischen ist ein Akzent keine dekorative Schreibweise: er markiert, wo die Betonung liegt, und die Engine liest genau das, was Sie senden. gustaria wird betont gus-ta-ria; gustaría wird betont gus-ta--a.

Wir fügen sie bewusst nicht für Sie hinzu: esta und está, papa und papá, termino und terminó sind verschiedene Wörter. Ein automatischer Korrektor läge bei vielen richtig und würde, wenn er bei einem falsch läge, ändern, was Sie uns zu sagen gebeten haben. Wir lesen Ihren Text lieber so, wie er geschrieben ist.

Welche Sprache gelesen wird, und wer entscheidet

Die Sprache legt nicht die Klangfarbe fest: sie wählt die Regeln, nach denen Text zu Klang wird. Sie falsch zu setzen klingt nicht “akzentuiert”, es klingt kaputt. Ein spanischer Text, mit englischen Regeln gelesen, kommt buchstäblich so heraus:

Mi Gasteria reservar una mesa para dues personas

Deshalb wird sie in drei Schritten aufgelöst, und Sie müssen selten darüber nachdenken:

ReihenfolgeWoher sie kommt
1Die language, die Sie senden. Gewinnt immer.
2Die Sprache der Stimme. Jede Katalogstimme spricht ihre eigene, und /v1/voices veröffentlicht sie. Fordern Sie alloy an und sie liest Englisch; fordern Sie dora an und sie liest Spanisch.
3Der Server-Standard, Englisch. Er erreicht nur Stimmen ohne eigene Sprache: geklonte und mehrsprachige, die sprechen, worum sie gebeten werden.
Wenn Sie vom OpenAI-SDK kommen, müssen Sie nichts tun. Deren /v1/audio/speech hat kein Feld language — das ist unsere Erweiterung — also sendet Ihr Code es nicht, und Schritt 2 tut das Richtige: die Stimme, die Sie wählen, entscheidet die Sprache.

Wann es sich lohnt zu senden: bei einer geklonten oder mehrsprachigen Stimme (sie haben keine eigene Sprache), oder wenn Sie bewusst möchten, dass eine Stimme eine andere Sprache als ihre eigene liest.

Das Stimmmuster: was hochladen

Eine Stimme zu klonen braucht ein Referenzmuster. Was am besten funktioniert:

EmpfohlenWarum
6 bis 12 SekundenUnter 6 verlieren Sie tonale Tiefe. Über 12 wird es nicht proportional besser und fügt nur Latenz hinzu.
Ein vollständiger Satz, mit natürlicher IntonationDas Modell erfasst, wie diese Stimme steigt und fällt, und es muss sehen, wie das geschieht.
Kein HintergrundgeräuschDas machen die meisten falsch. Musik, Raum- hall oder Klimaanlage kontaminieren die Ausgabestimme und tauchen in allem auf, was Sie danach erzeugen.
Sie müssen es nicht selbst zuschneiden. Wenn Sie eine lange Aufnahme hochladen, behalten wir automatisch die ersten 20 Sekunden. Es schlägt nicht fehl, es wirft keinen Fehler und es wird nicht anders berechnet: viele Menschen haben keinen Audio-Editor zur Hand, und das Zuschneiden ist unsere Aufgabe, nicht Ihre.

Zu der Frage, wessen Stimme Sie klonen dürfen — die für den meisten Ärger sorgt — siehe den Rechtsrahmen: eine Stimme ist geschützt, und öffentliches Material ist keine Erlaubnis.

Drei Stimmen, nicht zwei

Dieselbe Route liefert drei verschiedene Dinge, und was entscheidet, welches, ist was Sie senden:

Was Sie sendenWas Sie bekommenTarif
tts-1, oder nichtsStandardstimme. Unser eigener Katalog, schnell und günstig.Alle
tts-1-hdHochwertige Stimme. Derselbe Katalog, Premium-Engine.Kostenpflichtig
tts-1-hd + ein StimmmusterKlonen. Ihre Stimme, auf der Premium-Engine.Kostenpflichtig

Das Muster wird als custom_voice_file in einem Multipart-Formular gesendet; ohne es geht die Anfrage als JSON. Das ist der ganze Unterschied zwischen dem Anfordern einer Katalogstimme in hoher Qualität und dem Klonen einer solchen.

Hohe Qualität kostet pro Sekunde etwa 19-mal mehr als Standard, und es ist derselbe Preis, ob Sie klonen oder nicht: teuer ist die Engine, nicht woher die Stimme kam. Wenn Sie nur möchten, dass es klar verstanden wird, ist tts-1 die vernünftige Wahl.

Sie sprechen nicht dieselben Sprachen

Es ist der Unterschied, der die Leute am meisten überrascht, und er liegt nicht in der Klangfarbe:

SprachenKatalogstimmen
tts-1 · Standard9: Spanisch, Englisch (und britisch), Französisch, Italienisch, Portugiesisch, Hindi, Japanisch und ChinesischViele, und jede an ihre Sprache gebunden
tts-1-hd · hohe QualitätRund 30: neben den obigen Deutsch, Russisch, Polnisch, Niederländisch, die nordischen Sprachen, Griechisch, Türkisch, Arabisch, Koreanisch und mehrere südostasiatische, unter anderemWenige, aber jede spricht alle 30

Der Grund ist, dass es Engines unterschiedlicher Natur sind. Die Standard-Engine hat einen festen Stimmenkatalog, jede für ihre Sprache trainiert. Die hochwertige geht von einem Muster aus — deshalb kann sie klonen — und dieselbe Stimme liest jede der Sprachen, die sie kennt.

Mit tts-1-hd muss die Sprache nicht angegeben werden: sie wird aus dem Text erschlossen. Mit tts-1 spielt sie eine Rolle, weil die gewählte Stimme sie festlegt.

Beim Klonen bestimmt das Muster. Wenn das Muster einen starken Akzent aus seiner eigenen Sprache hat und Sie es bitten, eine andere zu sprechen, klingt das Ergebnis nicht immer muttersprachlich: es wird klar verstanden, aber man hört, woher es kam. Es ist keine feste Regel — wir haben englische Muster sehr gut auf Spanisch klingen hören — es hängt vom Muster ab. Wenn die Zielsprache wichtig ist, testen Sie zuerst mit einem Muster in dieser Sprache.
Warum die hochwertige Stimme und das Klonen kostenpflichtig sind. Eine Stimme zu klonen ist ein heikler Vorgang: in Spanien ist eine Stimme personenbezogenes Datum. Ein kostenpflichtiger Tarif bedeutet, dass hinter jeder Anfrage eine Identität steht, und das macht es möglich, dafür einzustehen, wenn jemand eine Stimme klont, die er nicht hätte klonen dürfen. Es ist nicht nur eine Frage der Kosten.

Zeilenumbrüche kosten Geld

Sprache wird pro erzeugter Sekunde abgerechnet, nicht pro Zeichen. Und ein Zeilenumbruch lässt die Engine eine Pause einfügen. Also kostet derselbe Text je nach Formatierung unterschiedlich, und es lohnt sich, das zu wissen, bevor die Rechnung Sie überrascht.

Gemessen mit demselben Satz achtmal wiederholt, wobei nur das dazwischen geändert wurde:

Zwischen SätzenDauerGegenüber einem Leerzeichen
Leerzeichen · 2 Leerzeichen · 4 Leerzeichen12,2 s
Komma · Semikolon · Doppelpunkt · Auslassungspunkte · Gedankenstrich12,1–12,3 s
Zeilenumbruch21,4 s+75 %
2 Umbrüche · 3 Umbrüche21,4 s+75 %
Daraus folgen drei Dinge, und keines ist offensichtlich:

Leerzeichen bewirken nichts. Weder zwei noch vier. Auch Satzzeichen nicht: ein Komma, ein Punkt oder ein Gedankenstrich klingen, was die Uhr betrifft, wie ein Leerzeichen.

Nur der Zeilenumbruch erzeugt eine Pause, und jeder kostet 1,31 s (0,028 Credits).

Mehr Umbrüche verlängern die Pause nicht. Einer, zwei oder drei sind genau gleich. Sie taugen nicht dazu, eine längere Wartezeit zu erbitten.

In einem echten Text ist der Unterschied nicht klein. La canción del pirata gibt mit seinen ~96 Zeilen allein 126 Sekunden für Pausen aus: etwas mehr als die Hälfte dessen, was das Synthetisieren des Ganzen kostet.

Wenn Sie die Pausen nicht möchten, entfernen Sie die Zeilenumbrüche, bevor Sie den Text senden: dieselben Wörter als ein durchlaufender Absatz kosten fast die Hälfte. Und wenn Sie sie doch möchten, wissen Sie jetzt, was sie wert sind.

Warum die Kette eine andere Zahl ergibt

Wenn Sie eine Audiodatei transkribieren und dann übersetzen, werden Sie sehen, dass die Sprache für die Übersetzung erheblich weniger kostet als die ursprüngliche Synthese desselben Textes. Es ist kein Abrechnungsfehler: die Erkennung gibt einen durchlaufenden Absatz zurück, ohne die Zeilenumbrüche des Originals. Dieser flache Text wird ohne Pausen synthetisiert und dauert deshalb — und kostet — weniger.

Anders gesagt: Zeilenumbrüche überstehen die Reise durchs Audio nicht. Wenn es Ihnen wichtig ist, sie zu behalten, bewahren Sie den Ausgangstext auf; aus dem Transkript lassen sie sich nicht wiederherstellen.

Cache: derselbe Text mit derselben Stimme wird aus dem Cache bedient und kostet 10 %. Die Antwort sagt es im Header X-Cache: HIT.

Der Cache ist pro Knoten. Da Anfragen über mehrere verteilt werden, treffen die ersten Wiederholungen eines Textes vielleicht nicht: jeder Knoten füllt ihn beim ersten Mal, wenn er an der Reihe ist. Danach trifft es.

Den Cache abschalten, Anfrage für Anfrage

Manche Arbeit darf das Audio nicht einmal für eine Stunde auf fremder Platte liegen haben: medizinisches Diktat, juristische Notizen, eine persönliche Nachricht. Sie können den Cache selbst abschalten, bei jeder Anfrage, ohne uns um etwas zu bitten und ohne Ihr Konto zu ändern. Das Audio wird trotzdem erzeugt und Ihnen ausgeliefert; was nicht geschieht, ist, dass irgendetwas auf die Platte geschrieben oder von ihr gelesen wird.

Drei gleichwertige Wege, je nachdem, welcher Ihnen am besten passt:

# 1) Im JSON-Body
-d '{"model":"tts-1","input":"Private notes","voice":"nova","cache":false}'

# 2) Als Formularfeld (akzeptiert 0 / false / no / off)
-F input="Private notes" -F voice=nova -F cache=false

# 3) Mit dem guten alten HTTP-Header, ohne den Body anzufassen
-H "Cache-Control: no-cache"

Die Antwort sagt Ihnen stets, was getan wurde, damit Sie uns nicht beim Wort nehmen müssen:

X-CacheWas geschah
HITAus dem Cache bedient. Kostet 10 %.
MISSErzeugt und für die nächste Stunde gespeichert.
BYPASSSie haben ohne Cache angefordert: erzeugt und nichts gespeichert.
ADHOCStimme spontan geklont. Nie gecacht, ob Sie es verlangen oder nicht.
DISABLEDDer Cache ist auf dem Server abgeschaltet.
Es kostet den vollen Preis, natürlich: es wird jedes Mal erzeugt. Und eine spontan geklonte Stimme wird nie gecacht, also gibt es dort nichts abzuschalten.

Streaming: es hören, während es erzeugt wird

POST /v1/audio/speech/stream

Der normale Sprach-Endpunkt gibt Ihnen die Datei, wenn sie fertig ist. Dieser reicht sie Ihnen schon während der Erzeugung weiter, in Stücken, sodass der erste Ton fast sofort herauskommt, statt auf das letzte Wort zu warten.

Wenn Sie ein Telefonsystem bauen, einen Assistenten, der antwortet, oder irgendetwas, bei dem am anderen Ende eine Person wartet, ist das der Unterschied zwischen einem Gespräch und einer Warteschlange.

/v1/audio/speech/v1/audio/speech/stream
Gibt zurückDie vollständige Dateiaudio/wav in Stücken (Transfer-Encoding: chunked)
Formatemp3 · wav · opus · flac · pcmnur wav
CacheJa, eine Stunde zu 10 %Nein: Es gibt keine Datei zum Speichern
Geklonte StimmeJaJa
PreisDerselbe: pro Sekunde erzeugtem Audio
curl -N -X POST https://api.uttera.ai/v1/audio/speech/stream \
  -H "Authorization: Bearer $UTTERA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"tts-1","input":"Your order ships tomorrow.","voice":"nova","language":"en"}' \
  --output - | aplay

Das -N von curl ist wichtig: Ohne es puffert curl die Antwort, und Sie verlieren genau das, wofür Sie gekommen sind.

Ihnen wird berechnet, was geliefert wird. In einer Antwort in Stücken kann die Engine die Länge des Audios nicht im Voraus ankündigen — die Header gehen hinaus, bevor es existiert — daher wird die Dauer aus den gelieferten Bytes berechnet: 16-Bit-Mono-WAV mit 24.000 Hz bei der Standardstimme und 48.000 Hz bei der geklonten. Es ist exakt, keine Schätzung. Wenn Sie die Verbindung auf halbem Weg kappen, zahlen Sie für das, was Sie erreicht hat.

Übersetzen

The 50 languages you can write in: these are what translation accepts as INPUT.

And the 9 that can come back SPOKEN: for the rest, translation comes back as text. If you ask for audio in one without a voice, the request is rejected with 422 before spending anything.

POST /v1/translate

Die vollständige Kette: Sie transkribiert das Audio, übersetzt den Text und synthetisiert ihn in der Zielsprache. Sie akzeptiert Audio- oder Texteingabe, aber nicht Text zu Text: Wenn Text hineingeht, muss die Ausgabe Audio enthalten.

Sie können diesen Dienst direkt, ohne Code zu schreiben, auf der Studio-Seite nutzen: die Karte Eine Aufnahme übersetzen.

ParameterTypBeschreibung
fileDateiDas Ausgangsaudio.
targetqueryErforderlich. Zielsprache.
sourcequeryAusgangssprache. Standardmäßig erkannt.
responsequeryboth Text und Audio · text nur Text · audio nur Audio
voicequeryAusgabestimme, aus dem Standardkatalog. Wird ignoriert, wenn Sie preserve_voice anfordern.
preserve_voicequery1, um zu transponieren: Die Übersetzung wird in der Stimme des ursprünglichen Sprechers gesprochen, aus derselben Aufnahme geklont. Erfordert Audioeingabe und einen kostenpflichtigen Tarif.
speedqueryLesegeschwindigkeit des zurückgegebenen Audios. 1,0 ist normal; 0,25 bis 4,0. Da Sprache pro erzeugter Sekunde abgerechnet wird, ändert das auch den Preis.
formatqueryFormat des zurückgegebenen Audios: mp3 (Standard) · wav · opus · flac · pcm. Es wird mit der Standardstimme synthetisiert, daher kommt pcm mit 24.000 Hz heraus.
curl -X POST "https://api.uttera.ai/v1/translate?target=en&response=both" \
  -H "Authorization: Bearer $UTTERA_API_KEY" \
  -F file=@recording.mp3

Sie gibt source_text zurück, den übersetzten text und audio in base64 mit seinem audio_format. Außerdem source_language: Wenn Sie source nicht angegeben haben, trägt dieses Feld die von uns erkannte Sprache, nicht das Wort auto. Es lohnt sich, es zu lesen.

Wenn Sie die Ausgangssprache kennen, geben Sie sie in source an. Das ist stets zuverlässiger, als es der Erkennung zu überlassen.
Sehr kurze Phrasen werden weniger genau übersetzt. Ein paar isolierte Wörter geben keinen Kontext, um zwischen zwei Bedeutungen desselben Wortes zu wählen, und das gilt für jeden Übersetzer. Senden Sie den ganzen Satz, wo Sie können.
Sprachen mit einer Stimme: Wir übersetzen in ~50 Sprachen, aber die Übersetzung wird mit der Standardstimme synthetisiert, sodass nur neun als Audio zurückkommen können. Wenn Sie Audio in einer anfordern, die es nicht hat, wird die Anfrage mit 422 abgelehnt, bevor etwas ausgegeben wird, und gibt die gültige Liste zurück. Verwenden Sie response=text für die übrigen.

Es ist eine Einschränkung der Engine, die diese Kette verwendet, nicht des Produkts: Die hochwertige Stimme spricht rund 30 Sprachen. Wenn Sie Audio in einer der anderen brauchen, sagen Sie es uns.

Die Stimme transponieren

Mit preserve_voice=1 wird die Übersetzung nicht in einer unserer Katalogstimmen gelesen: Sie wird in der eigenen Stimme des Sprechers gelesen. Dieselbe Aufnahme erledigt beide Aufgaben, Transkription und Klonen, sodass es nichts weiter hochzuladen gibt.

curl -X POST "https://api.uttera.ai/v1/translate?target=en&response=both&preserve_voice=1" \
  -H "Authorization: Bearer $UTTERA_API_KEY" \
  -F file=@recording.mp3

Die Antwort trägt preserved_voice: true und voice: "original". Prüfen Sie es: So wissen Sie, ohne das Audio anzuhören, welches der beiden Produkte Ihnen geliefert wurde — denn sie kosten nicht dasselbe.

Im Inneren besteht der vollständige Ablauf aus drei Stufen bei einer einzigen Ihrer Anfragen:

StufeWas passiertAbgerechnet
1. TranskribierenIhre Aufnahme durchläuft die Spracherkennung.Pro Sekunde Eingangsaudio.
2. ÜbersetzenDer Text wird in die Zielsprache übersetzt.Im Kettenzuschlag enthalten.
3. SprechenDer übersetzte Text wird unter Klonen der Stimme derselben Aufnahme synthetisiert.Pro Sekunde erzeugtem Audio, zum Tarif der geklonten Stimme.
Es kostet erheblich mehr als das Übersetzen mit einer Katalogstimme. Eine Sekunde geklonter Stimme ist etwa 19-mal so viel wert wie eine Sekunde Standardstimme, und es ist dieselbe Engine und derselbe Preis wie das Klonen über /v1/audio/speech. Die Seite Studio zeigt Ihnen die geschätzten Kosten, bevor Sie es ausführen, mit bereits angehaktem Kästchen.
Was sie braucht und was nicht. Sie brauchen kein separates Stimmmuster: Die Aufnahme selbst genügt, und wir nehmen ihre ersten brauchbaren Sekunden. Wenn Sie Text statt Audio senden, wird preserve_voice mit 422 abgelehnt: Es gibt keine Stimme zum Transponieren. Und wenn Ihr Tarif kein Klonen umfasst, mit 403 und dem Namen des Parameters, den Sie weglassen müssen.

Die geklonte Stimme wird nicht gespeichert. Sie wird für diese eine Anfrage im Speicher abgeleitet und verschwindet mit ihr, genau wie beim Adhoc-Klonen.

Die Stimme analysieren

Drei Endpunkte über dasselbe Audio, jeder mit seinem eigenen Preis.

Sie können diese Analysen direkt, ohne Code zu schreiben, auf der Studio-Seite nutzen: Es sind Kästchen auf der Karte Audio transkribieren, angehakt über demselben Audio.

EndpunktWas er tut
POST /v1/audio/sentimentEmotionaler Ton der Aufnahme.
POST /v1/audio/profileSprecherprofil: geschätzte Altersspanne und Geschlecht.
POST /v1/audio/diarizeWer wann spricht, mit Zeitstempeln pro Sprecher.
curl -X POST https://api.uttera.ai/v1/audio/diarize \
  -H "Authorization: Bearer $UTTERA_API_KEY" \
  -F file=@recording.mp3
Das Profil ist eine akustische Schätzung, keine Tatsache über den Sprecher. Es beruht auf Merkmalen der Stimme und liegt daneben. Verwenden Sie es für nichts, was Konsequenzen für eine Person hat.

Eine Aufnahme zusammenfassen

POST /v1/summarize Professional und höher

Sie transkribiert, analysiert den Ton, erstellt ein Sprecherprofil, trennt die Sprecher und erzeugt aus alldem eine strukturierte Zusammenfassung. Die vier zugrunde liegenden Dienste laufen parallel, sodass die Wartezeit die des langsamsten ist, nicht die Summe.

Sie können diesen Dienst direkt, ohne Code zu schreiben, auf der Studio-Seite nutzen: Es ist ein weiteres Kästchen auf der Karte Audio transkribieren.

ParameterTypBeschreibung
fileDateiErforderlich. Die Aufnahme.
excludequeryDeaktiviert Anreicherungen: ?exclude=emotion,profile,diarize
languagequerySprache der Zusammenfassung. Standardmäßig Spanisch.

Sie gibt summary, transcript, enrichment und einen usage-Block mit den nach Stufen aufgeschlüsselten Credits zurück.

Ein Teilausfall bringt die Zusammenfassung nicht zu Fall. Wenn eine Anreicherung fehlschlägt, kommt die Antwort trotzdem mit einem warnings-Array heraus, und diese Stufe wird nicht berechnet.

Tokens bei Ihrem LLM sparen

Das ist die Nutzung der Zusammenfassung, die die wenigsten sehen und die am meisten Geld spart. Wenn Sie möchten, dass ein Sprachmodell eines anderen Anbieters — Claude, GPT, Gemini, welches auch immer — mit dem arbeitet, was in einem Anruf gesagt wurde, ist der teure Weg, ihm das ganze Transkript zu senden. Der günstige ist, ihm die Zusammenfassung zu senden.

Gemessen an einer echten 70-minütigen Aufnahme abwechslungsreicher Prosa, gezählt mit dem o200k_base-Tokenizer:

Was Sie dem LLM sendenWörterTokens
Vollständiges Transkript10.42915.410
Strukturierte Zusammenfassung294 – 422484 – 673

Es ist als Spanne angegeben, weil die Zusammenfassung nicht deterministisch ist: Dieselbe Aufnahme, zweimal ausgeführt, ergab 484 und 673 Tokens. Zwischen 20- und 30-mal weniger Eingabe-Tokens, und die Ersparnis wächst mit der Dauer: Das Transkript wächst geradlinig mit den Minuten der Aufnahme, die Zusammenfassung nicht — sie bleibt bei ein paar hundert Tokens. Bei einer kurzen Aufnahme macht es keinen Unterschied; bei einem Archiv von Anrufen ist es der Unterschied zwischen einer LLM-Rechnung, die Sie zahlen können, und einer, die Sie nicht zahlen können.

Und es gibt einen zweiten Effekt, bei dem es nicht um Geld geht. Wenn nur die Zusammenfassung zu diesem Dritten gelangt, verlassen die Aufnahme und das wörtliche Transkript diesen Ort nie. Weniger exponierte Fläche und ein Transfer weniger, den Sie in Ihrem Verzeichnis von Verarbeitungstätigkeiten rechtfertigen müssen.

Die Antwort liefert summary und transcript im selben Aufruf, sodass Sie nicht im Voraus wählen oder doppelt zahlen müssen: Sie entscheiden in Ihrem Code, welches der beiden zum LLM hochgeht.

Wann das eine schlechte Idee ist. Eine Zusammenfassung ist ein bewusster Informationsverlust. Wenn Ihr Prompt das wörtliche Zitat braucht, den genauen Moment, in dem etwas gesagt wurde, oder ein Detail, das einmal und beiläufig auftaucht — eine Bestellnummer, einen Betrag, einen Eigennamen — trägt die Zusammenfassung es womöglich nicht. Senden Sie dafür das Transkript oder beides. Die praktische Regel: Zusammenfassung für “worum ging es und was ist zu tun?”, Transkript für “was genau haben sie gesagt?”.

Es gibt ein vollständiges, ausführbares Beispiel — hier zusammenfassen, nur die Zusammenfassung an das LLM senden und die eingesparten Tokens zählen — in uttera-examples/llm-tokens.