GLM-4-AirX
GLM-4-AirX adalah model teks Z.ai yang berorientasi kecepatan untuk dialog berlatensi rendah, pemrograman, dan alur kerja berbantuan alat. Profil terbitannya menetapkan konteks 8K dan keluaran hingga 4K, sehingga sesuai untuk tugas terfokus dengan hasil ringkas dan terstruktur.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsglm-4-airx - Ailoot Ultra · Anthropic Messages
POST /v1/messagesglm-4-airx
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Gambaran umum dan profil model
GLM-4-AirX adalah anggota berkecepatan tinggi dari lini GLM-4 Air Z.ai. Produsen memosisikannya untuk latensi rendah dan tugas aplikasi serentak, dengan perhatian khusus pada kepatuhan instruksi, kode rekayasa, dan pemanggilan fungsi. Model menerima teks dan mengembalikan teks. Profilnya sendiri mencantumkan jendela konteks 8K token dan keluaran maksimum 4K token. Ini berbeda dari konteks lebih besar yang diiklankan untuk GLM-4-Air-250414; AirX mempertahankan profil terbitannya sendiri.
Untuk asisten interaktif, hal ini mengarah pada permintaan terfokus: menjelaskan fungsi, mengklasifikasikan pesan, mengekstrak kolom dari paragraf yang diberikan, atau mengubah instruksi teknis menjadi respons ringkas. Berikan kutipan yang relevan, pertanyaan saat ini, dan hasil yang diinginkan secara bersama. Jaga percakapan lengkap dan setiap pengamatan alat dalam konteks aktif alih-alih menganggap korpus latar belakang besar akan muat.
Dukungan kemampuan
Deskripsi GLM-4 mencantumkan teks streaming, pemanggilan fungsi, caching konteks, format terstruktur seperti JSON, dan integrasi dengan alat serta sumber data MCP. Streaming menyajikan jawaban saat dihasilkan, sehingga aplikasi dapat menampilkan teks yang berguna sebelum seluruh balasan tiba. Hal ini mengubah cara penyampaian, bukan modalitas masukan atau keluaran model.
Pemanggilan fungsi memungkinkan model mengusulkan tindakan dari fungsi yang dideskripsikan aplikasi. Aplikasi menjalankan tindakan tersebut dan mengembalikan pengamatan. Siklus yang sesuai berupa pencarian informasi kecil diikuti penjelasan ringkas atas data yang dikembalikan. Integrasi MCP juga bergantung pada alat dan data yang disediakan aplikasi. Caching konteks berkaitan dengan penggunaan kembali masukan berulang; hal itu tidak menyiratkan bahwa setiap percakapan berulang menghasilkan hit cache.
Untuk hasil JSON, nyatakan kolom dan maknanya sebelum memberikan materi. Misalnya, berikan permintaan teknis dan minta kategorinya, tindakan wajib, serta pertanyaan yang belum terjawab. Struktur hasilnya berguna untuk langkah aplikasi berikutnya, sementara nilainya tetap perlu diperiksa terhadap teks yang diberikan.
Skenario yang direkomendasikan
Produsen memasukkan penerjemahan, klasifikasi semantik, ekstraksi kolom dokumen, penulisan pemasaran, laporan analitis, dan perencanaan perjalanan dalam penerapan GLM-4. Profil AirX yang lebih pendek mengutamakan langkah langsung dalam alur kerja semacam itu. Permintaan penerjemahan dapat memberikan kutipan singkat, sasaran pembaca, dan terminologi; keluarannya berupa kutipan hasil penulisan ulang yang mempertahankan nama wajib. Permintaan klasifikasi dapat memberikan label yang diizinkan serta definisinya alih-alih meminta penilaian tanpa spesifikasi.
Untuk ekstraksi, definisikan pengenal dan kolom lain yang diminta serta sertakan hanya kutipan sumber yang relevan. Untuk penulisan, berikan fakta produk dan satu keluaran, seperti paragraf produk atau kalimat kampanye. Untuk laporan atau rencana perjalanan, berikan fakta serta batasan yang relevan bagi langkah saat ini. Jika informasi baru diperlukan, alat pencarian atau data aplikasi menyediakannya; model kemudian bekerja dengan materi yang dikembalikan itu.
Persiapan terperinci dan fokus kecepatan
AirX dijelaskan telah dipralatih pada 15 triliun token, termasuk materi penalaran sintetis yang substansial. Pascapelatihannya menggunakan penyelarasan preferensi dialog, rejection sampling, dan pembelajaran penguatan untuk memperkuat instruksi, kode rekayasa, serta penggunaan fungsi. Produsen memperkenalkannya sebagai varian GLM-4-Air-250414 yang lebih cepat, dengan perubahan komponen dasar mencakup pengisian awal prompt dan dekode autoregresif. Ini menjelaskan desain produsen, bukan jaminan latensi atau konkurensi yang diukur untuk deployment tertentu.
Menyiapkan permintaan yang bermanfaat
Berikan AirX satu tugas terbatas dan artefak yang diharapkan secara ringkas. Untuk kode, sertakan fungsi, nilai masukan yang relevan, dan perilaku wajib, lalu minta fragmen yang dikoreksi beserta penjelasannya. Untuk ekstraksi terstruktur, tempatkan definisi kolom sebelum kutipan dan minta informasi yang tidak ada ditandai secara eksplisit. Rencanakan hasil dalam profil keluaran 4K yang diterbitkan; bagi laporan besar menjadi tugas terfokus alih-alih mengharapkan dokumen tanpa batas dari satu balasan.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions glm-4-airx
glm-4-airxMulai
GLM-4-AirX adalah model teks Z.ai yang berorientasi kecepatan untuk dialog berlatensi rendah, pemrograman, dan alur kerja berbantuan alat. Profil terbitannya menetapkan konteks 8K dan keluaran hingga 4K, sehingga sesuai untuk tugas terfokus dengan hasil ringkas dan terstruktur.
- Masukan yang diterima
- Teks
- Hasil
- Teks
Tersedia di Ailoot · masukan & metode
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Masukan
text- Keluaran
text- Format keluaran
- json atau SSE
| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan glm-4-airx | Bawaan— |
Kolommessages | Jenismessage[] | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
Kolommessages[].role | Jenisstring | PersyaratanWajib | Nilai & batasan Bergantung pada model | Bawaan— |
Kolommessages[].content | Jenisstring | PersyaratanOpsional | Nilai & batasan Berlaku jika: Percakapan teks | Bawaan— |
Kolomstream | Jenisboolean | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
Kombinasi bahan masukan
Teks · Teks UTF8
messages[].content
Parameter metode dan siklus hidup
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, messages |
Parametermaterial_types | Kontraktext |
Parametermessages | Kontrakarray pesan dengan struktur role/content |
Parameterfile_material | Kontrakdokumen UTF-8 yang sebenarnya dimasukkan sebagai teks apa adanya; ID file tidak disimpulkan |
Parameteroptional_controls | Kontrakstream |
Parametercontrol_scope | KontrakPercakapan teks; stream adalah nilai boolean dengan false sebagai bawaan. |
Parameteroutput_modalities | Kontraktext |
Parameterhosted_operations | Kontrakfalse |
Parametermultimodal_input_binding | Kontraknull |
Alias metode: /chat/completions
Siklus hidup: synchronous_or_streamed
Kirim ID model yang tepat bersama messages.
Panjang konteks bukan batas keluaran.
File teks dapat menyediakan teks apa adanya; masukan gambar/audio/objek file memerlukan pengikatan yang tepat.
Paket
Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.
- Mode Fast
- Tarif standar Saat mode fast dipilih
- Mode Flex
- Tarif standar Saat mode flex dipilih
- Upaya penalaran maksimum
- Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default
Tarif Ailoot
Harga menurut konfigurasi
Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.
| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
|---|---|---|---|---|
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.0028 / 1K token Keluaran · Token keluaran $0.0028 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.0028 / 1K token Keluaran · Token keluaran $0.0028 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →
Contoh permintaan
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"glm-4-airx","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
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="glm-4-airx", 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, berkas, dan bagian konten yang dikembalikan.
Simpan setiap alternatif jawaban beserta konten, panggilan alat, dan penalarannya. Dalam SSE, gabungkan delta menurut indeks alternatif jawaban/alat, lalu pertahankan alasan penghentian akhir dan data penggunaan.
Jika respons asli perlu diperiksa
Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.
Kolom respons
| Kolom | Jenis |
|---|---|
Kolomchoices[].index | Jenisinteger |
Kolomchoices[].message.content | Jenisstring|null |
Kolomchoices[].message.tool_calls | Jenistool_call[] |
Kolomchoices[].message.reasoning_content | Jenisstring |
Kolomchoices[].message.reasoning_details | Jenisobject|array |
Kolomchoices[].finish_reason | Jenisstring|null |
Kolomusage | Jenisobject |
Kesalahan dan langkah berikutnya
| Respons | Kondisi | Langkah berikutnya |
|---|---|---|
Respons400 · invalid_request_error | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |
Alias
Alias model
Ailoot Ultra glm-4-airx
Alias jalur metode
/chat/completions
ID pemanggil terkait
Ailoot Ultra · Anthropic Messages POST /v1/messages glm-4-airx
glm-4-airxMulai
GLM-4-AirX adalah model teks Z.ai yang berorientasi kecepatan untuk dialog berlatensi rendah, pemrograman, dan alur kerja berbantuan alat. Profil terbitannya menetapkan konteks 8K dan keluaran hingga 4K, sehingga sesuai untuk tugas terfokus dengan hasil ringkas dan terstruktur.
- Masukan yang diterima
- Teks
- Hasil
- json · sse
Tersedia di Ailoot · masukan & metode
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Masukan
text- Keluaran
json,sse- Format keluaran
- JSON atau SSE
| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan glm-4-airx | Bawaan— |
Kolommessages | Jenismessage[] | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolommessages[].role | Jenisstring | PersyaratanWajib | Nilai & batasan user, assistant | Bawaan— |
Kolommessages[].content | Jenisstring | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolommax_tokens | Jenisinteger | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolomstream | Jenisboolean | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
Kombinasi bahan masukan
Teks · Teks UTF-8
string messages[].content
Parameter metode dan siklus hidup
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, messages, max_tokens |
Parameteroptional_controls | Kontrakstream |
Parametermaterial_types | Kontraktext |
Parametertext_file_material | KontrakBaca dokumen UTF-8 yang sebenarnya dan masukkan teksnya ke string masukan atau konten pesan yang ditunjukkan. |
Siklus hidup: synchronous_or_streamed
Paket
Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.
- Mode Fast
- Tarif standar Saat mode fast dipilih
- Mode Flex
- Tarif standar Saat mode flex dipilih
- Upaya penalaran maksimum
- Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default
Tarif Ailoot
Harga menurut konfigurasi
Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.
| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
|---|---|---|---|---|
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.0028 / 1K token Keluaran · Token keluaran $0.0028 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.0028 / 1K token Keluaran · Token keluaran $0.0028 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →
Contoh permintaan
Ailoot Ultra · Anthropic Messages
{
"model": "glm-4-airx",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}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': 'glm-4-airx', '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
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': 'glm-4-airx', '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, berkas, dan bagian konten yang dikembalikan.
Simpan semua blok konten, tanda tangan penalaran, dan ID penggunaan alat yang sebenarnya. Gabungkan semua delta blok SSE; blok teks pertama bukan keseluruhan keluaran.
Jika respons asli perlu diperiksa
Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.
Kolom respons
| Kolom | Jenis |
|---|---|
Kolomid | Jenisstring |
Kolommodel | Jenisstring |
Kolomcontent[] | Jenistext|thinking|tool_use|other content block |
Kolomstop_reason | Jenisstring|null |
Kolomusage | Jenisobject |
Kesalahan dan langkah berikutnya
| Respons | Kondisi | Langkah berikutnya |
|---|---|---|
Respons400 · invalid_request_error | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |
Alias
Alias model
Ailoot Ultra glm-4-airx
Alias jalur metode
/chat/completions
ID pemanggil terkait
FAQ · GLM-4-AirX
- Input dan hasil apa yang tersedia?
POST /v1/chat/completions·glm-4-airx:text→textPOST /v1/messages·glm-4-airx:text→json,sse- Kolom apa yang digunakan permintaan?
POST /v1/chat/completions·glm-4-airx:model,messages,streamPOST /v1/messages·glm-4-airx:model,messages,max_tokens,stream- Batasan apa yang berlaku?
POST /v1/chat/completions·glm-4-airx:messages.min_items:1