Skip to main content
Lainnya Model

Referensi API Qwen-Deep-Research

Parameter permintaan dan respons untuk memanggil model Qwen-Deep-Research melalui API DashScope.

Dokumentasi terkait: Deep research (Qwen-Deep-Research)
Qwen-Deep-Research hanya tersedia di wilayah China (Beijing). Anda harus menggunakan API key dari wilayah China (Beijing).
Model ini saat ini hanya mendukung SDK DashScope Python. SDK Java dan antarmuka yang kompatibel dengan OpenAI tidak didukung.

DashScope

Sebelum memulai, dapatkan API key dan tetapkan sebagai variabel lingkungan. Untuk menggunakan SDK DashScope, Anda juga harus menginstal SDK.

Request body

modelstring(Required)Nilai yang didukung: qwen-deep-research.messagesarray(Required)Riwayat percakapan, dalam urutan kronologis.

Jenis pesan

Pesan penggunaobject(Required)Pesan pengguna mengirimkan pertanyaan, instruksi, atau konteks ke model. Dalam alur pemanggilan dua langkah Qwen-Deep-Research, pesan pengguna memiliki tujuan berbeda:
  • Langkah 1 (Pertanyaan klarifikasi): Pesan pengguna memulai permintaan penelitian dengan topik umum.
  • Langkah 2 (Penelitian mendalam): Pesan pengguna menjawab pertanyaan klarifikasi model untuk mempersempit cakupan penelitian guna analisis yang lebih terarah.
contentstring(Required)Isi pesan.rolestring(Required)Harus berupa user.
Pesan asisten object(Opsional)Balasan model terhadap pesan pengguna. Untuk Langkah 2 (Penelitian mendalam), sertakan pertanyaan klarifikasi model dari Langkah 1 agar menghasilkan analisis yang lebih terarah.contentstring(Opsional)Isi pesan.rolestring(Required)Harus berupa assistant.
output_formatstring(Opsional)Format dan tingkat detail laporan penelitian. Nilai yang valid:
  • model_detailed_report (Default): Laporan lengkap (~6.000 token) untuk analisis mendalam.
  • model_summary_report: Ringkasan singkat (~1.500–2.000 token) dengan temuan utama.
Python
import os
import dashscope
# 以下为华北2(北京)地域的配置,调用时请将WorkspaceId替换为真实的业务空间ID,各地域的配置不同。
dashscope.base_http_api_url = "https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1"

# Step 1: Get the clarifying question from the model.
messages = [{'role': 'user', 'content': 'Research the applications of artificial intelligence in education'}]

responses = dashscope.Generation.call(
    api_key=os.getenv('DASHSCOPE_API_KEY'),
    model="qwen-deep-research",
    messages=messages,
    stream=True
)

# Collect the model's clarifying question.
step1_content = ""
for response in responses:
    if hasattr(response, 'output') and response.output:
        message = response.output.get('message', {})
        content = message.get('content', '')
        if content:
            step1_content += content
            print(content, end='', flush=True)

# Step 2: Start the deep research.
messages = [
    {'role': 'user', 'content': 'Research the applications of artificial intelligence in education'},
    {'role': 'assistant', 'content': step1_content},
    {'role': 'user', 'content': 'I want to focus on personalized learning and intelligent assessment.'}
]

responses = dashscope.Generation.call(
    api_key=os.getenv('DASHSCOPE_API_KEY'),
    model="qwen-deep-research",
    messages=messages
)

# Stream the research results.
for response in responses:
    if hasattr(response, 'output') and response.output:
        message = response.output.get('message', {})
        content = message.get('content', '')
        if content:
            print(content, end='', flush=True)

Response object

status_codestringKode status HTTP untuk permintaan. 200 menunjukkan keberhasilan; nilai lain menunjukkan kesalahan.
Jika gagal, exception yang dilempar berisi status_code dan message.
request_idstringPengidentifikasi unik untuk permintaan.codestringKode kesalahan. Bidang ini kosong jika berhasil.
Parameter ini hanya dikembalikan oleh SDK Python.
message stringPesan kesalahan. Bidang ini kosong jika berhasil.outputobjectHasil pemanggilan.
textstringParameter ini selalu null.finish_reasonstringAlasan model berhenti menghasilkan konten. Nilai yang mungkin:
  • null: Generasi sedang berlangsung.
  • stop: Generasi berakhir secara alami.
  • length: Panjang konten maksimum telah tercapai.
choicesarrayDaftar pilihan output dari model.
finish_reasonstringNilai yang mungkin:
  • null: Generasi sedang berlangsung.
  • stop: Generasi berakhir secara alami.
  • length: Panjang konten maksimum telah tercapai.
messageobjectObjek pesan dari model.
PropertiesphasestringFase saat ini. Nilai yang mungkin:
  • answer
  • ResearchPlanning
  • WebResearch
  • KeepAlive
rolestringHarus berupa assistant.contentstringKonten output dari model.extra arrayHasil pencarian web dan referensi yang dikumpulkan oleh model.deep_researchobjectInformasi pencarian web dan referensi yang diambil hanya disertakan pada tahap answer dan WebResearch, dan bernilai null pada semua tahap lainnya.researchobjectDetail proses penelitian.
researchGoalstringTujuan penelitian.querystringKueri pencarian yang digunakan selama penelitian.idintegerNomor putaran pencarian, dalam rentang [1, 15].learningMapobjectKonten yang dirangkum dari pemanggilan tool, terkait dengan penggunaan tool tersebut.referencesobjectKutipan untuk jawaban yang dihasilkan. Bidang ini hanya muncul pada Fase Jawaban.
icon stringURL favicon untuk konten yang dirujuk.index_number integerIndeks konten yang dirujuk.descriptionstringDeskripsi singkat konten yang dirujuk.titlestringJudul halaman web yang dirujuk.url stringURL konten yang dirujuk.
webSites objectKonten yang dirujuk selama penelitian. Hanya disertakan dalam Fase Penelitian Web.
icon stringURL favicon dari konten yang dirujuk.index_number integerIndeks konten yang dirujuk.description stringDeskripsi singkat konten yang dirujuk.title stringJudul halaman web dari konten yang dirujuk.url stringURL konten yang dirujuk.
statusstringStatus fase tertentu selama streaming:
  • typing: Model sedang menghasilkan konten untuk fase saat ini.
  • finished: Fase saat ini telah selesai.
  • streamingQueries: Model sedang menghasilkan tujuan penelitian dan kueri pencarian.
  • streamingWebResult: Pencarian web, pembacaan halaman, dan eksekusi kode sedang berlangsung.
  • WebResultFinished: Fase pencarian web telah selesai.
finished booleanMenunjukkan apakah aliran telah selesai. Nilai yang mungkin:
  • false: Streaming sedang berlangsung.
  • true: Pesan terakhir.
fininshed_reason stringAlasan keluaran streaming berakhir. Nilai yang mungkin:
  • null: Generasi sedang berlangsung.
  • stop: Aliran selesai secara normal.
usageobjectJumlah token yang digunakan dalam permintaan ini.
input_tokens integerJumlah token input.output_tokens integerJumlah token output.
{
  "status_code": 200,
  "request_id": "2a6187f0-7e7b-40bb-a87e-xxx",
  "code": "",
  "message": "",
  "output": {
        "text": null,
        "finish_reason": null,
        "choices": null,
        "message": {
            "phase": "ResearchPlanning",
            "role": "assistant",
            "content": "",
            "extra": {
                "deep_research": {}
            },
            "status": "typing"
        },
        "fininshed": false,
        "fininshed_reason": "null"
    },
    "usage": {
        "input_tokens": 694,
        "output_tokens": 0
    },
    "request_id": "2a6187f0-7e7b-40bb-xxx"
}
Pembuatan Gambar
  • FAQ
Video Generation
Model Dunia
Audio
  • Pembuatan audio
Realtime API
Penyematan Teks
TokenPlan
Model production