Qwen: Qwen3.5 Plus 2026-04-20
Qwen3.5 Plus 2026-04-20 adalah snapshot tetap tanggal 20 April dari model visi-bahasa Plus Qwen. Pembuatnya menyoroti peningkatan pemrograman berbasis agen sambil mempertahankan penalaran, pengetahuan, dan pekerjaan konteks panjang, untuk tugas kompleks yang menggabungkan teks atau materi visual yang diberikan dengan hasil akhir konkret.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsqwen/qwen3.5-plus-20260420 - Ailoot Ultra · Anthropic Messages
POST /v1/messagesqwen/qwen3.5-plus-20260420
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Snapshot tetap Plus tanggal 20 April
Qwen3.5 Plus 2026-04-20 adalah snapshot tanggal 20 April 2026 dari keluarga visi-bahasa native Plus Qwen. Pemberitahuan rilis dari pembuatnya mengidentifikasi peningkatan besar dalam pemrograman berbasis agen dibandingkan snapshot tanggal 15 Februari, bersama efisiensi inferensi yang lebih baik serta kemampuan pengetahuan, penalaran, dan konteks panjang yang dipertahankan. Pisahkan edisi bertanggal ini dari nama Plus yang terus berubah dan dari checkpoint terbuka Qwen3.5-397B-A17B.
Keluarga ini menerima teks beserta gambar atau video dan menghasilkan hasil tekstual. Cakupan itu mendukung tugas pengembangan yang dipandu tangkapan layar, pertanyaan tentang diagram teknis, atau penjelasan berbasis dokumen. Nama snapshot sendiri tidak menetapkan jumlah parameter, expert aktif, atau arsitektur tepat checkpoint terbuka, sehingga angka-angka tersebut tidak diberikan kepada edisi ini di sini.
Pemrograman berbasis agen
Perubahan utama rilis ini adalah kemampuan pemrograman yang lebih baik dalam alur kerja agen. Berikan persyaratan proyek, berkas atau cuplikan yang relevan, perilaku yang ada, dan artefak yang diharapkan saat penyelesaian. Untuk tugas dari tangkapan layar ke antarmuka, sertakan referensi visual dan batasan fungsional, lalu minta sumber yang dapat diedit serta penjelasan perilaku yang dimaksud. Untuk perubahan repositori, identifikasi fitur yang terdampak dan masukan yang menunjukkan masalah, lalu minta patch dan pemeriksaan yang diperlukan untuk menilainya.
Alur kerja pemrograman beberapa langkah mendapat manfaat dari umpan balik aktual: hasil pemeriksaan, galat yang diamati, dan temuan tinjauan dapat dikembalikan ke model seiring kemajuan pekerjaan. Aplikasi mengendalikan alat dan menjalankan tindakan yang diizinkan. Minta laporan tentang apa yang diusulkan, apa yang diamati, dan apa yang masih belum terselesaikan.
Pengetahuan dan penalaran
Pembuatnya menyatakan bahwa snapshot mempertahankan pengetahuan dan penalaran yang kuat sambil meningkatkan pekerjaan agen. Untuk tugas analitis, pisahkan fakta sumber dari asumsi dan tentukan kesimpulan yang dicari. Minta bagian teks, nilai, atau pengenal kode pendukung agar hasil dapat diperiksa. Untuk laporan profesional, berikan materi yang relevan dan bagian yang diinginkan, alih-alih mengandalkan model untuk mengetahui konteks proyek privat yang hilang.
Keluarga Qwen3.5 Plus didokumentasikan sebagai hybrid thinking, dengan mode berpikir aktif secara bawaan. Alur kerja keluarganya dapat menghasilkan respons langsung ketika berpikir dinonaktifkan, sedangkan konten penalaran dan jawaban akhir diperlakukan terpisah. Antarmuka snapshot April yang spesifik harus menggunakan kontrolnya sendiri yang didokumentasikan; deskripsi mode keluarga bukan janji bahwa setiap aplikasi menyediakan parameter tertentu.
Pekerjaan konteks panjang
Tabel khusus snapshot tanggal 20 April Alibaba memberikan konteks 1,000,000 token, masukan maksimum 991,808 token untuk respons langsung atau 983,616 untuk mode berpikir, dan keluaran maksimum 65,536 dalam kedua mode. Jangan memindahkan angka konteks native atau perluasan checkpoint terbuka Qwen3.5 menjadi batas tegas snapshot Plus ini. Siapkan masukan panjang dengan batas dokumen, pengenal halaman, jalur kode, dan definisi yang diperlukan untuk tugas.
Permintaan yang berguna dapat meminta tabel pemetaan persyaratan ke implementasi, perbandingan dokumen, atau laporan yang mengidentifikasi bukti untuk setiap kesimpulan. Keluarkan materi yang tidak berkaitan dari prompt dan sisakan ruang untuk jawaban. Kemampuan konteks panjang membantu menyatukan lebih banyak bukti; hal itu bukan jaminan ingatan lengkap atau pengganti pertanyaan yang jelas.
Persiapan tugas bergaya produksi
Produsennya memosisikan edisi ini untuk agen kompleks, alur kerja pemrograman, dan penggunaan berorientasi throughput. Tetapkan hasil tugas yang dapat diamati: berkas yang harus dihasilkan, perilaku yang harus diimplementasikan, atau temuan yang harus dijelaskan. Jika alat terhubung, bedakan hasil nyata yang dikembalikannya dari usulan teks model. Tetapkan format akhir agar artefak dapat masuk ke alur kerja tinjauan atau aplikasi, sambil memeriksa sintaks dan kontennya secara terpisah.
Tabel khusus snapshot mencantumkan function calling, keluaran terstruktur, pencarian web, prefix completion, dan caching konteks; inferensi batch dan fine-tuning tidak didukung. Ini merupakan fitur alur kerja produsen, dan batas berkas media tetap merupakan spesifikasi terpisah. Karena itu, permintaan teks berbentuk JSON, eksekusi kode, atau retrieval sumber harus tetap dipandang sebagai alur kerja yang diminta, bukan jaminan native yang diasumsikan. Peningkatan yang dijelaskan pembuatnya bersifat kualitatif; hal itu tidak boleh berubah menjadi janji latensi atau throughput tanpa syarat.
Batasan praktis
Sertakan edisi Plus bertanggal yang tepat dan materi sumber bersama hasil saat membandingkan revisi berikutnya. Periksa kode yang dihasilkan, perhitungan, dan detail visual hasil ekstraksi terhadap sumber yang diberikan, serta nyatakan bukti yang belum terselesaikan secara eksplisit. Hasil yang berguna adalah artefak tekstual konkret yang dikaitkan dengan persyaratan tugas, dengan identitas Plus bertanggal yang tepat serta batas masukan, keluaran, dan alat produsen yang didokumentasikan tetap dinyatakan secara eksplisit.
Tugas praktis
Tugas praktis
Contoh teknis dalam bahasa Inggris
Repair an asynchronous search race
A search field calls fetchResults(query).then(render) after each keystroke. Results for an older query sometimes arrive after the latest query and overwrite the screen. Propose a focused JavaScript change that renders only the newest request's result. Preserve the existing fetchResults and render interfaces, handle request failures and describe a reversed-response-order test.Hasil yang diharapkan
A code proposal, a brief request-order explanation and a deterministic out-of-order response test.Periksa hasil
Check an older response cannot overwrite the latest result, including after a failed newer request.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions qwen/qwen3.5-plus-20260420
qwen/qwen3.5-plus-20260420Mulai
Qwen3.5 Plus 2026-04-20 adalah snapshot tetap tanggal 20 April dari model visi-bahasa Plus Qwen. Pembuatnya menyoroti peningkatan pemrograman berbasis agen sambil mempertahankan penalaran, pengetahuan, dan pekerjaan konteks panjang, untuk tugas kompleks yang menggabungkan teks atau materi visual yang diberikan dengan hasil akhir konkret.
- 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 qwen/qwen3.5-plus-20260420 | Bawaan— |
Kolommessages | Jenismessage[] | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
Kolommessages[].role | Jenisstring | PersyaratanWajib | Nilai & batasan Contoh: system, user, assistant, tool, function Kondisi: Peran ini direpresentasikan secara eksplisit oleh tipe kompatibilitas dalam kode sumber; kumpulan peran model yang tepat tetap khusus untuk tiap model. Bergantung pada model | Bawaan— |
Kolommessages[].content | Jenisstring|content_part[]|null | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].tool_calls | Jenistool_call[] | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].tool_call_id | Jenisstring | PersyaratanOpsional | Nilai & batasan Berlaku jika: role=tool; gunakan ID yang benar-benar dikembalikan | Bawaan— |
Kolommessages[].name | Jenisstring | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].reasoning_content | Jenisstring | PersyaratanOpsional | Nilai & batasan Berlaku jika: Kirim kembali penalaran yang benar-benar dikembalikan jika model ini menggunakannya | Bawaan— |
Kolommessages[].reasoning_details | Jenisobject|array | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolommax_tokens | Jenisinteger | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
Kolommax_completion_tokens | Jenisinteger | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
Kolomstream | Jenisboolean | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
Kolomstream_options.include_usage | Jenisboolean | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtemperature | Jenisnumber | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtop_p | Jenisnumber | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomstop | Jenisstring|string[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtools | Jenisfunction_tool[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtools[].type | Jenisstring | PersyaratanOpsional | Nilai & batasan function Bergantung pada model | Bawaan— |
Kolomtools[].function.name | Jenisstring | PersyaratanWajib | Nilai & batasan Berlaku jika: alat fungsi disediakan | Bawaan— |
Kolomtools[].function.description | Jenisstring | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolomtools[].function.parameters | JenisJSON_schema | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolomtool_choice | Jenisstring|object | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomparallel_tool_calls | Jenisboolean | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomresponse_format | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomreasoning_effort | Jenisstring | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomreasoning | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomservice_tier | Jenisstring | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolominstructions | Jenisstring | PersyaratanOpsional | Nilai & batasan Kolom kompatibilitas | Bawaan— |
Kolomfunctions | Jenisfunction[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomfunction_call | Jenisstring|object | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomprompt_cache_options | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolommodalities | Jenisstring[] | PersyaratanOpsional | Nilai & batasan text | Bawaan— |
Kolomprovider | Jenisobject | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak pada rute teks Ultra ini | Bawaan— |
Kolomcache_control.ttl | Jenisstring | PersyaratanOpsional | Nilai & batasan Kondisi: 1h ditolak pada lokasi cache prompt yang digunakan | Bawaan— |
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, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametercontrol_scope | Kontrakkhusus model; alat fungsi pengguna berbeda dari alat yang dihosting |
Parameteroutput_modalities | Kontraktext |
Parameterhosted_operations | Kontrakfalse |
Parametermultimodal_input_binding | Kontraknull |
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.0006 / 1K token Keluaran · Token keluaran $0.0036 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.00075 / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk256.000 | Biaya Masukan · Token masukan $0.0006 / 1K token Keluaran · Token keluaran $0.0036 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.00075 / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari256.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.00075 / 1K token Keluaran · Token keluaran $0.0045 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.0009375 / 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": "qwen/qwen3.5-plus-20260420", "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
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='qwen/qwen3.5-plus-20260420',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"))
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='qwen/qwen3.5-plus-20260420',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")
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 qwen/qwen3.5-plus-20260420
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
Ailoot Ultra · Anthropic Messages POST /v1/messages qwen/qwen3.5-plus-20260420
qwen/qwen3.5-plus-20260420Mulai
Qwen3.5 Plus 2026-04-20 adalah snapshot tetap tanggal 20 April dari model visi-bahasa Plus Qwen. Pembuatnya menyoroti peningkatan pemrograman berbasis agen sambil mempertahankan penalaran, pengetahuan, dan pekerjaan konteks panjang, untuk tugas kompleks yang menggabungkan teks atau materi visual yang diberikan dengan hasil akhir konkret.
- 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 qwen/qwen3.5-plus-20260420 | 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.0006 / 1K token Keluaran · Token keluaran $0.0036 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.00075 / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk256.000 | Biaya Masukan · Token masukan $0.0006 / 1K token Keluaran · Token keluaran $0.0036 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.00075 / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari256.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan $0.00075 / 1K token Keluaran · Token keluaran $0.0045 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache $0.0009375 / 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": "qwen/qwen3.5-plus-20260420",
"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': 'qwen/qwen3.5-plus-20260420', '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': 'qwen/qwen3.5-plus-20260420', '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 qwen/qwen3.5-plus-20260420
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
FAQ · Qwen: Qwen3.5 Plus 2026-04-20
- Input dan hasil apa yang tersedia?
POST /v1/chat/completions·qwen/qwen3.5-plus-20260420:text→textPOST /v1/messages·qwen/qwen3.5-plus-20260420:text→json,sse- Kolom apa yang digunakan permintaan?
POST /v1/chat/completions·qwen/qwen3.5-plus-20260420:model,messages,stream,modalities,providerPOST /v1/messages·qwen/qwen3.5-plus-20260420:model,messages,max_tokens,stream- Batasan apa yang berlaku?
POST /v1/chat/completions·qwen/qwen3.5-plus-20260420:messages.min_items:1