DashScope Python SDK に組み込まれた SDK インテリジェントアシスタント。要件を伝えるだけでバージョン検証済みの実行可能コードが得られ、エラーメッセージやファイルパスを渡すだけで自動的に診断・修正・検証を行います。
DashScope SDK Expert(以下「SDK Expert」)は、dashscope Python SDK(1.27.3 以降)に組み込まれた SDK インテリジェントアシスタント CLI です。本ページは一般的な使用ガイドであり、SDK Expert を使った開発とトラブルシューティングの方法を説明します。各インターフェイスの完全なパラメーターはサイドバーの個別インターフェイスリファレンスページを参照してください。対応する機能領域は後述の「対応機能の概要」に記載しています。
SDK Expert ナレッジパックをインストールすると、次の skill が利用できます(すべて確認するには
SDK Expert は DashScope SDK のすべての機能領域(テキスト生成、マルチモーダル、音声、検索、ファインチューニングとデプロイ、Agent など)に対応しています。特定のインターフェイスのドキュメントやサンプルを調べるには
課題:SDK のインターフェイスは数が多く、バージョンの更新も速いため、開発者はパラメーター名、入力形式、モデル一覧を確認するためにドキュメントを読む必要がありました。
方法:SDK Expert に要件を伝えると、次の処理が自動で行われます。
ヒント:
課題:呼び出しがエラーになったとき、エラーコードの意味が分かりにくく、スタックトレースが SDK 内部を指すため、コードの問題かパラメーターの問題か判断しにくくなります。
方法(シナリオに応じて 3 つの方法から選択):
ヒント:
SDK Expert が勝手にソースコードを変更しますか?
いいえ。ファイルを変更する前に SDK Expert が diff プレビューを生成して確認を求め、確認後にのみ適用します。ロールバックにも対応しています。
オフラインで使えますか?
いいえ。SDK Expert はモデル推論を呼び出すため(トークンを消費し、Model Studio の料金体系で課金されます)、ネットワーク接続と有効な API キーが必要です。
生成されたコードをそのまま本番環境で使えますか?
SDK Expert はバージョン検証済みの実行可能コードを生成しますが、本番環境で使う前にクォータ、同時実行数、エラー処理、機密情報について自身で確認してください。
Python 以外のコードも生成できますか?
ほかの言語のコードテキストも生成できますが、Python 以外の SDK についてはバージョンを検証しません(バージョン体系が異なるため、自身で確認してください)。
自分のコードはアップロードされますか?
診断(
クイックスタート
-
API キーと base_url を準備する:Model Studio コンソールの「API Key 管理」でキー(
sk-プレフィックス)を作成します。キーはリージョンごとに独立しています。環境変数、またはセッション内の/setupで設定します。base_url はリージョンごとに異なります。ドメインの対応関係は ベース URL の概要 を参照してください。 -
SDK をインストール/アップグレードする:SDK Expert は dashscope Python SDK 1.27.3 で導入されました。
-
CLI を起動する:ターミナルで
dashscope(サブコマンドなし)を実行すると、SDK Expert の対話型セッションに入ります。python -m dashscope.acliでも起動できます(acli は SDK Expert の CLI エントリーモジュールです)。初回起動時に SDK Expert ナレッジパック(api-doc/diagnose などの skill を含む)のダウンロードを求められます。手動でインストールすることもできます。 -
ヘルプを表示する:セッション内で
/helpを入力すると、すべての command と skill を確認できます。command はセッション操作(/clear/help/exitなど)、skill は機能領域のスイッチ(/skill <名前>)です。判断が付かない場合は自然言語で質問すれば、SDK Expert が自動的に skill を選択します。 -
必要に応じて質問する:要件を自然言語で説明します。例:
- 「qwen-plus でストリーミング出力し、トークン消費量を集計して」
- 「このエラー
Throttling.RateQuotaはどういう意味で、どう直せばいい?」 - 「gen.py を読んで InvalidParameter エラーの根本原因を診断して」
@ファイルパスによるファイル添付(SDK Expert が直接読み取ります)、↑ キーによるコマンド履歴の呼び出しにも対応しています。
対応機能の概要
SDK Expert ナレッジパックをインストールすると、次の skill が利用できます(すべて確認するには /skill を実行)。
| skill | 用途 | 例 |
|---|---|---|
| api-doc | SDK API ドキュメントを検索する | /skill api-doc Generation |
| sdk-example | サンプルコードを生成する | /skill sdk-example TextEmbedding |
| error-code | エラーコードの意味と修正方法 | /skill error-code InvalidApiKey |
| diagnose | コードファイルを読み、根本原因を特定する | /skill diagnose ./my_code.py |
| explain-code | コードのロジックを説明する | /skill explain-code <コード> |
| translate | 多言語翻訳 | /skill translate en hello world |
| update-sdk | ナレッジインデックスを更新する | /skill update-sdk <sdk のパス> |
api-doc/sdk-example を使い、コード生成やトラブルシューティングは自然言語で質問するだけで済みます。
SDK Expert は完全な agentic CLI であり、マルチエージェント連携、MCP(Model Context Protocol、外部ツール連携の標準)サーバー、スケジュールタスク(
/cron)、監査(/audit)、セッションの圧縮と履歴(/compress、/history)などにも対応します。セッション内でよく使う / コマンドをカテゴリー別に示します。- セッション管理:
/help/clear/info/stats/setup/exit/feedback - 機能とツール:
/skill/mcp/voice/tts/copy - 履歴と監査:
/history/compress/cron/audit/dev/example
/help の出力を参照してください。ベストプラクティス 1:要件を伝えるだけ。ドキュメントを読まずに実行可能なコードを得る
課題:SDK のインターフェイスは数が多く、バージョンの更新も速いため、開発者はパラメーター名、入力形式、モデル一覧を確認するためにドキュメントを読む必要がありました。
方法:SDK Expert に要件を伝えると、次の処理が自動で行われます。
- 組み込みの SDK ナレッジベース(モデル一覧/パラメーター/入出力構造/エラーコード)と照合する
- ローカルの SDK バージョンを確認する(不一致の場合はアップグレードを促す)
- 実行可能なコードを生成し、実際に実行して出力を表示する
- 言語やフレームワークを指定する:「FastAPI のエンドポイントとしてラップして」「async/await で非同期に呼び出して」など
- バージョンを指定する:「dashscope 1.20.x を使っていますが、このパラメーターは使えますか?」——SDK Expert はインストール済みバージョンを確認してから回答します
- 詳細を追加で質問する:「パラメーターの値の範囲は?」「ほかに使えるモデルは?」
ベストプラクティス 2:トラブルシューティング。原因の特定と修正を任せる
課題:呼び出しがエラーになったとき、エラーコードの意味が分かりにくく、スタックトレースが SDK 内部を指すため、コードの問題かパラメーターの問題か判断しにくくなります。
方法(シナリオに応じて 3 つの方法から選択):
- エラーコードやエラーメッセージを貼り付ける →
/skill error-code <エラーコード>(例:/skill error-code Throttling.RateQuota)→ SDK Expert がエラーコードの意味に加えて、実行可能な修正案(同時実行数の調整/パラメーターの変更/クォータの申請)と必要に応じたコードスニペットを出力します。 - 問題のあるコードファイルのパスを渡す →
/skill diagnose <ファイルパス>(例:/skill diagnose gen.py)→ SDK Expert がソースコードを読み取り、よくある根本原因(旧形式の prompt の混在、messages 構造の誤り、api_key/workspace の未設定、非同期タスクのポーリング漏れ)と照合して、推定される根本原因と修正候補を出力します。 - 自動修正のループ →
/skill diagnoseで根本原因を特定 → 確認用の diff プレビューを生成 → 確認後に SDK Expert が修正を適用し、スクリプトを再実行して検証 → 「読み取り → 診断 → 修正 → 検証」の流れになります。SDK Expert はファイルを変更する前に確認を求め、ロールバックにも対応します。
- サーバー側ログと突き合わせるため、エラー報告には
request_idを添えてください(request_idはレスポンス本文のresponse.request_idフィールド、またはエラーオブジェクトの属性にあります) - 複雑な問題では、まず SDK Expert に「このコードのロジックを説明して」(
/skill explain-code)と依頼し、認識をそろえてから修正しましょう - SDK 自体の不具合や要件が満たされない場合は、GitHub に Issue を作成してフィードバックできます
よくある質問
SDK Expert が勝手にソースコードを変更しますか?
いいえ。ファイルを変更する前に SDK Expert が diff プレビューを生成して確認を求め、確認後にのみ適用します。ロールバックにも対応しています。
オフラインで使えますか?
いいえ。SDK Expert はモデル推論を呼び出すため(トークンを消費し、Model Studio の料金体系で課金されます)、ネットワーク接続と有効な API キーが必要です。
生成されたコードをそのまま本番環境で使えますか?
SDK Expert はバージョン検証済みの実行可能コードを生成しますが、本番環境で使う前にクォータ、同時実行数、エラー処理、機密情報について自身で確認してください。
Python 以外のコードも生成できますか?
ほかの言語のコードテキストも生成できますが、Python 以外の SDK についてはバージョンを検証しません(バージョン体系が異なるため、自身で確認してください)。
自分のコードはアップロードされますか?
診断(/skill diagnose)やコードの添付を行うと、コードの内容がモデルの推論に送信されます。機密データにはご注意ください。