MoonshotAI: Kimi K3 (batch)
Kimi K3 on Moonshot AI:n natiivi multimodaalinen päättelymalli pitkiin ohjelmointitehtäviin ja tietotyöhön. Se lukee tekstiä, kuvia ja videoita, tuottaa tekstiä sekä tukee työkalupohjaisia työnkulkuja 1 048 576 tokenin kontekstilla ja vaiheiden yli säilytetyllä ajatteluhistorialla.
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
Kimi K3 on Moonshot AI:n avoimien mallipainojen multimodaalinen agenttimalli pitkäkestoiseen ohjelmointiin, tietotyöhön ja päättelyyn. Se yhdistää tekstin kuvien ja videoiden natiiviin visuaaliseen ymmärtämiseen sekä tuottaa tekstivastauksen tai työkalupyynnön. Valmistaja korostaa pitkiä kehitysistuntoja, suuria koodivarastoja ja tehtäviä, jotka käyttävät kuvakaappauksia tai visuaalista palautetta koodin rinnalla. Hyödyllinen toimeksianto määrittää halutun artefaktin, käytettävän näytön ja työn valmistumisen osoittavan ehdon.
Arkkitehtuuri ja pitkä konteksti
Mallikortti kuvaa harvan Mixture of Experts -arkkitehtuurin, jossa on yhteensä 2,8 biljoonaa parametria ja 104 miljardia aktivoitua parametria. Sen Stable LatentMoE -rakenne valitsee 16 asiantuntijaa 896:sta tokenia kohti ja käyttää Kimi Delta Attention- ja Attention Residuals -mekanismeja yhdessä portitetun attention-mekanismin kanssa. Tarkka kontekstipituus on 1 048 576 tokenia. Tämä tarjoaa tilaa laajalle tehtäväkontekstille eikä ole syy luopua lähderajoista tai tuloksen tarvitsemasta tilasta.
Julkaistu natiivi artefakti käyttää kvantisoinnin huomioivaa koulutusta MXFP4-painoilla ja MXFP8-aktivaatioilla. Se on valmistajan julkaisumuoto ja erillinen erikseen tarjotusta kvantisoidusta versiosta tai väitteestä, miten tietty reitti tarjoaa mallin. Avoimet painot ja suuri parametrimäärä eivät muuta aktiivisten parametrien lukua koko tallennus- tai laitteistovaatimukseksi.
Valmistele laaja ohjelmointitehtävä
Anna olennainen koodivarastoaineisto, nykyinen toiminta, pyydetty muutos ja yhteensopivuusrajoitteet. Yksilöi tuloksen kohdetiedostot tai -rajapinta, onnistumisen määrittävät tarkistukset ja mahdollinen annettu virhe tai ongelman paljastava syöte. Hyödyllinen tulos voi olla kohdennettu koodimuutos selityksineen ja todella suoritettujen tarkistusten näyttöineen eikä kuvaus toimista, joita ei koskaan tehty.
Lisää visuaaliseen kehitystehtävään kuvakaappaus tai selkeä näkymä tavoitellusta tuloksesta sekä olennainen koodi ja täsmällinen ristiriita. Valmistaja kuvaa käyttöliittymätyön, pelien ja CAD:n työnkulkuja, jotka käyttävät visuaalista palautetta. Pyydä muutosta, joka yhdistää koodin havaittuun tulokseen, ja säilytä viite, jotta toimitettu artefakti voidaan tarkistaa sitä vasten.
Kuvien, videoiden ja tietotyön valmistelu
Valmistajan pikaopas käyttää visuaalisissa viesteissä tyypitettyjä sisältöobjekteja; content on taulukko eikä sen sarjoitettu esitys. Kuvatyönkulku käyttää koodattua kuvadataa tai tuettua tiedostoviitettä julkisen kuvaosoitteen sijaan. Videoesimerkki lataa videotiedoston ja antaa syntyneen viitteen sekä sisältöä koskevan kysymyksen. Anna luettava lähde ja määritä olennainen havainto, aikaväli tai suhde. Valmistajan näkötyönkulku hyväksyy JPEG-, PNG-, GIF-, WebP-, BMP-, HEIC- ja HEIF-kuvat sekä MP4-, MPEG-, MOV-, AVI-, FLV-, MPG-, WebM-, WMV- ja 3GPP-videot. Animoitu GIF tai WebP voidaan dekoodata videona. Anna SVG-lähde tekstinä. Valmistaja suosittelee enintään 4 096 × 2 160 -kuvia ja 1 920 × 1 080 -videoita; nämä ovat resoluutiosuosituksia eivätkä hylkäysrajoja. Pidä pyynnön sisältö dokumentoidun 100M-kokorajan sisällä ja lataa suuret tai toistuvasti käytetyt mediat tiedostoina.
Merkitse asiakirjapainotteisen tutkimuksen lähteet tunnistein ja ilmoita lopullisen raportin vastattavat kysymykset. Yksilöi videoselityksessä analysoitavat tapahtumat tai tapahtumaketju rajattoman kommentoinnin pyytämisen sijaan. K3 käyttää visuaalista sisältöä päättelyn näyttönä ja palauttaa tekstiä tai työkalupyyntöjä. Sovellus voi välittää pyynnöt mediatyökaluille erillisten kuva- tai videoartefaktien luomiseksi.
Ajattelu on aina käytössä
K3:n valmistajarajapinnassa ajattelu on aina käytössä. Ylimmän tason reasoning_effort-asetus hyväksyy arvot low, high ja max, joista max on oletus. Valinnat ovat mallikohtaisia; ajattelun poistavaa asetusta tai toisen perheen panosarvoa ei tule olettaa. Valmistajan siirtymisohje erottaa K3:n K2.x:stä käyttämällä reasoning_effort-asetusta vanhemman thinking-konfiguraation siirtämisen sijaan.
Valmistaja dokumentoi suoratoistetuissa tuloksissa erillisen reasoning_content-sisällön ja lopullisen vastauksen sisällön. Monivuoroisessa keskustelussa tai työkalutyönkulussa se edellyttää koko palautetun avustajaviestin lähettämistä takaisin muuttumattomana, mukaan lukien reasoning_content ja tool_calls. Pelkän näkyvän lopullisen vastauksen säilyttäminen hukkaa tietoa, jota mallin säilytetyn ajattelun työnkulku odottaa seuraavassa vaiheessa.
Rakenteiset lopulliset vastaukset ja osittainen jatkaminen
Pikaopas dokumentoi tiukan JSON-skeematulosteen lopullisen viestin sisällölle. Määritä kentät ja niiden merkitykset sovelluksen tarvitseman artefaktin ympärille ja jäsennä lopullinen sisältö sen sijaan, että yhdistäisit sen päättelykenttään. Rakenteinen tulos voi esittää annetusta aineistosta poimittuja tietoja tai määritetyn raporttimuodon; skeema rajoittaa rakennetta, kun taas lähdenäyttö ratkaisee arvojen oikeellisuuden.
Partial-tila voi jatkaa annettua tekstin alkukatkelmaa. Valmistajan esimerkki sijoittaa osittaisen avustajaviestin historian loppuun ja yhdistää alkukatkelman palautettuun jatkoon näyttämistä varten. Käytä tätä, kun vaaditulla artefaktilla on merkityksellinen kiinteä alku, ja pidä alkukatkelma erillään tuotetusta loppuosasta.
Työkalut ja niiden tulosten jatkuvuus
K3 tukee mukautettuja funktiotyökaluja. Valmistajan esimerkki vaatii työkalua ensimmäisellä vuorolla, säilyttää koko avustajaviestin, suorittaa jokaisen palautetun kutsun ja lisää vastaavan työkalutuloksen ennen lopullisen vastauksen pyytämistä. Ehdotettu kutsu ei ole näyttö toiminnon onnistumisesta; todella palautettu tulos muodostaa seuraavan vaiheen näytön.
Sen dynaamisen latauksen työnkulku tuo täydellisen työkalumäärittelyn tiettyyn kohtaan viestihistoriaa. Määrittely tarvitsee nimen, tarkoituksen ja parametrit, ja sen on säilyttävä myöhemmässä historiassa, koska palvelin ei säilytä ilmoitusta itsenäisesti. Pidä työkalujen kyvyt, annetut argumentit ja todelliset havainnot yhteydessä toisiinsa, jotta pitkä tehtävä voi jatkaa jo tehdystä työstä.
Tulosteen ohjaus ja toistuva konteksti
Valmistaja dokumentoi oletusarvoisen 131 072 tokenin vastausvaran, jota voidaan säätää enintään 1 048 576 tokeniin mallin kokonaiskontekstin rajoissa. Sen nykyinen K3 API kiinnittää temperature-arvoksi 1.0, top_p-arvoksi 0.95, tulosten määräksi yhden sekä presence- ja frequency-penalty-arvoiksi nollan ja ohjaa kutsujia jättämään nämä otantaohjaimet pois. Nämä ovat nimenomaisen valmistajavariantin asetukset eivätkä siirrettävä luettelo säädettävistä ohjaimista.
Kontekstin välimuistitus on automaattinen ehdot täyttäville toistuville tekstin alkukatkelmille; dokumentoidut TTL-vaihtoehdot ovat 5 minuuttia ja 1 tunti, ja oletus on 5 minuuttia. Osittaiset välimuistilohkot jäävät osumattomiksi. Pidä uudelleenkäytettävä konteksti vakaana ja tarkista todellinen käyttö sen sijaan, että väittäisit välimuistiosuman syntyneen pelkästä toistuvasta tekstistä. Säilytä lopullista artefaktia varten annetut lähteet, todellinen työkalunäyttö ja vaadittu tulosrakenne sekä tarkista, että pitkä vastaus tai kehitystulos täyttää ilmoitetut valmistumiskriteerit.
Ailoot Ultra · Eräajo POST /v1/batches moonshotai/kimi-k3:batch
moonshotai/kimi-k3:batchAloitus
Kimi K3 on Moonshot AI:n natiivi multimodaalinen päättelymalli pitkiin ohjelmointitehtäviin ja tietotyöhön. Se lukee tekstiä, kuvia ja videoita, tuottaa tekstiä sekä tukee työkalupohjaisia työnkulkuja 1 048 576 tokenin kontekstilla ja vaiheiden yli säilytetyllä ajatteluhistorialla.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- Teksti
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Eräajo POST /v1/batches
- Syötetyypit
text- Tulostyypit
text- Tulosteen muoto
- vastaukseen sisältyvä JSON kentässä results[].response.body
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttäendpoint | Tyyppistring | VaatimusPakollinen | Arvot & rajat /v1/chat/completions | Oletus— |
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat moonshotai/kimi-k3:batch | Oletus— |
Kenttärequests | Tyyppibatch_item[] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
Kenttärequests[].custom_id | Tyyppistring | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttärequests[].body.messages | Tyyppimessage[] | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttäcompletion_window | Tyyppistring | VaatimusValinnainen | Arvot & rajat 24h | Oletus— |
Kenttäprovider | Tyyppiobject|null | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttärequests[].body.model | Tyyppistring | VaatimusValinnainen | Arvot & rajat moonshotai/kimi-k3:batch, moonshotai/kimi-k3 | Oletus— |
Kenttäprovider.only | Tyyppistring[] | VaatimusValinnainen | Arvot & rajat deepinfra/bf16 | Oletus— |
Kenttäprovider.allow_fallbacks | Tyyppiboolean|null | VaatimusValinnainen | Arvot & rajat false, null | Oletus— |
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusendpoint, model, requests |
Parametrimaterial_types | Sopimustext |
Parametrirepresentation | Sopimuspyyntöön sisältyvä requests[]; jokaisella alkiolla on custom_id ja body |
Parametrirequest_endpoint_profile | Sopimus/v1/chat/completions |
Parametrifile_material | SopimusKutsuja voi lukea todellisen UTF-8 JSONL -aineiston paikallisesti requests[]-taulukkoon. Latauksen purpose-arvoa, input_file_id-arvoa tai tiedostoviitettä ei käytetä. Puuttuva tai tyhjä asiakkaan aineisto keskeyttää valmistelun ennen POST-pyyntöä. |
Parametriserialization_order | Sopimusendpoint, model, provider (jos annettu), completion_window (jos annettu), requests viimeisenä |
Parametrioptional_controls | Sopimusprovider.only, provider.allow_fallbacks, completion_window |
Parametrischema_scope | SopimusTekstimuotoiset Chat Completions -pyyntörungot dokumentoidussa pyyntöön sisältyvässä Batch-kääreessä. |
Elinkaari: asynchronous
GET /v1/batches/{operation_id} · alkuperäisen luontivastauksen todellinen response.id; sama käyttäjä, avain ja ryhmä
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Ei määritetty Kun nopea tila on valittu
- Flex-tila
- Ei määritetty Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
- Eksplisiittisen välimuistin hinnoittelu
- Ei käytössä Kun eksplisiittistä välimuistia pyydetään
Ailoot-hinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Kontekstin tokenit, enemmän kuin | Kontekstin tokenit, enintään raja-arvo mukaan lukien | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Kontekstin tokenit, enemmän kuin— | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.00456 / 1K tokenia Tuloste · Tulostokenit $0.0228 / 1K tokenia Syöte · Välimuistin luku $0.000456 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
| AsetuksetPyynnön pituusluokka 1 | Hinnasto— | Kontekstin tokenit, enemmän kuin0 | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.00456 / 1K tokenia Tuloste · Tulostokenit $0.0228 / 1K tokenia Syöte · Välimuistin luku $0.000456 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Eräajo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"moonshotai/kimi-k3:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen
def prepare_requests(customer_path):
path = Path(customer_path)
if not path.is_file(): raise ValueError("Customer JSONL file is missing")
items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
if not items: raise ValueError("Customer JSONL contains no requests")
ids = set()
for item in items:
if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
cid = item["custom_id"]
if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
ids.add(cid)
if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
supplied_model = item["body"].get("model")
if supplied_model is not None and supplied_model not in ['moonshotai/kimi-k3:batch', 'moonshotai/kimi-k3']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"moonshotai/kimi-k3:batch", "requests":items}
if __name__ == "__main__":
material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
body = prepare_requests(material)
key = os.environ.get("AILOOT_API_KEY", "")
if not key: raise SystemExit("Set AILOOT_API_KEY")
request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
with urlopen(request) as response:
raw = response.read()
Path("batch-create-response.json").write_bytes(raw)
print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
Vastaanota ja tallenna tulokset
Ailoot Ultra · Eräajo
vastaukseen sisältyvä JSON kentässä results[].response.body
GET /v1/batches/{operation_id}
Tarkista työn tila
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä koko alkuperäinen tilatiedot sisältävä JSON, jokainen tulos ja custom_id sekä täydellinen vastaus- tai virherunko. Tallenna valmistuneet results[]-tulokset JSONL-muodossa suodattamatta.
Jos alkuperäinen vastaus on tarkistettava
Säilytä alkuperäinen operaation ID. 503 result_pending_check sisältää otsakkeen X-Should-Retry:false; älä koskaan lähetä uudelleen alkuperäistä eräajoa, jonka tila on tuntematon.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäresults[].custom_id | Tyyppistring |
Kenttäresults[].response.body.choices[].message.content | Tyyppistring|null |
Kenttäresults[].error | Tyyppiobject|null |
Kenttäusage | Tyyppiobject|null |
Kenttäid | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttäendpoint | Tyyppistring |
Kenttästatus | Tyyppistring |
Kenttärequest_counts | Tyyppiobject |
Kenttäresults[].id | Tyyppistring |
Kenttäresults[].response.status_code | Tyyppiinteger |
Kenttäresults[].response.request_id | Tyyppistring |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoDokumentoitu pyyntöön sisältyvä kääre on virheellinen, avaimet ovat päällekkäisiä, alkion identiteetti on virheellinen tai määritetyt mallin ominaisuudet ovat ristiriidassa. | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta lähetystä. |
Vastaus401 · authentication_error | EhtoVirheellinen API-avain. | Seuraava vaiheKäytä valtuutettua Ailoot-avainta. |
Vastaus403 · permission_error | EhtoEräajoryhmä ei ole käytettävissä. | Seuraava vaiheTarkista avaimen ja ryhmän käyttöoikeudet. |
Vastaus422 · invalid_request_error | EhtoEräajo laskutetaan saldosta; tilauspohjaisella laskutuksella tehty eräajon luontipyyntö hylätään. | Seuraava vaiheKäytä valtuutettua saldosta laskutettavaa ryhmää. |
Vastaus422 · price_unavailable | EhtoEräajon syötteelle ei voida laskea hinta-arviota. | Seuraava vaiheSäilytä vastaus; käytä dokumentoitua API-perheen syötettä. |
Vastaus402 · billing_error | EhtoEräajon varaus ei ole käytettävissä. | Seuraava vaihePoista pyynnön hyväksymisen esteet ennen uutta pyyntöä. |
Vastaus503 · price_unavailable | EhtoEräajomenetelmän hinta tai natiivit hinnat eivät ole käytettävissä. | Seuraava vaiheSäilytä vastaus; älä korvaa hintoja toisilla. |
Vastaus503 · api_error | EhtoTäsmällinen toimittajan reitti ei ole käytettävissä. | Seuraava vaiheSäilytä vastaus reitin korjaamista varten. |
Vastaus503 · result_pending_check | EhtoAlkuperäinen tulos edellyttää tarkistusta; X-Should-Retry:false. | Seuraava vaiheSäilytä alkuperäinen operation_id/id ja lue sen tila; älä koskaan toista alkuperäistä POST-pyyntöä. |
Vastaus404 · not_found | EhtoEräajon tilan operaatiota ei ole tai se kuuluu toiselle identiteetille. | Seuraava vaiheKäytä täsmälleen alkuperäistä id-arvoa sekä samaa käyttäjää, avainta ja ryhmää. |
Aliakset
Mallin aliakset
Ailoot Ultra moonshotai/kimi-k3:batch
Menetelmäpolkujen aliakset
Käytä yllä näytettyjä menetelmäpolkuja.
Liittyvät kutsujan ID:t
FAQ · MoonshotAI: Kimi K3 (batch)
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/batches·moonshotai/kimi-k3:batch:text→text- Mitä kenttiä pyyntö käyttää?
POST /v1/batches·moonshotai/kimi-k3:batch:endpoint,model,requests,completion_window,provider- Mitä rajoja sovelletaan?
POST /v1/batches·moonshotai/kimi-k3:batch:requests.min_items:1