Source: https://ailoot.ai/models/ms/codegeex-4/
Canonical: https://ailoot.ai/models/ms/codegeex-4/
Language: ms

# CodeGeeX-4

[Markdown](https://ailoot.ai/models/ms/codegeex-4/index.md) · [JSON](https://ailoot.ai/models/ms/codegeex-4/facts.json)

## [CodeGeeX-4](https://ailoot.ai/models/ms/codegeex-4/)

CodeGeeX4 ialah keluarga model pengekodan berbilang bahasa untuk penjanaan, pelengkapan, penjelasan, pembaikan kod dan soalan repositori. Panduan natifnya merangkumi prompt khusus tugasan, mengisi jurang antara kod sedia ada dan menggunakan fail berkaitan untuk menyediakan perubahan dengan laluan fail jelas.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `codegeex-4`](https://ailoot.ai/models/ms/codegeex-4/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `codegeex-4`](https://ailoot.ai/models/ms/codegeex-4/#method-1)

Tentang model

Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.

CodeGeeX4 ialah keluarga model pengekodan berbilang bahasa yang dibina berasaskan bantuan pengaturcaraan dan kerja merentas fail sumber berkaitan. Pembuat menerbitkan CodeGeeX4-ALL-9B sebagai anggota sumber terbuka siri ini, dibangunkan melalui latihan berterusan GLM-4-9B. Dokumentasinya merangkumi penjanaan serta pelengkapan kod, soalan pengaturcaraan, analisis repositori dan aliran kerja tersambung yang melibatkan pentafsir kod, carian web atau panggilan fungsi. Output biasa ialah teks: kod, penjelasan, jawapan atau perubahan berlabel fail, mengikut arahan tugasan.

Mulakan dengan memilih operasi dan memberikan kod yang diperlukan model. Panduan prompt system natif mempunyai arahan berasingan untuk menambah komen, menjelaskan program, menterjemah antara bahasa pengaturcaraan, menyemak atau membaiki kod, menjana ujian dan menjawab soalan tentang fail. Untuk pembaikan, sertakan kod gagal, tingkah laku diperhatikan dan hasil dimaksudkan. Untuk terjemahan, nyatakan bahasa pengaturcaraan sasaran dan bekalkan fungsi lengkap yang berkaitan. Untuk komen, arahan tugasan pembuat mengekalkan kod serta menambah komen; bagi beberapa tugasan penghasilan kod, ia meminta kod sahaja. Perbezaan ini membantu menjadikan hasil boleh digunakan sebagai artifak kod atau penjelasan, bukannya membiarkan format output tersirat.

Panduan menyediakan prompt system bahasa Cina dan Inggeris. Bahasa arahan system tidak dengan sendirinya menentukan bahasa jawapan, maka minta bahasa respons secara jelas apabila penjelasan diperlukan. Panduan semakan khusus menerangkan output bahasa Cina; prompt pembantu pengaturcaraan umum menyediakan cara berasingan meminta semakan dalam bahasa respons lain. Sesetengah templat tugasan menetapkan bahasa komen supaya sepadan dengan sumber dan mengecualikan output campuran bahasa Cina serta Inggeris. Dalam perbualan berterusan, ulang arahan tugasan berkaitan apabila menukar operasi supaya permintaan penjelasan tidak dikelirukan dengan permintaan kod sahaja sebelumnya.

Untuk pelengkapan kontekstual, format natif menerangkan fail sasaran, bahasa pengaturcaraannya dan kod pada kedua-dua sisi titik sisipan. Gunakan laluan fail relatif dengan ###PATH: dan sertakan ###LANGUAGE:; panduan membenarkan nilai bahasa kosong apabila tidak diketahui. ###MODE: memilih LINE untuk pelengkapan satu baris atau BLOCK untuk berbilang baris, dengan BLOCK sebagai lalai didokumenkan. Urutan pengisian tengah ialah sufiks dahulu, kemudian prefiks, kemudian bahagian tengah yang hilang, ditandakan dengan \<|code\_suffix|\>, \<|code\_prefix|\> dan \<|code\_middle|\>. Templat pengisian pembuat tidak menyertakan prompt system. Mengekalkan sufiks memberikan model aliran kawalan sekeliling dan kod yang mesti kekal selepas sisipan. Hasil ialah cadangan kod yang hilang, yang kemudian boleh disemak pada lokasi asalnya.

Pelengkapan rentas fail menambah cebisan berkaitan sebagai bahan rujukan, setiap satu diperkenalkan dengan ###REFERENCE: dan ###PATH: sendiri. Asingkan rujukan ini daripada fail sasaran dan titik sisipannya. Contohnya, apabila melengkapkan fungsi yang memanggil pembantu sedia ada, berikan tandatangan serta pelaksanaan pembantu bersama prefiks dan sufiks fungsi sasaran. Panduan pelengkapan peringkat projek melanjutkan pendekatan ini untuk menjana fail baharu daripada keperluan projek serta kod sedia ada berkaitan. Laluan jelas dan kebergantungan terpilih membolehkan pembezaan kod dibekalkan sebagai bukti daripada fail yang diminta untuk dilengkapkan oleh model.

Soalan repositori menggunakan susun atur natif berbeza: senaraikan setiap fail di bawah ###PATH:, sertakan kodnya, kemudian tanya soalan. Taklimat berguna boleh bertanya tempat sesuatu nilai ditakrifkan atau cara panggilan bergerak antara modul dibekalkan. Penyuntingan repositori menggunakan arahan system sendiri untuk menambah, memadam atau mengubah fail dan meminta output dalam ###PATH: {PATH} diikuti kod. Sediakan fail berkaitan dan terangkan perubahan diperlukan, termasuk fail untuk ditambah atau tingkah laku yang perlu dikekalkan. Baca blok berlabel laluan yang dipulangkan sebagai perubahan cadangan; ia bukan bukti repositori sudah diubah atau kod telah berjalan.

Bagi anggota CodeGeeX4-ALL-9B yang diterbitkan, pembuat mendokumenkan konteks 128K dan mengesyorkan pemilihan kandungan repositori berkaitan apabila projek melebihi tetingkap itu. Perolehan cebisan berkaitan dan pemangkasan input terlalu besar ialah langkah penyediaan dalam panduan repositori. Konteks mesti menampung arahan, kod dibekalkan dan sambungan terjana, maka set fail yang dipilih khusus untuk tugasan sering lebih berguna daripada lambakan projek tanpa pembezaan. Tetapan penjanaan contoh pembuat mengawal panjang larian tertentu; ia tidak mentakrifkan panjang jawapan maksimum sejagat untuk setiap edisi CodeGeeX4.

Siri ini juga menerangkan aliran kerja pengaturcaraan tersambung dengan pentafsir, carian dan panggilan fungsi. Aliran kerja demikian memerlukan aplikasi sekeliling menyediakan alat bernama dan memulangkan hasilnya kepada perbualan. Apabila meminta kod boleh jalan, nyatakan bahasa dimaksudkan, kebergantungan dan tingkah laku dijangka; apabila meminta analisis, minta rujukan fail atau fungsi berkaitan. Kompil atau jalankan perubahan dicadangkan dalam persekitaran dimaksudkan dan semak tingkah laku terhadap keperluan dibekalkan sebelum memasukkannya ke projek.

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

[`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

Zhipu /`codegeex-4`

### Pengenalan

CodeGeeX4 ialah keluarga model pengekodan berbilang bahasa untuk penjanaan, pelengkapan, penjelasan, pembaikan kod dan soalan repositori. Panduan natifnya merangkumi prompt khusus tugasan, mengisi jurang antara kod sedia ada dan menggunakan fail berkaitan untuk menyediakan perubahan dengan laluan fail jelas.

Input yang diterima

Teks

Hasil

Teks

### Tersedia di Ailoot · input & kaedah

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

Input

`text`

Output

`text`

Format output

json atau SSE

| Medan | Jenis | Keperluan | Nilai & had | Lalai |
| --- | --- | --- | --- | --- |
| Medan`model` | Jenis`string` | KeperluanDiperlukan | Nilai & had codegeex-4 | Lalai— |
| Medan`messages` | Jenis`message[]` | KeperluanDiperlukan | Nilai & had Item minimum: 1 | Lalai— |
| Medan`messages[].role` | Jenis`string` | KeperluanDiperlukan | Nilai & had Bergantung pada model | Lalai— |
| Medan`messages[].content` | Jenis`string` | KeperluanPilihan | Nilai & had Terpakai apabila: Perbualan teks | Lalai— |
| Medan`stream` | Jenis`boolean` | KeperluanPilihan | Nilai & had | Lalaifalse |

Gabungan bahan input

**Teks** · Teks UTF8

`messages[].content`

Parameter kaedah dan kitar hayat

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages |
| Parameter`material_types` | Kontraktext |
| Parameter`messages` | Kontraktatasusunan mesej dengan struktur role/content |
| Parameter`file_material` | Kontrakdokumen UTF-8 sebenar dimasukkan sebagai teks literal; ID fail tidak diandaikan |
| Parameter`optional_controls` | Kontrakstream |
| Parameter`control_scope` | KontrakPerbualan teks; stream ialah nilai boolean dengan false sebagai lalai. |
| Parameter`output_modalities` | Kontraktext |
| Parameter`hosted_operations` | Kontrakfalse |
| Parameter`multimodal_input_binding` | Kontraknull |

Alias kaedah: `/chat/completions`

Kitar hayat: `synchronous_or_streamed`

Hantar ID model yang tepat bersama messages.

Panjang konteks bukan had output.

Fail teks boleh membekalkan teks literal; input imej/audio/objek fail memerlukan pengikatan tepat.

### Pelan harga

Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.

Mod pantas

Tidak dinyatakan Apabila mod pantas dipilih

Mod flex

Tidak dinyatakan Apabila mod flex dipilih

Usaha penaakulan maksimum

Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default

#### Kadar Ailoot

#### Harga mengikut konfigurasi

| Konfigurasi | Jadual kadar | Caj |
| --- | --- | --- |
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Caj Input · Token input **$0.028** / 1K token Output · Token output **$0.028** / 1K token Input · Bacaan cache **$0** / 1K token Input · Penulisan cache **$0** / 1K token Input · Penulisan cache, 1 jam **—** / 1K token |

Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. [Cara rizab dan penyelesaian caj berfungsi →](https://ailoot.ai/docs/ms/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · OpenAI Chat

curlPython SDK

```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":"codegeex-4","messages":[{"role":"user","content":"hello"}],"stream":false}')

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="codegeex-4", messages=[{"role":"user","content":"hello"}], stream=False)
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"))
```

### Terima dan simpan hasil

#### Ailoot Ultra · OpenAI Chat

json atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, fail dan bahagian kandungan yang dikembalikan.

Kekalkan setiap pilihan jawapan bersama kandungan, panggilan alat dan penaakulannya. Dalam SSE, gabungkan delta mengikut indeks pilihan jawapan/alat dan kekalkan sebab penamatan akhir serta data penggunaan.

##### Jika respons asal perlu disemak

Kekalkan ID permintaan/respons dan pengepala. Tiada URL umum bagi pengambilan tugas teks dibekalkan.

Medan respons

| Medan | Jenis |
| --- | --- |
| Medan`choices[].index` | Jenisinteger |
| Medan`choices[].message.content` | Jenisstring\|null |
| Medan`choices[].message.tool_calls` | Jenistool\_call\[\] |
| Medan`choices[].message.reasoning_content` | Jenisstring |
| Medan`choices[].message.reasoning_details` | Jenisobject\|array |
| Medan`choices[].finish_reason` | Jenisstring\|null |
| Medan`usage` | Jenisobject |

Ralat dan langkah seterusnya

| Respons | Syarat | Langkah seterusnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | SyaratMedan wajib, perwakilan bahan atau nilai parameter tidak sah | Langkah seterusnyaBetulkan medan yang ditunjukkan sebelum permintaan penciptaan baharu. |

### Alias

#### Alias model

**Ailoot Ultra** [`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

#### Alias laluan kaedah

`/chat/completions`

#### ID pemanggil berkaitan

[`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `codegeex-4`

[`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

Zhipu /`codegeex-4`

### Pengenalan

CodeGeeX4 ialah keluarga model pengekodan berbilang bahasa untuk penjanaan, pelengkapan, penjelasan, pembaikan kod dan soalan repositori. Panduan natifnya merangkumi prompt khusus tugasan, mengisi jurang antara kod sedia ada dan menggunakan fail berkaitan untuk menyediakan perubahan dengan laluan fail jelas.

Input yang diterima

Teks

Hasil

json · sse

### Tersedia di Ailoot · input & kaedah

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

Input

`text`

Output

`json`, `sse`

Format output

JSON atau SSE

| Medan | Jenis | Keperluan | Nilai & had | Lalai |
| --- | --- | --- | --- | --- |
| Medan`model` | Jenis`string` | KeperluanDiperlukan | Nilai & had codegeex-4 | Lalai— |
| Medan`messages` | Jenis`message[]` | KeperluanDiperlukan | Nilai & had | Lalai— |
| Medan`messages[].role` | Jenis`string` | KeperluanDiperlukan | Nilai & had user, assistant | Lalai— |
| Medan`messages[].content` | Jenis`string` | KeperluanDiperlukan | Nilai & had | Lalai— |
| Medan`max_tokens` | Jenis`integer` | KeperluanDiperlukan | Nilai & had | Lalai— |
| Medan`stream` | Jenis`boolean` | KeperluanPilihan | Nilai & had | Lalaifalse |

Gabungan bahan input

**Teks** · Teks UTF-8

`rentetan messages[].content`

Parameter kaedah dan kitar hayat

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages, max\_tokens |
| Parameter`optional_controls` | Kontrakstream |
| Parameter`material_types` | Kontraktext |
| Parameter`text_file_material` | KontrakBaca dokumen UTF-8 sebenar dan letakkan teksnya dalam rentetan input atau kandungan mesej yang ditunjukkan. |

Kitar hayat: `synchronous_or_streamed`

### Pelan harga

Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.

Mod pantas

Tidak dinyatakan Apabila mod pantas dipilih

Mod flex

Tidak dinyatakan Apabila mod flex dipilih

Usaha penaakulan maksimum

Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default

#### Kadar Ailoot

#### Harga mengikut konfigurasi

| Konfigurasi | Jadual kadar | Caj |
| --- | --- | --- |
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Caj Input · Token input **$0.028** / 1K token Output · Token output **$0.028** / 1K token Input · Bacaan cache **$0** / 1K token Input · Penulisan cache **$0** / 1K token Input · Penulisan cache, 1 jam **—** / 1K token |

Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. [Cara rizab dan penyelesaian caj berfungsi →](https://ailoot.ai/docs/ms/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · Anthropic Messages

Badan JSON minimum yang lengkapcurl · gunakan dokumen UTF-8 andaPython · simpan hasil lengkap

```json
{
  "model": "codegeex-4",
  "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': 'codegeex-4', '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': 'codegeex-4', '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))
```

### Terima dan simpan hasil

#### Ailoot Ultra · Anthropic Messages

JSON atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, fail dan bahagian kandungan yang dikembalikan.

Kekalkan semua blok kandungan, tandatangan penaakulan dan ID penggunaan alat sebenar. Gabungkan semua delta blok SSE; blok teks pertama bukan keseluruhan output.

##### Jika respons asal perlu disemak

Kekalkan ID permintaan/respons dan pengepala. Tiada URL umum bagi pengambilan tugas teks dibekalkan.

Medan respons

| Medan | Jenis |
| --- | --- |
| Medan`id` | Jenisstring |
| Medan`model` | Jenisstring |
| Medan`content[]` | Jenistext\|thinking\|tool\_use\|other content block |
| Medan`stop_reason` | Jenisstring\|null |
| Medan`usage` | Jenisobject |

Ralat dan langkah seterusnya

| Respons | Syarat | Langkah seterusnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | SyaratMedan wajib, perwakilan bahan atau nilai parameter tidak sah | Langkah seterusnyaBetulkan medan yang ditunjukkan sebelum permintaan penciptaan baharu. |

### Alias

#### Alias model

**Ailoot Ultra** [`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

#### Alias laluan kaedah

`/chat/completions`

#### ID pemanggil berkaitan

[`codegeex-4`](https://ailoot.ai/models/ms/#m=codegeex-4&route=Ultra&caller=codegeex-4&fmt=messages)

FAQ · CodeGeeX-4

Apakah input dan hasil yang tersedia?

`POST /v1/chat/completions` · `codegeex-4`: `text` → `text` `POST /v1/messages` · `codegeex-4`: `text` → `json`, `sse`

Apakah medan yang digunakan oleh permintaan?

`POST /v1/chat/completions` · `codegeex-4`: `model`, `messages`, `stream` `POST /v1/messages` · `codegeex-4`: `model`, `messages`, `max_tokens`, `stream`

Apakah had yang terpakai?

`POST /v1/chat/completions` · `codegeex-4`: `messages.min_items`: `1`

Sambungkan Ailoot kepada Claude Code, OpenCode, Hermes atau aplikasi anda.

## Syarikat dan portfolio projeknya

Syarikat dan portfolio projeknya: jutaan pelanggan; jualan bernilai berbilion setiap bulan.

## Beli token dengan diskaun.

Diskaun langganan untuk penggunaan berkala. Kod promosi — sehingga 50% bagi pembelian token.

Langganan

Pilih pelan berdiskaun untuk permintaan berkala anda.

Kod promosi sehingga 50%

Masukkan kod semasa pembelian. Harga dikira semula mengikut promosi semasa.

Perbelanjaan dalam sejarah

Model, token dan jumlah disimpan bagi setiap permintaan.

[Pilih langganan](https://ailoot.ai/docs/ms/billing/subscriptions/) · [Lihat harga model](https://ailoot.ai/models/ms/)

## Sambungkan API kepada produk yang anda jual.

SaaS, aplikasi dan bot — di bawah tawaran rasmi serta perjanjian lesen Ailoot. Untuk jualan semula, mohon lesen penjual semula.

Aplikasi komersial

Tambahkan penjanaan teks, imej, video dan audio pada ciri berbayar perkhidmatan anda.

Lesen penjual semula

Hantar keterangan projek dan susunan akses. Minta terma penggunaan serta jualan semula secara bertulis.

Dokumen pada laman

Tawaran, perjanjian lesen dan dasar pemprosesan data tersedia sebelum sambungan.

[Mohon lesen penjual semula](mailto:support@ailoot.ai) · [Tawaran dan perjanjian lesen](https://ailoot.ai/legal/offer?lang=ms)

## Ailoot · Syarikat dan portfolio projeknya





Ailoot berteraskan pengalaman operasi yang mantap, pangkalan pelanggan yang besar, perkhidmatan yang stabil dan pemantauan KPI berterusan.





Syarikat dan portfolio projeknya: jutaan pelanggan; jualan bernilai berbilion setiap bulan.





Ailoot menggunakan pengalaman operasi ini untuk akses API kepada ciri AI dalam produk pelanggan, ejen, aplikasi dan automasi.
