Qwen Code の実行とデプロイメント
このドキュメントでは、Qwen Code の実行方法と、Qwen Code が使用するデプロイメントアーキテクチャについて説明します。
Qwen Code の実行
Qwen Code を実行する方法はいくつかあります。選択する方法は、使用方法によって異なります。
1. 標準インストール(一般的なユーザー向け)
これはエンドユーザーが Qwen Code をインストールするための推奨方法です。NPM レジストリから Qwen Code パッケージをダウンロードします。
-
グローバルインストール:
npm install -g @qwen-code/qwen-codeその後、任意の場所から CLI を実行します:
qwen -
NPX 実行:
# グローバルインストールせずに NPM から最新バージョンを実行 npx @qwen-code/qwen-code
2. サンドボックスでの実行 (Docker/Podman)
セキュリティと分離のため、Qwen Code はコンテナ内で実行できます。これは CLI が副作用を及ぼす可能性のあるツールを実行するデフォルトの方法です。
- レジストリから直接実行:
公開されているサンドボックスイメージを直接実行できます。これは Docker しかなく、CLI を実行したい環境で便利です。
# 公開されているサンドボックスイメージを実行 docker run --rm -it ghcr.io/qwenlm/qwen-code:0.0.11 --sandboxフラグの使用: Qwen Code をローカルにインストールしている場合(上記の標準インストールを使用)、サンドボックスコンテナ内で実行するように指示できます。qwen --sandbox -y -p "your prompt here"
3. ソースから実行 (Qwen Code コントリビューター向け)
プロジェクトのコントリビューターは、ソースコードから直接 CLI を実行したい場合があるでしょう。
-
開発モード: この方法はホットリロードを提供し、活発な開発に役立ちます。
# リポジトリのルートから npm run start -
プロダクションライクモード(リンクされたパッケージ): この方法は、ローカルパッケージをリンクすることでグローバルインストールをシミュレートします。プロダクションワークフローでローカルビルドをテストするのに便利です。
# ローカルの cli パッケージをグローバル node_modules にリンク npm link packages/cli # これで `qwen` コマンドを使用してローカルバージョンを実行可能 qwen
4. GitHub から最新の Qwen Code コミットを実行
GitHub リポジトリから直接、最新のコミットバージョンの Qwen Code を実行できます。これはまだ開発中の機能をテストするのに便利です。
# GitHub のメインブランチから直接 CLI を実行
npx https://github.com/QwenLM/qwen-codeデプロイメントアーキテクチャ
上記の実行方法は、以下のアーキテクチャコンポーネントとプロセスによって実現されています。
NPM パッケージ
Qwen Code プロジェクトは、コアパッケージを NPM レジストリに公開するモノレポです。
@qwen-code/qwen-code-core: バックエンド。ロジックとツール実行を処理します。@qwen-code/qwen-code: ユーザー向けフロントエンド。
これらのパッケージは、標準インストール時およびソースから Qwen Code を実行する際に使用されます。
ビルドおよびパッケージングプロセス
配布チャネルに応じて、2 つの異なるビルドプロセスが使用されます。
-
NPM 公開: NPM レジストリに公開する場合、
@qwen-code/qwen-code-coreと@qwen-code/qwen-codeの TypeScript ソースコードが TypeScript コンパイラ (tsc) を使用して標準の JavaScript にトランスパイルされます。生成されたdist/ディレクトリが NPM パッケージとして公開されます。これは TypeScript ライブラリの標準的なアプローチです。 -
GitHub
npx実行: GitHub から最新バージョンの Qwen Code を直接実行する場合、package.jsonのprepareスクリプトによって異なるプロセスがトリガーされます。このスクリプトはesbuildを使用して、アプリケーション全体とその依存関係を単一の自己完結型 JavaScript ファイルにバンドルします。このバンドルはユーザーのマシン上でオンザフライで作成され、リポジトリにはチェックインされません。
Docker サンドボックスイメージ
Docker ベースの実行方法は、qwen-code-sandbox コンテナイメージによってサポートされています。このイメージはコンテナレジストリに公開されており、事前にインストールされたグローバル版の Qwen Code が含まれています。
リリースプロセス
リリースプロセスは GitHub Actions によって自動化されています。リリースワークフローは以下のアクションを実行します。
tscを使用して NPM パッケージをビルドします。- NPM パッケージをアーティファクトレジストリに公開します。
- バンドルされたアセットを含む GitHub リリースを作成します。