Source: https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/
Canonical: https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/
Language: uz

# Kimi Dev 72B

[Markdown](https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/index.md) · [JSON](https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/facts.json)

## [Kimi Dev 72B](https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/)

Kimi-Dev-72B — Moonshot AI kompaniyasining dasturiy muammolarni hal qilish uchun kod modeli. Uning dizayni xato tuzatishni regressiya testi yozish bilan birlashtiradi: tegishli fayllarni topish, tuzatish taklif qilish va asl xatoni ko‘rsatadigan test yaratish.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/moonshotai-kimi-dev-72b/#method-1)

Model haqida

Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.

Kimi-Dev-72B — Moonshot AI kompaniyasining dasturiy muhandislik vazifalari, ayniqsa mavjud repozitoriylardagi muammolarni hal qilishga yo‘naltirilgan dasturlash til modeli. U matnni qabul qilib, kod takliflari, tushuntirishlar va testlarni o‘z ichiga olgan matn yaratadi. Uning dizayni Qwen 2.5 72B bazaviy modelidan boshlanib, xato hisobotini ko‘rib chiqiladigan o‘zgarishga aylantirish uchun zarur qobiliyatlarni rivojlantiradi.

BugFixer va TestWriter. Ishlab chiqaruvchi yechimni tuzatish va uning nuqsonini qayta ko‘rsatadigan testni yozishni bir-birini to‘ldiradigan ko‘nikmalar deb biladi. Ikkalasi bir xil ikki bosqichli tuzilmadan foydalanadi: e’tibor talab qiladigan faylni aniqlash, keyin tegishli kod tahririni qilish. Foydali tuzatish testi xato mavjud bo‘lganda muvaffaqiyatsiz, ko‘zlangan tuzatish qo‘llanganda esa muvaffaqiyatli bo‘ladi. Bu modelga hisobot, yechim va bajariladigan dalil o‘rtasidagi bog‘liqlikka amaliy e’tibor beradi.

Oraliq o‘qitish. Jamoa yuqori sifatli haqiqiy materiallardan, jumladan millionlab muammolar va pull-request kommitlaridan taxminan 150 milliard token qo‘shimcha o‘qitilganini bildiradi. Bu bosqich dasturchilar hisobotni qanday tekshirishi, kodni tahrirlashi va unit-test yozishidagi naqshlarni o‘rgatadi. Jamoa baholash ma’lumotlarining o‘qitishga aralashishini kamaytirish uchun SWE-bench Verified repozitoriylarini ushbu o‘qitish to‘plamidan chiqarib tashlaydi.

Mustahkamlash orqali o‘qitish. Nazoratli qo‘shimcha moslab o‘qitishdan keyin mustahkamlash orqali o‘qitish bosqichi kod o‘zgarishlariga qaratiladi. Mukofot konteynerlashtirilgan repozitoriydagi yakuniy bajarilish natijasidan foydalanadi; ishlab chiqaruvchi muvaffaqiyatni to‘liq test to‘plamining o‘tishi bilan ta’riflaydi. O‘qitish jarayoni bir necha tanlangan urinishning barchasi muvaffaqiyatsiz bo‘lgan vazifalarni filtrlab chiqaradi, asta-sekin murakkabroq promptlarni kiritadi va samarali tuzatish usullarini mustahkamlash uchun yaqindagi muvaffaqiyatli misollardan qayta foydalanadi.

Haqiqiy muammoni tayyorlang. Kutilgan xatti-harakat, kuzatilgan natija va minimal qayta ko‘rsatishni bering, keyin tegishli manba fayllari, xato chiqishi va mavjud testlarni kiriting. Fayl yo‘llari va funksiya nomlarini o‘zgartirmang. Modeldan tuzatish taqdim etishdan oldin ehtimoliy faylni aniqlash va xato berilgan yechimdan qanday kelib chiqishini tushuntirishni so‘rang. Hosil bo‘lgan material qaysi kod o‘zgarishi, o‘zgarish nega hisobotdagi muammoni hal qilishi va qaysi mavjud xatti-harakatni saqlashi shartligini aytishi kerak.

Regressiya testini tayyorlang. Loyihaning joriy test qoidalari va namunaviy test ma’lumotlarini bering. Asl xatoni keltirib chiqaradigan testni, to‘g‘ri va noto‘g‘ri xatti-harakatni farqlaydigan tasdiq sharti bilan so‘rang. Chegaraviy holat hisobotida umumiy qo‘shimcha qamrov so‘rash o‘rniga chegara shartini nomlang. Foydali javob minimal tahrir va aniq yo‘naltirilgan testni birga berib, tekshiruvchiga taklif etilgan tuzatishni muammo bilan bevosita solishtirishga imkon yaratadi.

Sinov vaqtida o‘zaro sinash. Moonshot tadqiqot jarayoni xato tuzatish va test yozish takliflariga bir-birini tekshirish imkonini ham beradi. Bu model atrofidagi baholash va muvofiqlashtirish usuli: test nomzodi tuzatishga qarshi sinov bo‘lishi, tuzatish esa test bilan tekshirilishi mumkin. Ilovada ayni g‘oya yakuniy tahrirni qabul qilishdan oldin taklif etilgan tuzatishga qarshi misol so‘raydigan ko‘rib chiqish so‘roviga yo‘l ko‘rsatishi mumkin.

Matnli javob haqiqiy repozitoriyda qo‘llanib, sinab ko‘rilmaguncha taklifdir. Fayllarga kirish, tahrirlar, konteynerda bajarish va test natijalari tashqi ishlab chiqish muhitidan keladi. Model xayoliy ishga tushirish emas, kuzatilgan xato ustida mulohaza yuritishi uchun shu tekshiruvlar natijalarini keyingi so‘rovga kiriting. Muammo yetuk kod bazasiga tegishli bo‘lganda loyiha cheklovlarini saqlang va eng kichik asoslangan o‘zgarishni so‘rang.

Amaliy vazifa

### Amaliy vazifa

Ingliz tilidagi texnik misol

```
Fix a mutable default argument

Issue in utils.py: def add_tag(tag, tags=[]): tags.append(tag); return tags. Separate calls unexpectedly share prior tags. Expected behavior: omitted tags starts a fresh list; an explicitly supplied list is still updated. Propose the smallest patch and a regression test using standard unittest that fails on the original. Keep the function name and argument order.
```

#### Kutiladigan natija

```
A focused utils.py patch and unittest cases covering independent defaults and explicit-list mutation.
```

#### Natijani tekshirish

```
Check the regression makes two independent calls and detects leakage between them.
```

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `moonshotai/Kimi-Dev-72B`

[`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=chat)

Boshqa /`moonshotai/Kimi-Dev-72B`

### Boshlash

Kimi-Dev-72B — Moonshot AI kompaniyasining dasturiy muammolarni hal qilish uchun kod modeli. Uning dizayni xato tuzatishni regressiya testi yozish bilan birlashtiradi: tegishli fayllarni topish, tuzatish taklif qilish va asl xatoni ko‘rsatadigan test yaratish.

Qabul qilinadigan kirish ma’lumotlari

Matn

Natijalar

Matn

### Ailoot da mavjud · kirish ma’lumotlari va usullar

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Kirish

`text`

Chiqish

`text`

Chiqish formati

json yoki SSE

| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
| --- | --- | --- | --- | --- |
| Maydon`model` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar moonshotai/Kimi-Dev-72B | Standart— |
| Maydon`messages` | Tur`message[]` | TalabMajburiy | Qiymatlar va cheklovlar Elementlarning eng kam soni: 1 | Standart— |
| Maydon`messages[].role` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar Namunalar: system, user, assistant, tool, function Shartlar: Bu rollar manba kodining moslik turlarida ochiq ifodalangan; aniq rollar to‘plami har bir modelga xos bo‘lib qoladi. Modelga bogʻliq | Standart— |
| Maydon`messages[].content` | Tur`string\|content_part[]\|null` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
| Maydon`messages[].tool_calls` | Tur`tool_call[]` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
| Maydon`messages[].tool_call_id` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: role=tool; haqiqatan qaytarilgan IDdan foydalaning | Standart— |
| Maydon`messages[].name` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
| Maydon`messages[].reasoning_content` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: Ushbu model foydalanganda, haqiqatan qaytarilgan fikrlash ma’lumotlarini keyingi so‘rovda qayta yuboring | Standart— |
| Maydon`messages[].reasoning_details` | Tur`object\|array` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`max_tokens` | Tur`integer` | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Modelga bogʻliq | Standart— |
| Maydon`max_completion_tokens` | Tur`integer` | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Modelga bogʻliq | Standart— |
| Maydon`stream` | Tur`boolean` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |
| Maydon`stream_options.include_usage` | Tur`boolean` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`temperature` | Tur`number` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`top_p` | Tur`number` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`stop` | Tur`string\|string[]` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`tools` | Tur`function_tool[]` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`tools[].type` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar function Modelga bogʻliq | Standart— |
| Maydon`tools[].function.name` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar Quyidagi holatda qo‘llanadi: Funksiya vositasi taqdim etilgan | Standart— |
| Maydon`tools[].function.description` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
| Maydon`tools[].function.parameters` | Tur`JSON_schema` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standart— |
| Maydon`tool_choice` | Tur`string\|object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`parallel_tool_calls` | Tur`boolean` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`response_format` | Tur`object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`reasoning_effort` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`reasoning` | Tur`object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`service_tier` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`instructions` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Moslik maydoni | Standart— |
| Maydon`functions` | Tur`function[]` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`function_call` | Tur`string\|object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`prompt_cache_options` | Tur`object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Modelga bogʻliq | Standart— |
| Maydon`modalities` | Tur`string[]` | TalabIxtiyoriy | Qiymatlar va cheklovlar text | Standart— |
| Maydon`provider` | Tur`object` | TalabIxtiyoriy | Qiymatlar va cheklovlar Shartlar: Ushbu Ultra matn marshrutida provider.options rad etiladi | Standart— |
| Maydon`cache_control.ttl` | Tur`string` | TalabIxtiyoriy | Qiymatlar va cheklovlar Shartlar: Haqiqiy prompt-kesh joylarida 1h rad etiladi | Standart— |

Kirish materiallari birikmalari

**Matn** · UTF8 matni

`messages[].content`

Usul parametrlari va hayot sikli

| Parametr | Parametr talablari |
| --- | --- |
| Parametr`content_type` | Parametr talablariapplication/json |
| Parametr`required` | Parametr talablarimodel, messages |
| Parametr`material_types` | Parametr talablaritext |
| Parametr`messages` | Parametr talablarirole/content tuzilishidagi xabarlar massivi |
| Parametr`file_material` | Parametr talablariHaqiqiy UTF-8 hujjati aynan matn sifatida kiritiladi; fayl IDsi faraz qilinmaydi |
| Parametr`optional_controls` | Parametr talablaristream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parametr`control_scope` | Parametr talablariModelga xos; foydalanuvchi funksiya vositalari hostingdagi vositalardan farq qiladi |
| Parametr`output_modalities` | Parametr talablaritext |
| Parametr`hosted_operations` | Parametr talablarifalse |
| Parametr`multimodal_input_binding` | Parametr talablarinull |

Hayot sikli: `synchronous_or_streamed`

Aniq model IDsini messages bilan yuboring.

Kontekst uzunligi chiqishning yuqori chegarasi emas.

Matn fayli aynan matnni taqdim etishi mumkin; tasvir, audio va fayl obyekti kirishlari aniq bog‘lashni talab qiladi.

### Tariflar

Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.

Tezkor rejim

Ko‘rsatilmagan Tezkor rejim tanlanganda

Flex rejimi

Ko‘rsatilmagan flex rejimi tanlanganda

Maksimal fikrlash darajasi

Ko‘rsatilmagan Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda

#### Ailoot tariflari

#### Sozlamalar bo‘yicha narxlar

| Sozlama | Tariflar jadvali | To‘lov |
| --- | --- | --- |
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | To‘lov Kirish · Kirish tokenlari **$0.0006** / 1K token Chiqish · Chiqish tokenlari **$0.00228** / 1K token Kirish · Keshdan o‘qish **$0** / 1K token Kirish · Keshga yozish **$0** / 1K token Kirish · Keshga yozish, 1 soat **—** / 1K token |

Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. [Summani band qilish va to‘lovni hisoblash tartibi →](https://ailoot.ai/docs/uz/billing/reserve/)

### So‘rov namunalari

#### Ailoot Ultra · OpenAI Chat

curlPython SDKPython oqimi

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "moonshotai/Kimi-Dev-72B", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

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/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='moonshotai/Kimi-Dev-72B',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

```python
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='moonshotai/Kimi-Dev-72B',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")
```

### Natijalarni olish va saqlash

#### Ailoot Ultra · OpenAI Chat

json yoki SSE

##### Barcha tayyor natijalarni saqlash

Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.

Har bir javob variantini va uning kontenti, vosita chaqiruvlari hamda fikrlash ma’lumotlarini saqlang. SSEda o‘zgarish qismlarini variant va vosita indeksi bo‘yicha yig‘ing, yakuniy tugash sababi va sarf ma’lumotlarini saqlang.

##### Asl javobni tekshirish kerak bo‘lsa

So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.

Javob maydonlari

| Maydon | Tur |
| --- | --- |
| Maydon`choices[].index` | Turinteger |
| Maydon`choices[].message.content` | Turstring\|null |
| Maydon`choices[].message.tool_calls` | Turtool\_call\[\] |
| Maydon`choices[].message.reasoning_content` | Turstring |
| Maydon`choices[].message.reasoning_details` | Turobject\|array |
| Maydon`choices[].finish_reason` | Turstring\|null |
| Maydon`usage` | Turobject |

Xatolar va keyingi qadamlar

| Javob | Shart | Keyingi qadam |
| --- | --- | --- |
| Javob400 · `invalid_request_error` | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |

### Taxalluslar

#### Model taxalluslari

**Ailoot Ultra** [`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=chat)

#### Usul yo‘llari taxalluslari

Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.

#### Chaqirish uchun tegishli ID lar

[`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `moonshotai/Kimi-Dev-72B`

[`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=messages)

Boshqa /`moonshotai/Kimi-Dev-72B`

### Boshlash

Kimi-Dev-72B — Moonshot AI kompaniyasining dasturiy muammolarni hal qilish uchun kod modeli. Uning dizayni xato tuzatishni regressiya testi yozish bilan birlashtiradi: tegishli fayllarni topish, tuzatish taklif qilish va asl xatoni ko‘rsatadigan test yaratish.

Qabul qilinadigan kirish ma’lumotlari

Matn

Natijalar

json · sse

### Ailoot da mavjud · kirish ma’lumotlari va usullar

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Kirish

`text`

Chiqish

`json`, `sse`

Chiqish formati

JSON yoki SSE

| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
| --- | --- | --- | --- | --- |
| Maydon`model` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar moonshotai/Kimi-Dev-72B | Standart— |
| Maydon`messages` | Tur`message[]` | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
| Maydon`messages[].role` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar user, assistant | Standart— |
| Maydon`messages[].content` | Tur`string` | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
| Maydon`max_tokens` | Tur`integer` | TalabMajburiy | Qiymatlar va cheklovlar | Standart— |
| Maydon`stream` | Tur`boolean` | TalabIxtiyoriy | Qiymatlar va cheklovlar | Standartfalse |

Kirish materiallari birikmalari

**Matn** · UTF-8 matni

`messages[].content satri`

Usul parametrlari va hayot sikli

| Parametr | Parametr talablari |
| --- | --- |
| Parametr`content_type` | Parametr talablariapplication/json |
| Parametr`required` | Parametr talablarimodel, messages, max\_tokens |
| Parametr`optional_controls` | Parametr talablaristream |
| Parametr`material_types` | Parametr talablaritext |
| Parametr`text_file_material` | Parametr talablariHaqiqiy UTF-8 hujjatini o‘qing va uning matnini ko‘rsatilgan kirish yoki xabar kontenti satriga joylashtiring. |

Hayot sikli: `synchronous_or_streamed`

### Tariflar

Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.

Tezkor rejim

Ko‘rsatilmagan Tezkor rejim tanlanganda

Flex rejimi

Ko‘rsatilmagan flex rejimi tanlanganda

Maksimal fikrlash darajasi

Ko‘rsatilmagan Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda

#### Ailoot tariflari

#### Sozlamalar bo‘yicha narxlar

| Sozlama | Tariflar jadvali | To‘lov |
| --- | --- | --- |
| SozlamaTokenlar uchun bazaviy tariflar | Tariflar jadvaliAsosiy tarif | To‘lov Kirish · Kirish tokenlari **$0.0006** / 1K token Chiqish · Chiqish tokenlari **$0.00228** / 1K token Kirish · Keshdan o‘qish **$0** / 1K token Kirish · Keshga yozish **$0** / 1K token Kirish · Keshga yozish, 1 soat **—** / 1K token |

Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. [Summani band qilish va to‘lovni hisoblash tartibi →](https://ailoot.ai/docs/uz/billing/reserve/)

### So‘rov namunalari

#### Ailoot Ultra · Anthropic Messages

To‘liq minimal JSON so‘rov tanasicurl · O‘zingizning UTF-8 hujjatingizdan foydalaningPython · Natijani to‘liq saqlang

```json
{
  "model": "moonshotai/Kimi-Dev-72B",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'moonshotai/Kimi-Dev-72B', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'moonshotai/Kimi-Dev-72B', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Natijalarni olish va saqlash

#### Ailoot Ultra · Anthropic Messages

JSON yoki SSE

##### Barcha tayyor natijalarni saqlash

Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.

Barcha kontent bloklari, fikrlash imzolari va haqiqiy vosita ishlatish IDlarini saqlang. SSE bloklarining barcha o‘zgarish qismlarini yig‘ing; birinchi matn bloki to‘liq chiqish emas.

##### Asl javobni tekshirish kerak bo‘lsa

So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.

Javob maydonlari

| Maydon | Tur |
| --- | --- |
| Maydon`id` | Turstring |
| Maydon`model` | Turstring |
| Maydon`content[]` | Turtext\|thinking\|tool\_use\|other content block |
| Maydon`stop_reason` | Turstring\|null |
| Maydon`usage` | Turobject |

Xatolar va keyingi qadamlar

| Javob | Shart | Keyingi qadam |
| --- | --- | --- |
| Javob400 · `invalid_request_error` | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |

### Taxalluslar

#### Model taxalluslari

**Ailoot Ultra** [`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=messages)

#### Usul yo‘llari taxalluslari

Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.

#### Chaqirish uchun tegishli ID lar

[`moonshotai/Kimi-Dev-72B`](https://ailoot.ai/models/uz/#m=moonshotai%2FKimi-Dev-72B&route=Ultra&caller=moonshotai%2FKimi-Dev-72B&fmt=messages)

FAQ · moonshotai/Kimi-Dev-72B

Qanday kirish ma’lumotlari va natijalar mavjud?

`POST /v1/chat/completions` · `moonshotai/Kimi-Dev-72B`: `text` → `text` `POST /v1/messages` · `moonshotai/Kimi-Dev-72B`: `text` → `json`, `sse`

So‘rov qaysi maydonlardan foydalanadi?

`POST /v1/chat/completions` · `moonshotai/Kimi-Dev-72B`: `model`, `messages`, `stream`, `modalities`, `provider` `POST /v1/messages` · `moonshotai/Kimi-Dev-72B`: `model`, `messages`, `max_tokens`, `stream`

Qanday cheklovlar amal qiladi?

`POST /v1/chat/completions` · `moonshotai/Kimi-Dev-72B`: `messages.min_items`: `1`

Ailoot’ni Claude Code, OpenCode, Hermes yoki ilovangizga ulang.

## Kompaniya va uning loyihalar portfeli

Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.

## Tokenlarni chegirma bilan xarid qiling.

Muntazam ish uchun obuna chegirmasi. Token xaridiga promokodlar — 50% gacha.

Obuna

Muntazam so‘rovlaringiz uchun chegirmali tarif tanlang.

50% gacha promokod

Xaridda kod kiriting. Narx amaldagi aksiya bilan qayta hisoblanadi.

Tarixdagi xarajatlar

Har so‘rov uchun model, token va summa saqlanadi.

[Obuna tanlash](https://ailoot.ai/docs/uz/billing/subscriptions/) · [Model narxlarini ko‘rish](https://ailoot.ai/models/uz/)

## API’ni sotadigan mahsulotingizga ulang.

SaaS, ilova va botlar Ailoot ofertasi hamda litsenziya shartnomasiga muvofiq. Qayta sotishga reseller litsenziyasi so‘rang.

Tijorat ilovasi

Xizmatingizning pullik funksiyalariga matn, rasm, video va ovoz yaratishni qo‘shing.

Reseller litsenziyasi

Loyiha tavsifi va kirish sxemasini yuboring. Foydalanish va qayta sotishga yozma shartlarni so‘rang.

Saytdagi hujjatlar

Oferta, litsenziya shartnomasi va ma’lumotlar siyosati ulashdan oldin ochiq.

[Reseller litsenziyasini so‘rash](mailto:support@ailoot.ai) · [Oferta va litsenziya shartnomasi](https://ailoot.ai/legal/offer?lang=uz)

## Ailoot · Kompaniya va uning loyihalar portfeli





Ailoot to‘plangan faoliyat tajribasi, keng mijozlar bazasi, barqaror xizmat va doimiy KPI nazoratiga tayanadi.





Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.





Ailoot bu faoliyat tajribasini mijozlar mahsulotlari, agentlar, ilovalar va avtomatlashtirishlarda AI imkoniyatlariga API orqali kirishni ta’minlashda qo‘llaydi.
