Ekstrak teks, data terstruktur, dan informasi penting dari gambar menggunakan model Qwen-OCR. Qwen-OCR mendukung dua protokol API: API kompatibel OpenAI dan API DashScope .
Untuk kasus penggunaan dan panduan memulai, lihat Ekstraksi teks (Qwen-OCR).
API kompatibel OpenAI
Titik akhir
Wilayah | SDK | Titik akhir HTTP |
|---|---|---|
Singapore |
|
|
US (Virginia) |
|
|
China (Beijing) |
|
|
Prasyarat
Dapatkan Kunci API dan tetapkan sebagai variabel lingkungan. Jika Anda menggunakan SDK OpenAI, instal SDK tersebut.
Panduan cepat
Gunakan titik akhir chat completions yang kompatibel OpenAI. Kirim pesan user dengan URL gambar dan prompt teks. Model mengekstrak teks dan mengembalikannya dalam choices[0].message.content.
Tidak streaming
Python
Streaming
Atur stream ke true untuk menerima hasil secara bertahap saat model menghasilkannya.
Python
Parameter permintaan
Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| string | Ya | Nama model. Lihat Model yang direkomendasikan untuk daftar model yang didukung. |
| array | Ya | Array objek pesan yang menyediakan konteks bagi model. |
role (harus user) dan array content dengan tipe elemen berikut:
Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| string | Ya |
|
| string | Tidak | Prompt teks. Default: |
| string | Ya (ketika | URL atau Data URL Base64 dari gambar. Untuk file lokal, lihat Ekstraksi teks. |
| integer | Tidak | Ambang batas piksel minimum. Gambar di bawah nilai ini diperbesar. Lihat Kontrol resolusi gambar. |
| integer | Tidak | Ambang batas piksel maksimum. Gambar di atas nilai ini diperkecil. Lihat Kontrol resolusi gambar. |
Parameter | Type | Default | Deskripsi |
|---|---|---|---|
| boolean |
| Atur ke |
| boolean |
| Ketika |
| integer | Bervariasi | Maksimum token dalam output. Melebihi batas ini akan memotong respons. Lihat Batas token output. |
| float |
| Mengatur keragaman output. Nilai lebih tinggi menghasilkan teks lebih bervariasi. Rentang: [0, 2). |
| float |
| Ambang batas sampling nucleus. Nilai lebih tinggi meningkatkan keragaman. Rentang: (0, 1.0]. Atur salah satu |
| integer |
| Membatasi set token kandidat selama sampling. Jika nilainya None atau lebih besar dari 100, kebijakan top_k tidak diaktifkan, dan hanya kebijakan top_p yang berlaku. Harus >= 0. Bukan parameter standar OpenAI -- lewatkan melalui |
| float |
| Hukuman untuk urutan berulang. Nilai di atas 1.0 mengurangi pengulangan. Bukan parameter standar OpenAI -- lewatkan melalui |
| float |
| Mengatur pengulangan konten. Rentang: [-2.0, 2.0]. Nilai positif mengurangi pengulangan. |
| integer | -- | Menjamin hasil yang dapat direproduksi ketika nilai yang sama digunakan dengan parameter identik. Rentang: [0, 2^31 - 1]. |
| boolean |
| Atur ke |
| integer |
| Jumlah token paling mungkin yang dikembalikan per langkah. Rentang: [0, 5]. Hanya efektif ketika |
| string atau array | -- | Kata atau ID token penghenti. Generasi berhenti ketika string tertentu atau |
Tanggapan
Tanggapan tidak streaming (chat.completion)
Bidang | Type | Deskripsi |
|---|---|---|
| string | Identifier unik permintaan. |
| array | Konten yang dihasilkan model. |
| string |
|
| integer | Posisi dalam array |
| string | Teks atau output terstruktur yang diekstrak dari model. |
| string | Selalu |
| string | Selalu |
| object | Selalu |
| object | Selalu |
| array | Selalu |
| integer | Stempel waktu UNIX permintaan. |
| string | Model yang digunakan. |
| string | Selalu |
| string | Selalu |
| string | Selalu |
| integer | Jumlah token output. |
| integer | Jumlah token input. |
| integer | Jumlah dari |
| integer | Token output teks. Bidang lain dalam |
| integer | Token input gambar. |
| integer | Token input teks. Bidang lain dalam |
Tanggapan streaming (chat.completion.chunk)
Ketika stream adalah true, tanggapan dikirim sebagai rangkaian chunk Server-Sent Event (SSE). Setiap chunk mengikuti struktur yang sama dengan tanggapan tidak streaming, dengan perbedaan berikut:
objectselaluchat.completion.chunk.choices[].deltamenggantikanchoices[].message. Objekdeltamemiliki bidang yang sama denganmessage.choices[].delta.rolehanya dikembalikan pada chunk pertama.finish_reasonadalahnullselama generasi,stopsaat selesai, ataulengthjika dipotong.- Ketika
include_usageadalahtrue, chunk terakhir memiliki arraychoiceskosong dan menyertakan objekusage.
Kontrol resolusi gambar
min_pixels dan max_pixels mengatur penskalaan ulang gambar sebelum pemrosesan. Rasio token-per-piksel bergantung pada versi model:
Model | Piksel per token |
|
|
|
|---|---|---|---|---|
| 32 x 32 = 1.024 | 3.072 (3 token) | 8.388.608 (8.192 token) | 30.720.000 (30.000 token) |
| 28 x 28 = 784 | 3.136 (4 token) | 6.422.528 (8.192 token) | 23.520.000 (30.000 token) |
- Jika jumlah piksel gambar di bawah
min_pixels, gambar diperbesar hingga melebihimin_pixels. - Jika jumlah piksel gambar berada dalam rentang
[min_pixels, max_pixels], gambar asli digunakan tanpa penskalaan ulang. - Jika jumlah piksel gambar melebihi
max_pixels, gambar diperkecil di bawahmax_pixels.
Batas token output
Model | Default dan maksimum |
|---|---|
| Sama dengan panjang output maksimum model. Lihat Pemilihan model. |
| 4.096 |
Untukqwen-vl-ocr, qwen-vl-ocr-2025-04-13, dan qwen-vl-ocr-2025-08-28, nilai defaultmax_tokensadalah 4096. Untuk menaikkannya (4097–8192), hubungi manajer komersial Anda dengan menyertakan: ID akun Alibaba Cloud Anda, jenis gambar (misalnya dokumen, e-commerce, kontrak), nama model, perkiraan QPS dan volume permintaan harian, serta persentase permintaan yang melebihi 4096 token output.
API DashScope
Titik akhir
Wilayah | Titik akhir HTTP |
|---|---|
Singapore |
|
US (Virginia) |
|
China (Beijing) |
|
Ganti domain denganDapatkan Kunci API dan tetapkan sebagai variabel lingkungan. Jika Anda menggunakan SDK DashScope, Anda juga harus menginstal SDK DashScope.{WorkspaceId}.us-east-1.maas.aliyuncs.comuntuk wilayah US (Virginia) atau{WorkspaceId}.cn-beijing.maas.aliyuncs.comuntuk wilayah China (Beijing). Untuk wilayah China (Beijing), Anda tidak perlu mengaturbase_urluntuk panggilan SDK.
Tugas bawaan
API DashScope menyediakan tugas OCR bawaan melalui parameter ocr_options. Setiap tugas menggunakan prompt default yang dioptimalkan, sehingga tidak memerlukan pesan text.
Tugas |
| Format output |
|---|---|---|
General text recognition |
| Teks biasa |
High-precision recognition |
| Teks biasa dengan kotak pembatas |
Information extraction |
| Pasangan kunci-nilai terstruktur |
Table parsing |
| Struktur tabel |
Document parsing |
| Struktur dokumen |
Formula recognition |
| Rumus LaTeX |
Multilingual recognition |
| Teks multibahasa |
High-precision recognition
Mengembalikan teks dengan data posisi untuk setiap baris yang dikenali.
Python
Information extraction
Mengekstrak data kunci-nilai terstruktur dari gambar. Tentukan bidang yang akan diekstrak dalam task_config.result_schema.
Python
Table parsing
Mengekstrak struktur tabel dari gambar.
Python
Document parsing
Mengekstrak tata letak struktural dan teks dari dokumen.
Python
Formula recognition
Mengekstrak rumus matematika dari gambar dan mengembalikannya dalam format LaTeX.
Python
General text recognition
Mengekstrak teks biasa dari gambar tanpa format struktural.
Python
Multilingual recognition
Mengenali teks dalam berbagai bahasa dari gambar.
Python
Streaming (DashScope)
Aktifkan keluaran streaming untuk menerima hasil secara bertahap. Metodenya berbeda-beda tergantung SDK:
- SDK Python: Atur
stream=Truedanincremental_output=True. - SDK Java: Gunakan antarmuka
streamCall. - HTTP: Atur header
X-DashScope-SSE: enable.
Parameter permintaan
Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| string | Ya | Nama model. Lihat Model yang direkomendasikan untuk daftar model yang didukung. |
| array | Ya | Array objek pesan. |
role (harus user) dan bidang content (string atau array). Gunakan string untuk input teks saja. Gunakan array jika input mencakup data gambar, dengan bidang-bidang berikut:
Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| string | Tidak | URL, Data URL Base64, atau path lokal gambar. Lihat Mengirimkan file lokal. |
| string | Tidak | Prompt teks. Default: |
| boolean | Tidak | Atur ke |
| integer | Tidak | Ambang batas piksel minimum. Lihat Kontrol resolusi gambar. |
| integer | Tidak | Ambang batas piksel maksimum. Lihat Kontrol resolusi gambar. |
parameters untuk panggilan HTTP.
Parameter | Tipe | Default | Deskripsi |
|---|---|---|---|
| integer | Bervariasi | Maksimum token dalam output. Lihat Batas token output. Di SDK Java, gunakan |
| boolean |
| Aktifkan keluaran streaming. Hanya untuk SDK Python. Untuk Java, gunakan |
| boolean |
| Ketika |
| float |
| Mengatur keragaman output. Rentang: [0, 2). |
| float |
| Ambang batas sampling nucleus. Rentang: (0, 1.0]. Atur salah satu |
| integer |
| Membatasi set token kandidat selama sampling. Jika nilainya None atau lebih besar dari 100, kebijakan top_k tidak diaktifkan, dan hanya kebijakan top_p yang berlaku. Harus >= 0. |
| float |
| Hukuman untuk urutan berulang. Nilai di atas 1.0 mengurangi pengulangan. |
| float |
| Mengatur pengulangan konten. Rentang: [-2.0, 2.0]. |
| integer | -- | Menjamin hasil yang dapat direproduksi. Rentang: [0, 2^31 - 1]. |
| boolean |
| Atur ke |
| integer |
| Jumlah token paling mungkin per langkah. Rentang: [0, 5]. Hanya efektif ketika |
| string atau array | -- | Kata atau ID token penghenti. Generasi berhenti ketika string tertentu atau |
ocr_options)
Saat menggunakan tugas bawaan, lewatkan ocr_options dalam parameters (HTTP), sebagai argumen kata kunci (SDK Python), atau melalui builder OcrOptions (SDK Java).
Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| string | Ya | Nama tugas bawaan. Nilai valid: |
| object | Tidak | Konfigurasi untuk |
| object | Tidak | Objek JSON yang menentukan bidang yang akan diekstrak. Kunci adalah nama bidang, nilai adalah deskripsi opsional untuk meningkatkan akurasi. Mendukung hingga tiga tingkat bersarang. |
result_schemacontoh:
Di SDK Java, parameter ini adalahOcrOptions. Versi minimum SDK Python DashScope adalah 1.22.2. Versi minimum SDK Java adalah 2.18.4. Untukadvanced_recognition, diperlukan SDK Java >= 2.21.8.
Tanggapan
API DashScope menggunakan format tanggapan yang identik untuk output streaming dan tidak streaming.
Bidang | Tipe | Deskripsi |
|---|---|---|
| string |
|
| string | Identifier unik permintaan. Di SDK Java, ini adalah |
| string | Kode error. Kosong saat sukses. Hanya SDK Python yang mengembalikan bidang ini. |
| string | Selalu |
| string |
|
| string | Nilai yang sama dengan |
| string | Selalu |
| string | Teks atau output terformat yang diekstrak dari model. |
| object | Dikembalikan untuk tugas bawaan ( |
| object | Hasil ekstraksi kunci-nilai (untuk |
| array | Hasil baris teks dengan data posisi (untuk |
| array |
|
| array |
|
| string | Konten baris teks. |
| object | Informasi probabilitas log, dikembalikan ketika |
| integer | Jumlah token input. |
| integer | Jumlah token output. |
| integer | Tetap 0. |
| integer | Jumlah dari |
| integer | Token yang sesuai dengan input gambar. |
| integer | Token input gambar. |
| integer | Token input teks. |
| integer | Token output teks. |
Model yang didukung
Model | Deskripsi |
|---|---|
| Berdasarkan arsitektur Qwen3.5. Lebih cepat, lebih akurat. Peningkatan besar dalam ekstraksi informasi, penentuan posisi teks, dan dukungan percakapan multi-putaran. Panjang konteks diperpanjang hingga 128K. |
| Selalu mengarah ke versi terbaru. |
| Snapshot versi terbaru. |
| Versi sebelumnya. |
| Versi sebelumnya. |
| Versi sebelumnya. |
| Model dasar. |