hexgrad: Kokoro 82M
hexgrads Kokoro 82M genererer tale med en kompakt modell med 82 millioner parametere og en språkspesifikk forhåndsdefinert stemme. Den dokumenterte v1.0-profilen omfatter åtte språk, 54 stemmer og lydutdata ved 24 kHz.
Om modellen
Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.
Kokoro 82M er hexgrads tekst-til-tale-modell med åpne vekter og åttito millioner parametere. Modellkortet beskriver en kompakt arkitektur med bare dekoder, basert på StyleTTS 2 og iSTFTNet. Skriftlig tekst gjøres om til uttaleinformasjon og deretter tale med en valgt stemme. Den dokumenterte v1.0-utgivelsen tilbyr femtifire stemmer på åtte språk; denne profilen er forskjellig fra den tidligere v0.19-utgivelsen, som bare støtter engelsk.
Velg et passende språk og en stemme
Stemmekatalogen dekker amerikansk og britisk engelsk, japansk, mandarin, spansk, fransk, hindi, italiensk og brasiliansk portugisisk. De to engelske aksentene er varianter av ett språk. Stemmenavn og språkinnstillinger hører sammen: af_heart er et amerikansk-engelsk eksempel i den offisielle arbeidsflyten, mens katalogen har separate grupper for de andre språkene og aksentene.
Velg taleren med det faktiske materialet som skal leses i tankene. Et kort kursopptak kan bruke én konsistent forhåndsdefinert stemme i alle avsnittene; en flerspråklig samling kan velge en stemme fra hver nødvendig språkgruppe. Katalogdekningen varierer mellom gruppene. Fransk er for eksempel representert med én oppført stemme, i motsetning til det større utvalget for engelsk.
Forbered uttale og avsnitt
Kokoros referansepipeline gjør skriftlige former om til fonemer. Eksemplene tillater eksplisitt fonetisk lesemåte for et uttrykk, slik at et vanskelig navn kan forberedes i stedet for å overlates til en tvetydig skrivemåte. Sørg for at setningen rundt uttrykket er naturlig og bevar ordlyden lytteren skal høre.
Et praktisk avsnitt er: «Veiledningen har tre deler. Først velger du materialet. Deretter sammenligner du eksemplene. Til slutt lagrer du versjonen du vil bruke.» Skriv fullstendige fraser og behold pausene tegnsettingen antyder. For lengre materiale organiserer du inndataene i sammenhengende avsnitt i stedet for å behandle hele dokumentet som én uavbrutt ytring.
Stemmeveiledningen sier at mange talere fungerer best med avsnitt på omtrent 100–200 tokener innenfor et spenn på omtrent 500 tokener. Den påpeker svakheter ved svært korte ytringer, særlig under 10–20 tokener, og en tendens til å skynde seg gjennom lengre avsnitt, særlig utover 400 tokener. Dette er observasjoner om tokenbasert forberedelse, ikke grenser for antall ord eller opptaksvarighet. Sammenslåing av korte fragmenter eller oppdeling av et langt avsnitt kan gi en mer egnet taleenhet.
Lydutdata og tempo
Den offisielle arbeidsflyten gir behandlet tekst, fonemer og et lydresultat for hvert generert segment. Den lagrer segmentene som WAV ved 24 000 Hz og tilbyr en hastighetsinnstilling i referansepipelinen. Hold segmenttekst og rekkefølge knyttet til lyden slik at det sammensatte fortelleropptaket følger det tiltenkte manuset.
En nyttig redigeringskontroll er å lytte over grensen mellom to avsnitt og deretter undersøke tilbakevendende navn og tempoet i lister. Lydutdataene og fonemvisningen har ulike formål: det ene er opptaket lytteren hører, det andre hjelper med å undersøke hvordan den skriftlige teksten uttales.
Språkdekning og nyttige grenser
Produsenten påpeker uttrykkelig at støtte for andre språk enn engelsk kan være begrenset fordi uttalebehandling eller stemmetreningsdata er begrenset. De forhåndsdefinerte gruppene skal derfor ikke behandles som likeverdige garantier for fremføring av ethvert avsnitt. Velg en egnet taler og gjennomgå de faktiske navnene og formuleringene oppgaven krever.
Det nyttige resultatet er et muntlig avsnitt eller et sammensatt fortelleropptak med en dokumentert forhåndsdefinert stemme, der teksten er tilpasset behovene for uttale og avsnittslengde. Denne profilen følger produsentens v1.0-materiale for Kokoro 82M; en annen modellversjon, kvantisert implementasjon eller eksternt endret stemme har sitt eget tekniske omfang.
Ailoot Ultra · Talesyntese POST /v1/audio/speech hexgrad/kokoro-82m
hexgrad/kokoro-82mStart
hexgrads Kokoro 82M genererer tale med en kompakt modell med 82 millioner parametere og en språkspesifikk forhåndsdefinert stemme. Den dokumenterte v1.0-profilen omfatter åtte språk, 54 stemmer og lydutdata ved 24 kHz.
- Godkjente inndata
- Tekst
- Resultater
- Lyd
Tilgjengelig i Ailoot · inndata & metoder
Ailoot Ultra · Talesyntese POST /v1/audio/speech
- Inndatatyper
text- Utdatatyper
audio- Utdataformat
- mp3
| Felt | Type | Krav | Verdier & grenser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrevd | Verdier & grenser hexgrad/kokoro-82m | Standard— |
Feltinput | Typestring | KravPåkrevd | Verdier & grenser Minste lengde: 1 Enhet: Unicode-tegn | Standard— |
Feltvoice | Typestring | KravPåkrevd | Verdier & grenser 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åkrevd | Verdier & grenser mp3 | Standard— |
Kombinasjoner av inngående materialer
text_to_speech · Påkrevd: input
Metodeparametere og livssyklus
| Parameter | Avtale |
|---|---|
Parametercontent_type | Avtaleapplication/json |
Parameterrequired | Avtalemodel, input, voice, response_format |
Parametervoice_ids | Avtaleaf_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 | Avtalemp3 |
Parametermax_input_characters | Avtalenull |
Parameterother_options | Avtalefalse |
Parameterinput | AvtaleEksakt UTF-8-tekst; antall Unicode-tegn uten normalisering |
Parametermaterial_types | Avtaletext |
Livssyklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · faktisk returnert task_id eller oppføring i mediebiblioteket
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Velg den eksakte stemmen fra denne modellprofilen.
Inndatategn og lydsekunder er ulike måleenheter for forbruk.
Priser
Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.
- Hurtigmodus
- Ikke angitt Når hurtigmodus er valgt
- Flex-modus
- Ikke angitt Når flex-modus er valgt
- Maksimal resonneringsinnsats
- Ikke angitt Når justeringen «default» brukes for maksimal resonneringsinnsats
Ailoot-satser
Priser etter konfigurasjon
Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.
| Konfigurasjon | Prisplan | Fakturerbar mengde | Faktureringsenhet | Kostnad |
|---|---|---|---|---|
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Fakturerbar mengde— | Faktureringsenhet— | Kostnad Inndata · Inngående tokener — / 1K tokener Utdata · Utgående tokener — / 1K tokener Inndata · Lesing fra hurtigbuffer — / 1K tokener Inndata · Skriving til hurtigbuffer — / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time — / 1K tokener |
| KonfigurasjonUltra | Prisplan— | Fakturerbar mengdeHvert Unicode-kodepunkt teller som ett tegn, også Han-tegn. | Faktureringsenhetper 1K inndatategn | Kostnad Inndata · inndatategn $0.008 per 1K inndatategn |
Detaljer om referansetariffen
Referanseprisplaner på modellnivå endrer ikke metodevalg, prisoverslag eller kostnader. Aktive kostnader bruker satsene til den valgte Ailoot-metoden.
hexgrad: Kokoro 82M
Priser etter konfigurasjon
| Konfigurasjon | Faktureringsvilkår | Kostnad |
|---|---|---|
| Konfigurasjonhexgrad: Kokoro 82M · Standardkonfigurasjon | FaktureringsvilkårStandardkonfigurasjon | Kostnad Inndata · Inngående tegn 0,00000124 USD per inndatategn |
Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. Slik fungerer reservasjon og oppgjør →
Eksempelforespørsler
Ailoot Ultra · Talesyntese
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
Motta og lagre resultater
Ailoot Ultra · Talesyntese
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Andre innholdslesinger
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 ferdige resultater
Behold alle fullstendige returnerte svar, filer og innholdsdeler.
Bevar hele det binære resultatet og svarhodene. Hvis JSON eller flere utdata returneres, bevar hvert dataelement og hent innholdet fra hver faktiske signerte ressurs-URL.
Hvis det opprinnelige svaret må kontrolleres
Bevar opprinnelig operation_id/X-Client-Request-ID for avstemming uten ny innsending; det finnes ingen egen rute for å spørre etter lydstatus.
Svarfelter
| Felt | Type |
|---|---|
Feltbinary audio | Typebytes |
Feltresponse headers | Typeheaders |
Feil og neste trinn
| Svar | Vilkår | Neste trinn |
|---|---|---|
Svar400 · invalid_request_error | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |
Svarserver_error | VilkårDet returnerte svaret angir at operasjonen eller resultatet må kontrolleres | Neste trinnBevar den opprinnelige returnerte operasjons-/oppgave-ID-en, forespørselshodene og svaret; fortsett å lese den opprinnelige operasjonen på de støttede måtene. Ikke send opprettelsesforespørselen på nytt. |
Aliaser
Modellaliaser
Ailoot Ultra hexgrad/kokoro-82m
Aliaser for metodestier
Bruk metodestiene som vises ovenfor.
Tilknyttede anroper-ID-er
FAQ · hexgrad: Kokoro 82M
- Hvilke inndata og resultater er tilgjengelige?
POST /v1/audio/speech·hexgrad/kokoro-82m:text→audio- Hvilke felt bruker forespørselen?
POST /v1/audio/speech·hexgrad/kokoro-82m:model,input,voice,response_format