hexgrad: Kokoro 82M
hexgrads Kokoro 82M genererer tale med en kompakt model på 82 millioner parametre og en sprogspecifik forudindstillet stemme. Den dokumenterede v1.0-profil omfatter otte sprog, 54 stemmer og lydoutput ved 24 kHz.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Kokoro 82M er hexgrads tekst-til-tale-model med åbne vægte og toogfirs millioner parametre. Modelkortet beskriver en kompakt arkitektur, der kun består af en dekoder, baseret på StyleTTS 2 og iSTFTNet. Skrevet tekst omdannes til udtaleinformation og derefter til tale med en valgt stemme. Den dokumenterede v1.0-udgivelse tilbyder fireoghalvtreds stemmer på otte sprog; denne profil adskiller sig fra den tidligere v0.19-udgivelse, der kun understøtter engelsk.
Vælg et passende sprog og en passende stemme
Stemmekataloget dækker amerikansk og britisk engelsk, japansk, mandarin-kinesisk, spansk, fransk, hindi, italiensk og brasiliansk portugisisk. De to engelske accenter er varianter af ét sprog. Stemmenavne og sprogindstillinger hører sammen: af_heart er et amerikansk-engelsk eksempel i den officielle arbejdsgang, mens kataloget har særskilte grupper til de øvrige sprog og accenter.
Vælg taleren med udgangspunkt i det materiale, den faktisk skal læse. En kort kursusfortælling kan bruge én ensartet forudindstillet stemme gennem alle afsnit; en flersproget samling kan vælge en stemme fra hver nødvendig sproggruppe. Katalogets dækning varierer mellem grupperne. Fransk er for eksempel repræsenteret med én angivet stemme frem for det større udvalg på engelsk.
Forbered udtale og passager
Kokoros referencepipeline omdanner skriftformer til fonemer. Eksemplerne tillader en eksplicit fonetisk læsning af et udtryk, så et vanskeligt navn kan forberedes frem for at overlades til en tvetydig stavemåde. Behold en naturlig omgivende sætning, og bevar den ordlyd, lytteren skal høre.
En praktisk passage er: »Vejledningen har tre dele. Vælg først materialet. Sammenlign derefter eksemplerne. Gem til sidst den version, du vil bruge.« Skriv hele fraser, og behold de pauser, som tegnsætningen antyder. Til et langt værk skal inputtet organiseres i sammenhængende afsnit frem for at behandle hele dokumentet som én uafbrudt ytring.
Stemmevejledningen siger, at mange talere fungerer bedst med passager på omkring 100–200 tokens inden for et spænd på cirka 500 tokens. Den nævner svagheder ved meget korte ytringer, især under 10–20 tokens, og en tendens til at haste gennem længere passager, især over 400 tokens. Det er tokenbaserede observationer til forberedelsen, ikke grænser for ordantal eller optagelseslængde. Ved at samle korte fragmenter eller opdele en lang passage kan du skabe en mere egnet taleenhed.
Lydoutput og tempo
Den officielle arbejdsgang leverer den behandlede tekst, fonemerne og et lydresultat for hvert genereret segment. Den gemmer segmenterne som WAV ved 24.000 Hz og stiller en hastighedsindstilling til rådighed i referencepipelinen. Knyt segmenternes tekst og rækkefølge til lyden, så den samlede fortælling følger det tilsigtede manuskript.
En nyttig redigeringskontrol er at lytte hen over grænsen mellem to passager og derefter undersøge tilbagevendende navne og tempoet i opremsninger. Lydoutputtet og fonemvisningen tjener forskellige formål: det ene er optagelsen, som lytteren hører, mens det andet hjælper med at undersøge, hvordan den skrevne tekst udtales.
Sprogdækning og nyttige begrænsninger
Producenten bemærker udtrykkeligt, at understøttelsen af andre sprog end engelsk kan være begrænset, fordi udtalebehandlingen eller stemmernes træningsdata er sparsomme. De forudindstillede grupper bør derfor ikke behandles som lige stærke garantier for fremførelsen af enhver passage. Vælg en passende taler, og gennemgå de faktiske navne og formuleringer, som opgaven kræver.
Det nyttige resultat er en talt passage eller en samlet fortælling med en dokumenteret forudindstillet stemme og tekst, der er forberedt efter dens behov for udtale og passagelængde. Denne profil følger producentens v1.0-materiale til Kokoro 82M; et andet checkpoint, en kvantiseret implementering eller en eksternt ændret stemme har sit eget tekniske anvendelsesområde.
Ailoot Ultra · Oplæsning POST /v1/audio/speech hexgrad/kokoro-82m
hexgrad/kokoro-82mStart
hexgrads Kokoro 82M genererer tale med en kompakt model på 82 millioner parametre og en sprogspecifik forudindstillet stemme. Den dokumenterede v1.0-profil omfatter otte sprog, 54 stemmer og lydoutput ved 24 kHz.
- Accepterede input
- Tekst
- Resultater
- Lyd
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Oplæsning POST /v1/audio/speech
- Inputtyper
text- Outputtyper
audio- Outputformat
- mp3
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser hexgrad/kokoro-82m | Standard— |
Feltinput | Typestring | KravPåkrævet | Værdier og grænser Minimumslængde: 1 Enhed: Unicode-tegn | Standard— |
Feltvoice | Typestring | KravPåkrævet | Værdier og grænser af_alloy, af_aoede, af_bella, af_heart, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky, am_adam, am_echo, am_eric, am_fenrir, am_liam, am_michael, am_onyx, am_puck, am_santa, bf_alice, bf_emma, bf_isabella, bf_lily, bm_daniel, bm_fable, bm_george, bm_lewis, ef_dora, em_alex, em_santa, ff_siwis, hf_alpha, hf_beta, hm_omega, hm_psi, if_sara, im_nicola, jf_alpha, jf_gongitsune, jf_nezumi, jf_tebukuro, jm_kumo, pf_dora, pm_alex, pm_santa, zf_xiaobei, zf_xiaoni, zf_xiaoxiao, zf_xiaoyi, zm_yunjian, zm_yunxi, zm_yunxia, zm_yunyang | Standard— |
Feltresponse_format | Typestring | KravPåkrævet | Værdier og grænser mp3 | Standard— |
Kombinationer af inputmaterialer
text_to_speech · Påkrævet: input
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, input, voice, response_format |
Parametervoice_ids | Kontraktaf_alloy, af_aoede, af_bella, af_heart, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky, am_adam, am_echo, am_eric, am_fenrir, am_liam, am_michael, am_onyx, am_puck, am_santa, bf_alice, bf_emma, bf_isabella, bf_lily, bm_daniel, bm_fable, bm_george, bm_lewis, ef_dora, em_alex, em_santa, ff_siwis, hf_alpha, hf_beta, hm_omega, hm_psi, if_sara, im_nicola, jf_alpha, jf_gongitsune, jf_nezumi, jf_tebukuro, jm_kumo, pf_dora, pm_alex, pm_santa, zf_xiaobei, zf_xiaoni, zf_xiaoxiao, zf_xiaoyi, zm_yunjian, zm_yunxi, zm_yunxia, zm_yunyang |
Parameterresponse_format | Kontraktmp3 |
Parametermax_input_characters | Kontraktnull |
Parameterother_options | Kontraktfalse |
Parameterinput | Kontraktpræcis UTF-8-tekst; antal Unicode-tegn uden normalisering |
Parametermaterial_types | Kontrakttext |
Livscyklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · det faktisk returnerede task_id eller posten i mediebiblioteket
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Vælg den præcise stemme fra denne modelprofil.
Inputtegn og lydsekunder er forskellige måleenheder.
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Ailoot-takster
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Afregningsmængde | Afregningsenhed | Beløb |
|---|---|---|---|---|
| KonfigurationGrundpriser for tokens | TakstplanGrundtakst | Afregningsmængde— | Afregningsenhed— | Beløb Input · Inputtokens — / 1K tokens Output · Outputtokens — / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
| KonfigurationUltra | Takstplan— | AfregningsmængdeHvert Unicode-kodepunkt tæller som ét tegn, herunder Han-tegn. | Afregningsenhedpr. 1K inputtegn | Beløb Input · inputtegn $0.008 pr. 1K inputtegn |
Detaljer om referencetariffen
Referenceplaner på modelniveau ændrer ikke metodevalg, prisoverslag eller opkrævninger. Ved den aktive afregning anvendes taksterne for den valgte Ailoot-metode.
hexgrad: Kokoro 82M
Priser efter konfiguration
| Konfiguration | Afregningsbetingelser | Beløb |
|---|---|---|
| Konfigurationhexgrad: Kokoro 82M · Standardkonfiguration | AfregningsbetingelserStandardkonfiguration | Beløb Input · Inputtegn 0,00000124 US$ pr. inputtegn |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Oplæsning
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "hexgrad/kokoro-82m", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["af_alloy", "af_aoede", "af_bella", "af_heart", "af_jessica", "af_kore", "af_nicole", "af_nova", "af_river", "af_sarah", "af_sky", "am_adam", "am_echo", "am_eric", "am_fenrir", "am_liam", "am_michael", "am_onyx", "am_puck", "am_santa", "bf_alice", "bf_emma", "bf_isabella", "bf_lily", "bm_daniel", "bm_fable", "bm_george", "bm_lewis", "ef_dora", "em_alex", "em_santa", "ff_siwis", "hf_alpha", "hf_beta", "hm_omega", "hm_psi", "if_sara", "im_nicola", "jf_alpha", "jf_gongitsune", "jf_nezumi", "jf_tebukuro", "jm_kumo", "pf_dora", "pm_alex", "pm_santa", "zf_xiaobei", "zf_xiaoni", "zf_xiaoxiao", "zf_xiaoyi", "zm_yunjian", "zm_yunxi", "zm_yunxia", "zm_yunyang"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
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/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o speech.mp3
Hent og gem resultater
Ailoot Ultra · Oplæsning
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Læsning af andet indhold
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hele det binære resultat og alle headere. Hvis der returneres JSON eller flere output, skal du gemme hvert dataelement og hente alle de faktiske signerede asset-URL'er.
Hvis det oprindelige svar skal kontrolleres
Gem det oprindelige operation_id/X-Client-Request-ID til afstemning uden genindsendelse; der er ingen særskilt rute til polling af lyd.
Svarfelter
| Felt | Type |
|---|---|
Feltbinary audio | Typebytes |
Feltresponse headers | Typeheaders |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Svarserver_error | BetingelseDet returnerede svar angiver, at operationen eller resultatet skal kontrolleres | Næste trinGem det oprindeligt returnerede operations-/opgave-ID, anmodningens headere og svaret; fortsæt med de understøttede læseanmodninger for den oprindelige operation. Send ikke oprettelsesanmodningen igen. |
Aliaser
Modelaliaser
Ailoot Ultra hexgrad/kokoro-82m
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · hexgrad: Kokoro 82M
- Hvilke input og resultater er tilgængelige?
POST /v1/audio/speech·hexgrad/kokoro-82m:text→audio- Hvilke felter bruger anmodningen?
POST /v1/audio/speech·hexgrad/kokoro-82m:model,input,voice,response_format