3行でいうと
- 場面は5つです。①APIを呼ぶ、②考えるモードを切り替える、③Qwen Code で最初のセッションをする、④Qwen Code をスクリプトから呼ぶ(ヘッドレス)、⑤手元の推論サーバーを呼ぶ。
- Qwen Code は、ファイルを書き換える前に許可を求める、と公式のQuickstartにあります。許可の出し方は「承認モード」で変わり、Plan、Ask Permissions、Auto-Edit、Auto、YOLO の5つがあります。
- 思考モードの切り替えは、QwenCloud なら
enable_thinkingを直接渡し、自前のサーバーならchat_template_kwargsの中に入れる、とモデルカードにあります。 - 例の指示文(プロンプト)には「公式の例」と「この記事の例」があります。この記事の例は、手順の説明のために組んだもので、動作は確かめていません。
- 最初の1時間の順番は、末尾に「この記事の案」として書きました。公式が決めた順番ではありません。
この記事は、公式の資料を2026年10月25日に読んでまとめたものです。この記事は、実際に使って確かめた記録ではありません。運営者はQwenを入れていますが、使い心地はこの記事には書いていません。手順は公式の手順を順に並べたものです。「この記事の例」と書いた指示文や設定は、公式の記載に合わせて、この記事で組んだ例で、動作は確かめていません。画面の表記は変わります。手元の画面と照らして読んでください。
先に結論
- 返ってくるものは、公式が例を載せていない所が多い。 「First API call」のページも、出力例を載せていません。この記事は、出力を作文せず、「文章が返る」「確認が出る」など、記載から言える範囲だけを書きます。
- Qwen Code は、最初は読むだけの使い方から入れる。 承認モードに、読み取りだけの Plan があります。ファイルを変えない状態で、フォルダの説明を頼む、という入り方ができます(この記事の案)。
- スクリプトから使うなら、ヘッドレス。
qwen -p "..."で、画面なしで1回だけ動かせます。 - 自前のサーバーは、OpenAI互換のURLを呼ぶ。 05の起動手順のあと、同じ形のコードで、URLだけ変えて呼べます。
前提:用語をそろえる
- プロンプト:AIへの指示の文章です。
- セッション:Qwen Code を起動してから終了するまでの、ひと続きのやりとりです。
- 承認モード:Qwen Code がファイルの編集やシェルのコマンドを実行する前に、どこまで自動で進めるかの設定です。
- ヘッドレス:画面(対話の画面)を出さずに、1回の指示だけ実行する使い方です。
- 思考モード:答える前に、モデルが考えの過程(
<think>の部分)を出す動作です。 - ストリーミング:返事を少しずつ受け取る方式です。
- スラッシュコマンド:Qwen Code の中で
/から始めて入力する命令です。
たとえ話:厨房に入る見習い
Qwen Code は、厨房に入った見習いのようなものです。最初は、見ているだけ(Plan)、材料を切る前に毎回ひと声かける(Ask Permissions)、切るのは任せて火を使う前に声をかける(Auto-Edit)、と、任せる範囲を段階で決められます。どこまで任せるかを決めるのは、厨房の持ち主(自分)です。
場面1:APIを呼ぶ
05の手順5で作った hello_qwen.py を、手を加えながら使います。
手順
- 05の手順4で、環境変数
DASHSCOPE_API_KEYを入れ、新しいターミナルを開いたことを確かめます(echo $DASHSCOPE_API_KEY、Windows PowerShell はecho $env:DASHSCOPE_API_KEY)。 python hello_qwen.pyを実行します。- 起きること:モデルの返答の文章が、ターミナルに表示される、とコードから読めます。公式に出力の例はありません。エラーが出たときは、05の「つまずきと直し方」の最初の行(401)を見ます。
呼び方を変える(公式の記載から)
Model Studio のOpenAI互換のページと QwenCloud のページには、次の決まりが書かれています。
| 項目 | 公式の記載 |
|---|---|
| 必須の項目 | api_key、base_url、model、messages(Model Studio の互換のページ) |
messages の役割 |
system、user、assistant。system を置けるのは先頭の1つだけで、最後は user(Model Studio の互換のページ) |
| 任意の項目 | top_p、temperature、presence_penalty、n、max_tokens、seed、stream、stop、tools、stream_options |
| 制約 | tools と stream=True は、同時に使えない(同ページ) |
| ストリーミング | stream=True と stream_options={"include_usage": True}(同ページの例の説明) |
この記事の例(動作は確かめていません):先頭に system を足す。
completion = client.chat.completions.create(
model="qwen3.8-max",
messages=[
{"role": "system", "content": "あなたは、短く答える日本語のアシスタントです。"},
{"role": "user", "content": "APIキーを環境変数に入れる理由を、3行で説明してください。"}
]
)
clientの作り方は、05のhello_qwen.pyと同じです。- 上の指示文は、この記事の例です。
モデルの名前。 公式の「First API call」は qwen3.8-max を使っています。Qwen Code の従量課金の例は qwen3.7-plus です。使えるモデルとリージョンごとの違いは、QwenCloud の「Model pricing」と「Choose models」のページで確かめる、と公式にあります(02)。
場面2:考えるモードを切り替える
Hugging Face の Qwen3.8-27B のモデルカードに、思考モードの扱いが書かれています。
公式の記載
- 思考モードは、既定でオンです。出力は
<think>のブロックから始まります。 - オフにする。 自前のサーバー(vLLM、SGLang)では、
extra_bodyの中に"chat_template_kwargs": {"enable_thinking": False}を渡します。QwenCloud では、"enable_thinking": Falseを直接渡します。 preserve_thinking。既定でオンで、過去のすべてのメッセージの考えを保ちます。オフにすると、最新のユーザーの発言の考えだけが残ります。chat_template_kwargsの中にFalseを入れます(QwenCloud では直接)。reasoning_effort。xhigh(既定)、medium、lowのどれかです。- qwen3.8-max については、QwenCloud の各ページが、思考のオンとオフを切り替えられる、温度の既定は思考モードで0.6(0.6より低い値は0.6に引き上げられる)、と書いています。
手順(この記事の例。動作は確かめていません)
QwenCloud の OpenAI互換で、思考をオフにして呼ぶ書き方の例です。OpenAI の SDK では、SDK が知らない項目を extra_body で渡します。
completion = client.chat.completions.create(
model="qwen3.8-max",
messages=[{"role": "user", "content": "1+1は?"}],
extra_body={"enable_thinking": False},
)
- 上は「QwenCloud では
enable_thinkingを直接渡す」という記載に合わせて、この記事で組んだ例です。モデルによって、思考のオフが使えない場合があります(Cherry Studio のページには、「enable_thinkingは True に限られる」という趣旨のエラーが、思考専用のモデルで出る、とあります)。 - 起きること:思考オフなら、
<think>の部分がない返答になる、とモデルカードの記載から読めます。
サンプリングの値(モデルカード)
モデルカードに「Recommended Sampling Parameters」の見出しで載っている値は、次のとおりです。フレームワークによって、対応する項目が違う、とも書かれています。
| モード | 値 |
|---|---|
| 思考 | temperature=1.0, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=0.0, repetition_penalty=1.0 |
| 非思考(instruct) | temperature=0.7, top_p=0.80, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0 |
presence_penalty を0から2の間で上げると、終わらない繰り返しが減るが、言語が混ざることがある、と書かれています。qwen3.8-max の温度の話(上)とは、モデルが違うので、数字を混ぜません。
場面3:Qwen Code で最初のセッションをする
手順
- 05の手順3までを終え、
/doctorが通ることを確かめておきます。 - 作業するフォルダに移ります。
cd /path/to/your/project
qwen
- 画面が開いたら、
/helpと入力します。使えるコマンドの一覧が出る、と Quickstart にあります。 - 最初の質問をします。Quickstart の例(公式の例)は次のとおりです。
explain the folder structure
what can Qwen Code do?
- 起きること:モデルがフォルダを読み、説明を返す、と Quickstart の流れから読めます。具体的な出力は、公式に例がありません。
- ファイルを変える頼みごとをします。公式の例は次のとおりです。
add a hello world function to the main file
- 起きること:Quickstart には、「ファイルを変更する前に、許可を求める」とあります。許可を求める画面の見た目と選択肢の表記は、読んだページに載っていませんでした。手元の画面で確かめてください。
- 終わるときは
/quitか/exitです。
公式の例の続き(Quickstart)
| 種類 | 公式の例 |
|---|---|
| Git | what files have I changed?、commit my changes with a descriptive message、create a new branch called feature/quickstart、show me the last 5 commits、help me resolve merge conflicts |
| 修正 | add input validation to the user registration form、there's a bug where users can submit empty forms - fix it |
| ほか | リファクタリング、テスト、ドキュメント、レビューの例が各1つ |
この記事の例(日本語の指示文。動作は確かめていません):
このフォルダの構成を説明してください。まだファイルは変更しないでください。
README の「インストール」の節に、手順を3行で足してください。変更する前に、どこをどう変えるかを先に見せてください。
- 2つの指示文は、この記事の例です。日本語で頼めるかどうかは、公式のQuickstartに、出力の言語を
/language outputで変えられる、という記載があります(下の表)。
基本のコマンド(Quickstart)
| コマンド | 何をするか |
|---|---|
/auth |
認証の方法を変える |
/doctor |
認証と環境を確かめる |
/help(/?) |
コマンドの一覧 |
/compress |
会話の履歴を要約に置き換えて、トークンを減らす |
/clear(別名 reset、new) |
会話の履歴を消す |
/theme |
見た目の配色を変える |
/language |
言語の設定を見る、変える。/language ui zh-CN(画面の言語)、/language output Chinese(モデルの出力の言語)の例がある |
/quit(/exit) |
すぐ終了 |
/model |
モデルを切り替える(QwenCloud のページと Authentication のページ) |
/stats |
使用量の合計(Troubleshooting の記載) |
- 画面の言語に
jaなどの日本語が選べるかどうかは、読んだページに書かれていませんでした。 - ほかに、READMEは
@fileでファイルを指す書き方(対話の画面)と、/review、/batch、/loop、/bugfixというスキルを挙げています。使い方の詳細は、読んでいません。
承認モード:どこまで任せるか
「Approval Mode」のページの内容です。
| モード | 公式の説明 |
|---|---|
| Plan | 読み取りだけの分析。ファイルの編集とシェルのコマンドは実行されない |
Ask Permissions(設定値は default) |
ファイルの編集とシェルのコマンドを、毎回手で承認する |
| Auto-Edit | 編集のツール(edit、write_file、notebook_edit)は自動で承認。シェルのコマンドは承認が要る |
| Auto | LLMの分類器が、問題ないと判断したシェルのコマンド、ネットワークの呼び出し、作業場所の外の編集を承認し、リスクがあると判断したものを止める。読み取りと作業場所の中の編集は分類器を通さない |
| YOLO | すべてのツールの呼び出しを自動で承認 |
- 切り替え。 Shift+Tab(Windows は Tab)で順に切り替わります。順番は、plan、default、auto-edit、auto、yolo、plan と書かれています。コマンドでは、
/plan、/plan <内容>、/plan exit、/approval-mode、/approval-mode default(auto-edit、auto、yolo)です。 - 範囲。
/approval-mode yoloは、そのセッションだけです。--projectでプロジェクトの既定、--userで全体の既定になります。 - 設定ファイル。
~/.qwen/settings.jsonか、プロジェクトの.qwen/settings.jsonに、次のように書けます(公式の例)。
{
"tools": {
"approvalMode": "auto-edit"
}
}
- 既定のモード。 ページの中で書き方が揺れています。クイックリファレンスは「Auto Mode (default)」、Ask Permissions の節は「Qwen Code を始めたときの最初のモード」、使い分けの節は「Auto-Accept Edits (default mode)」と書いている、と取得結果にあります。公式も「インストールしたバージョンで確かめる」という趣旨で書いています。
- YOLO の注意。 公式は、使う前に、そのコードを信頼できるか、AI がすることを理解しているか、大事なファイルを退避かコミットしたか、を確かめるよう書いています。
手順(Plan で読むだけにする。この記事の案):
qwenを起動します。/plan このフォルダの構成を調べて、直したほうがよい点を挙げてくださいと入力します。公式の書き方(/plan <内容>)に合わせた、この記事の例です。- 起きること:Plan では、ファイルの編集とシェルのコマンドは実行されない、と公式にあります。
- 終わったら
/plan exitで、もとのモードに戻ります。
信頼するフォルダの設定(任意)
- 機能は、既定ではオフです。
~/.qwen/settings.jsonに"security": {"folderTrust": {"enabled": true}}の形で書くとオンになります(Trusted Folders のページ)。 - オンにすると、最初に実行したフォルダで、「Trust folder」「Trust parent folder」「Don’t trust」の3択が出ます。決定は
~/.qwen/trustedFolders.jsonに保存されます。 - 信頼しないフォルダでは、プロジェクトの
.qwen/settings.jsonと.envが読み込まれず、拡張の導入ができず、ツールの自動承認が無効になります。 /permissionsで、そのフォルダの信頼の確認を開き直せます。
場面4:Qwen Code をスクリプトから呼ぶ(ヘッドレス)
手順
- 05の接続(環境変数か
settings.json)を済ませます。 - 1回だけ実行します。
qwen --prompt "What is machine learning?"
- 標準入力から渡すこともできます(公式の例)。
cat README.md | qwen --prompt "Summarize this documentation"
- 起きること:画面は出ず、最終の返答だけが標準出力に出る(既定の
text)、と公式にあります。
出力の形式
| 形式 | 公式の説明 |
|---|---|
text(既定) |
最終の返答だけ |
json |
全メッセージをためて、終わったとき1つの配列で出す。配列は、system の session_start、assistant、最後の result の順。jq -r '.[-1].result' で答えを取り出せる |
stream-json |
1行に1つのJSONで、起きた順に出す。--include-partial-messages で途中の経過も出る |
qwen -p "What is the capital of France?" --output-format json
主なフラグ
-p(--prompt)、-o(--output-format)、--approval-mode、-y(--yolo、サンドボックスは有効にならない、と公式の注意)、-m(--model)、--continue(直近のセッションを再開)、--resume [sessionId]、--max-session-turns、--max-wall-time(例:10m)、--max-tool-calls、--safe-mode、-d(--debug)。
- ヘッドレスは、既定では Ask Permissions で動く、と Approval Mode のページにあります。許可が必要な操作が出たとき、止まるのか、拒否されるのか、失敗するのかは、公式の文書に記載が見つかりませんでした。
- 終了コード(公式):53は
--max-session-turnsの超過、55は--max-wall-timeか--max-tool-callsの超過、130は SIGINT。 - CI などで無人で動かす例(公式):
qwen -p "..." --yolo --max-session-turns N --max-wall-time 10m --output-format json
--yolo は、すべての操作を自動で承認します。公式は、信頼できる隔離環境(CI のランナーなど)向けの組み合わせとして載せています。使う前に、承認モードの注意(上)を読んでください。429と529のエラーを延々と再試行するには、QWEN_CODE_UNATTENDED_RETRY=1 を明示します(CI=true だけでは有効にならない、と書かれています)。
場面5:手元の推論サーバーを呼ぶ
05の節 E で、vLLM などを http://localhost:8000/v1 で起動した前提です。
手順(この記事の例。動作は確かめていません)
- 05の手順1のコマンドでサーバーを起動したままにします。
- 別のターミナルで、OpenAI の SDK を入れます(モデルカードの手順は
pip install -U openai)。 - モデルカードは、
OPENAI_BASE_URLとOPENAI_API_KEYを環境変数に入れる形を書いています。次は、その書き方に合わせた例です。
export OPENAI_BASE_URL='http://localhost:8000/v1'
export OPENAI_API_KEY='dummy'
- Python で呼びます。
from openai import OpenAI
client = OpenAI() # 環境変数から読む
r = client.chat.completions.create(
model="Qwen/Qwen3.8-27B",
messages=[{"role": "user", "content": "Hello"}],
)
print(r.choices[0].message.content)
OPENAI_API_KEYに何を入れるかは、公式のカードではyour-api-keyという置き換えの書き方です。自前のサーバーでキーの確認を設定していなければ、何かの文字を入れるだけで足りるかどうかは、読んだページに書かれていませんでした(上のdummyは、この記事の例です)。- 思考をオフにするときは、
extra_bodyに{"chat_template_kwargs": {"enable_thinking": False}}を渡します(場面2)。 - 画像を入れるときは、
messagesのcontentにtype: "image_url"の項目を入れる形が、モデルカードのcurlの例にあります。 - 起きること:サーバーの側の端末に、リクエストのログが出る場合があります(これは僕らの見立てで、公式の記載ではありません)。
場面6:チャット(Qwen Studio)で使う
- chat.qwen.ai のページの説明文には、チャット、画像と動画の理解、画像の生成と編集、文書の処理、ツールの利用、音声と動画のチャット、アーティファクトが並んでいます(05のA)。
- ただし、サインインの方法、入力欄、ファイルの添付、機能の切り替えなど、画面の順番の手順は、読んだページに出ていませんでした。この記事は、画面の手順を書きません。
- この記事の例(機能の確かめ用)。 画面が開けたら、次のような短い指示文で、動きを見ることができます。これは、この記事の例で、返事がどうなるかは、公式に記載がありません。
次の文を、小学生にもわかる3文に直してください。
(ここに、自分で用意した短い文章を貼る)
- 入力した内容の扱い(学習への利用、保管)は、規約とプライバシーポリシーの本文を読めておらず、確認できていません(01、04)。個人情報や仕事の資料を入れる前に、原文を読んでください。
最初の1時間の順番(この記事の案)
公式が決めた順番ではなく、05と06の手順を並べ替えた、この記事の案です。
| 時間の目安 | やること | 参照 |
|---|---|---|
| 最初の10分 | 入口を決める。API なら、リージョンを決めてキーを作る | 05のB |
| 次の10分 | 環境変数に入れて、hello_qwen.py を実行する |
05のB、場面1 |
| 次の10分 | system の追加、思考のオフ、を1つずつ変えて返りを見る | 場面1、2 |
| 次の15分 | Qwen Code を入れ、/auth と /doctor まで進める |
05のD |
| 次の15分 | Plan で読むだけの質問をし、次に Ask Permissions で小さな変更を頼む | 場面3 |
- 費用がかかる呼び出しが含まれます。無料枠の条件(01、04)を、最初に見てください。
- ローカルの推論サーバー(場面5)は、計算機の条件が読めていないので、この表に入れていません。
気をつけること
- 運営者は Qwen を入れていますが、使い心地はこの記事には書いていません。 この記事の手順は、公式の手順を順に並べたものです。動作を確かめた記録ではありません。
- 「この記事の例」は、動作未確認。 指示文、
extra_bodyの渡し方、localhostの呼び出しは、公式の記載に合わせて組んだ例です。 - 出力の見た目は書いていない。 公式が例を載せていないためです。画面に出るものは、手元で確かめてください。
- 許可の画面。 Qwen Code が許可を求める画面の文言と選択肢は、読んだページに出ていませんでした。YOLO と Auto は、確認の回数を減らします。どこまで任せるかは、自分で決めます。
- 読めなかった所。 Qwen Studio のチャットの画面の手順、Qwen Code の
@fileと各スキルの詳しい説明、Qwen Code の Settings のページの後半は、読んでいません。 - 料金。 この記事に、金額と回数は書いていません。04を見てください。
- データの行き先。 APIは、設定したリージョンのエンドポイントに、Qwen Code は、つないだ先のモデルの提供元に、内容が送られます。Qwen Code 自体は、プロンプトとコードをモデルの学習に使わない、と公式の文書にあります。つないだ先の扱いは、先の規約によります。
出典
- First API call(QwenCloud Docs、確認日 2026-10-25)
- Qwen Code(QwenCloud Docs、確認日 2026-10-25)
- Cherry Studio(QwenCloud Docs、確認日 2026-10-25)
- OpenAI compatibility(Alibaba Cloud Model Studio、確認日 2026-10-25)
- qwen-code README(QwenLM、GitHub、確認日 2026-10-25)
- Qwen Code Quickstart(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen Code Approval Mode(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen Code Headless Mode(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen Code Trusted Folders(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen Code Troubleshooting(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen Code Authentication(Qwen Codeドキュメント、確認日 2026-10-25)
- Qwen3.8-27B モデルカード(Qwen、Hugging Face、確認日 2026-10-25)
- QwenLM/Qwen3.8 README(QwenLM、GitHub、確認日 2026-10-25)
- Qwen(Qwenチーム、Alibaba、chat.qwen.ai、確認日 2026-10-25)