すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:Qwen への最初の API 呼び出し

最終更新日:Jan 22, 2026

Alibaba Cloud の Model Studio は、モデルを呼び出すための API を提供します。OpenAI 互換のインターフェイスまたは DashScope SDK を使用して接続できます。

このトピックでは、Qwen を例として、モデル API を呼び出すプロセスを説明します。このトピックでは、以下の方法を学習します:

  • API キーの取得

  • ローカル開発環境のセットアップ

  • Qwen API の呼び出し

アカウント設定

  1. アカウントの作成:Alibaba Cloud アカウントをお持ちでない場合は、まず作成してください。

    問題が発生した場合は、「Alibaba Cloud アカウントの登録」をご参照ください。
  2. Model Studio の有効化: Alibaba Cloud アカウントを使用してModel Studio コンソールに移動します。利用規約を読み、同意すると、Model Studio は自動的に有効化されます。利用規約が表示されない場合、サービスはすでに有効化されています。

  3. API キーの作成: [キー管理] ページに移動し、[API キーの作成] をクリックします。その後、[API キー] を使用してモデルを呼び出すことができます。

API キーを環境変数として設定

コード内でキーを公開することを避け、漏洩のリスクを低減するために、API キーを環境変数として設定します。

操作手順

Linux

永続的な環境変数の追加

API キーを永続的な環境変数として設定します:

  1. 次のコマンドを実行して、環境変数を ~/.bashrc ファイルに追加します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    echo "export DASHSCOPE_API_KEY='YOUR_DASHSCOPE_API_KEY'" >> ~/.bashrc

    または、~/.bashrc ファイルを手動で変更することもできます。

    手動での編集

    次のコマンドを実行して ~/.bashrc ファイルを開きます。

    nano ~/.bashrc

    設定ファイルに次の内容を追加します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    export DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY"

    nano エディターで、Ctrl + X を押し、次に Y を押し、Enter キーを押してファイルを保存して閉じます。

  2. 次のコマンドを実行して変更を有効にします。

    source ~/.bashrc
  3. 別のターミナルウィンドウを開き、次のコマンドを実行して環境変数が有効になっているかを確認します。

    echo $DASHSCOPE_API_KEY

一時的な環境変数の追加

現在のセッションでは、API キーを一時的な環境変数として設定します:

  1. 次のコマンドを実行します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    export DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY"
  2. 次のコマンドを実行して環境変数が有効になっているかを確認します。

    echo $DASHSCOPE_API_KEY

macOS

永続的な環境変数の追加

API キーを永続的な環境変数として設定します:

  1. ターミナルで次のコマンドを実行して、デフォルトのシェルタイプを確認します。

    echo $SHELL
  2. デフォルトのシェルタイプに対応する手順に従います。

    Zsh
    1. 次のコマンドを実行して、環境変数を ~/.zshrc ファイルに追加します。

      # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
      echo "export DASHSCOPE_API_KEY='YOUR_DASHSCOPE_API_KEY'" >> ~/.zshrc

      または、~/.zshrc ファイルを手動で変更することもできます。

      手動での編集

      次のコマンドを実行してシェル設定ファイルを開きます。

      nano ~/.zshrc

      設定ファイルに次の内容を追加します。

      # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
      export DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY"

      nano エディターで、Ctrl + X を押し、次に Y を押し、Enter キーを押してファイルを保存して閉じます。

    2. 次のコマンドを実行して変更を有効にします。

      source ~/.zshrc
    3. 別のターミナルウィンドウを開き、次のコマンドを実行して環境変数が有効になっているかを確認します。

      echo $DASHSCOPE_API_KEY
    Bash
    1. 次のコマンドを実行して、環境変数を ~/.bash_profile ファイルに追加します。

      # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
      echo "export DASHSCOPE_API_KEY='YOUR_DASHSCOPE_API_KEY'" >> ~/.bash_profile

      または、~/.bash_profile ファイルを手動で変更することもできます。

      手動での編集

      次のコマンドを実行してシェル設定ファイルを開きます。

      nano ~/.bash_profile

      設定ファイルに次の内容を追加します。

      # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
      export DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY"

      nano エディターでファイルを保存して閉じるには、Ctrl+X を押し、次に Y を押し、Enter キーを押します。

    2. 次のコマンドを実行して変更を有効にします。

      source ~/.bash_profile
    3. 別のターミナルウィンドウを開き、次のコマンドを実行して環境変数が有効になっているかを確認します。

      echo $DASHSCOPE_API_KEY

一時的な環境変数の追加

現在のセッションでのみ環境変数を使用したい場合は、一時的な環境変数として追加します。

次のコマンドは Zsh と Bash に適用されます。
  1. 次のコマンドを実行します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    export DASHSCOPE_API_KEY="YOUR_DASHSCOPE_API_KEY"
  2. 次のコマンドを実行して環境変数が有効になっているかを確認します。

    echo $DASHSCOPE_API_KEY

Windows

Windows では、システムのプロパティ、CMD、または PowerShell を使用して環境変数を設定できます。

システムのプロパティ

説明
  • この方法で設定された環境変数は永続的です。

  • システム環境変数を変更するには、管理者権限が必要です。

  • 環境変数を設定した後、開いているコマンドウィンドウ、統合開発環境 (IDE)、またはその他の実行中のアプリケーションでは、変更はすぐには有効になりません。これらのプログラムを再起動するか、新しいコマンドラインウィンドウを開いて環境変数を有効にする必要があります。

  1. Windows デスクトップで Win+Q を押し、検索ボックスで「システム環境変数の編集」を検索し、[システムのプロパティ] ウィンドウを開きます。

  2. [システムのプロパティ] ウィンドウで、[環境変数] をクリックします。次に、[システム環境変数] エリアで [新規] をクリックします。[変数名]DASHSCOPE_API_KEY に、[変数値] をご利用の DashScope API キーに設定します。

    image

  3. 開いている 3 つのウィンドウすべてで [OK] をクリックして変更を保存し、環境変数の設定を完了します。

  4. CMD ウィンドウまたは Windows PowerShell ウィンドウを開き、次のコマンドを実行して環境変数が有効になっているかを確認します。

    • CMD クエリコマンド:

      echo %DASHSCOPE_API_KEY%

      image

    • Windows PowerShell クエリコマンド:

      echo $env:DASHSCOPE_API_KEY

      image

CMD

永続的な環境変数の追加

現在のユーザーのすべての新しいセッションで API キー環境変数を永続させたい場合は、次の手順を実行します。

  1. コマンドプロンプトで次のコマンドを実行します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    setx DASHSCOPE_API_KEY "YOUR_DASHSCOPE_API_KEY"
  2. 新しいコマンドプロンプトウィンドウを開きます。

  3. 新しいコマンドプロンプトウィンドウで次のコマンドを実行して、環境変数が有効になっているかを確認します。

    echo %DASHSCOPE_API_KEY%

    image

一時的な環境変数の追加

現在のセッションでのみ環境変数を使用したい場合は、コマンドプロンプトで次のコマンドを実行します。

# YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
set DASHSCOPE_API_KEY=YOUR_DASHSCOPE_API_KEY

現在のセッションで次のコマンドを実行して、環境変数が有効になっているかを確認できます。

echo %DASHSCOPE_API_KEY%

image

PowerShell

永続的な環境変数の追加

現在のユーザーのすべての新しいセッションで API キー環境変数を永続させたい場合は、次の手順を実行します。

  1. PowerShell で次のコマンドを実行します。

    # YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
    [Environment]::SetEnvironmentVariable("DASHSCOPE_API_KEY", "YOUR_DASHSCOPE_API_KEY", [EnvironmentVariableTarget]::User)
  2. 新しい PowerShell ウィンドウを開きます。

  3. 新しい PowerShell ウィンドウで次のコマンドを実行して、環境変数が有効になっているかを確認します。

    echo $env:DASHSCOPE_API_KEY

    image

一時的な環境変数の追加

現在のセッションでのみ環境変数を使用したい場合は、PowerShell で次のコマンドを実行します。

# YOUR_DASHSCOPE_API_KEY をご利用の Alibaba Cloud Model Studio API キーに置き換えます。
$env:DASHSCOPE_API_KEY = "YOUR_DASHSCOPE_API_KEY"

現在のセッションで次のコマンドを実行して、環境変数が有効になっているかを確認できます。

echo $env:DASHSCOPE_API_KEY

image

プログラミング言語の選択

使い慣れた言語またはツールを選択して、モデル API を呼び出します。

Python

ステップ 1: Python 環境の設定

Python バージョンの確認

ターミナルで次のコマンドを入力して、現在の開発環境に Python と pip がインストールされているかを確認できます:

Python のバージョンは 3.8 以降である必要があります。詳細については、「Python のインストール」をご参照ください。

python -V
pip --version

次の例では、Windows の CMD を使用しています:

image

よくある質問

Q: python -V または pip --version を実行するとエラーが発生します:

  • 'python' is not recognized as an internal or external command, operable program or batch file.

  • 'pip' is not recognized as an internal or external command, operable program or batch file.

  • -bash: python: command not found

  • -bash: pip: command not found

解決策:

Windows
  1. 開発環境に Python がインストールされ、python.exe が PATH 環境変数に追加されていることを確認します。詳細については、「Python のインストール」をご参照ください。image

  2. Python をインストールし、環境変数に追加してもエラーが解決しない場合は、現在のターミナルを閉じて新しいターミナルを開き、再度試してください。

Linux と macOS

  1. 開発環境に Python がインストールされていることを確認します。詳細については、「Python のインストール」をご参照ください。

  2. Python をインストールしてもエラーが解決しない場合は、which python pip コマンドを実行して、pythonpip がシステムに存在するかどうかを確認します。

    • 次の結果が返された場合は、現在のターミナルを閉じて新しいターミナルを開き、再度試してください。

      /usr/bin/python
      /usr/bin/pip
    • 次の出力が表示された場合は、代わりに which python3 pip3 を実行します。

      /usr/bin/which: no python in (/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
      /usr/bin/which: no pip in (/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)

      次の出力が表示された場合は、python3 -Vpip3 --version を使用してバージョンを確認します。

      /usr/bin/python3
      /usr/bin/pip3

仮想環境の設定 (任意)

Python がインストールされている場合は、仮想環境を作成して OpenAI Python SDK または DashScope Python SDK をインストールできます。これにより、他のプロジェクトとの依存関係の競合を防ぐことができます。

  1. 仮想環境の作成

    次のコマンドを実行して、.venv という名前の仮想環境を作成できます:

    # コマンドが失敗した場合は、python を python3 に置き換えて再実行できます
    python -m venv .venv
  2. 仮想環境のアクティベート

    Windows を使用している場合は、次のコマンドを実行して仮想環境をアクティベートします:

    .venv\Scripts\activate

    macOS または Linux を使用している場合は、次のコマンドを実行して仮想環境をアクティベートします:

    source .venv/bin/activate

OpenAI Python SDK または DashScope Python SDK のインストール

OpenAI Python SDK または DashScope Python SDK を使用して、Model Studio プラットフォーム上のモデルを呼び出すことができます。

OpenAI Python SDK のインストール

次のコマンドを実行して、OpenAI Python SDK をインストールまたはアップグレードします:

# コマンドが失敗した場合は、pip を pip3 に置き換えて再実行できます
pip install -U openai

image

Successfully installed ... openai-x.x.x と表示されたら、OpenAI Python SDK のインストールは完了です。

DashScope Python SDK のインストール

次のコマンドを実行して、DashScope Python SDK をインストールまたはアップグレードします:

# コマンドが失敗した場合は、pip を pip3 に置き換えて再実行できます
pip install -U dashscope

image

Successfully installed ... dashscope-x.x.x と表示されたら、DashScope Python SDK のインストールは完了です。

ステップ 2: モデル API の呼び出し

OpenAI Python SDK

Python と OpenAI Python SDK をインストールしている場合は、次の手順に従って API リクエストを送信します。

  1. hello_qwen.py という名前の新しいファイルを作成します。

  2. 次のコードを hello_qwen.py にコピーしてファイルを保存します。

    import os
    from openai import OpenAI
    
    try:
        client = OpenAI(
            # シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーは相互に交換できません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
            # 環境変数が設定されていない場合は、お使いの Model Studio API キーを使用して、次の行を api_key="sk-xxx" に置き換えてください。
            api_key=os.getenv("DASHSCOPE_API_KEY"),
            # 注: base_url はリージョンごとに異なります。以下の例では、シンガポールリージョンの base_url を使用しています。
            # - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1
            # - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1
            # - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1
            base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
        )
    
        completion = client.chat.completions.create(
            model="qwen-plus",  
            messages=[
                {'role': 'system', 'content': 'あなたは役立つアシスタントです。'},
                {'role': 'user', 'content': 'あなたは誰ですか?'}
                ]
        )
        print(completion.choices[0].message.content)
    except Exception as e:
        print(f"エラーメッセージ: {e}")
        print("詳細については、ドキュメントをご参照ください: https://www.alibabacloud.com/help/model-studio/developer-reference/error-code")
  3. コマンドラインから python hello_qwen.py または python3 hello_qwen.py を実行します。

    No such file or directory と表示された場合は、ファイルの完全なパスを指定してください。

    コマンドを実行すると、次の出力が表示されます:

    I am a large-scale language model developed by Alibaba Cloud. My name is Qwen.

DashScope Python SDK

Python と DashScope Python SDK をインストールしている場合は、次の手順に従って API リクエストを送信します。

  1. hello_qwen.py という名前の新しいファイルを作成します。

  2. 次のコードを hello_qwen.py にコピーしてファイルを保存します。

    import os
    from dashscope import Generation
    import dashscope
    # 注: base_url はリージョンごとに異なります。 以下の例では、シンガポールリージョンの base_url を使用しています。
    # - シンガポール: https://dashscope-intl.aliyuncs.com/api/v1
    # - 米国 (バージニア): https://dashscope-us.aliyuncs.com/api/v1
    # - 中国 (北京): https://dashscope.aliyuncs.com/api/v1
    dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
    
    messages = [
        {'role': 'system', 'content': 'You are a helpful assistant.'},
        {'role': 'user', 'content': 'Who are you?'}
        ]
    response = Generation.call(
        # シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーに互換性はありません。 API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
        # 環境変数が設定されていない場合は、ご自身の Model Studio API キーを使用して、次の行を api_key = "sk-xxx" のように置き換えます。
        api_key=os.getenv("DASHSCOPE_API_KEY"), 
        model="qwen-plus",   
        messages=messages,
        result_format="message"
    )
    
    if response.status_code == 200:
        print(response.output.choices[0].message.content)
    else:
        print(f"HTTP status code: {response.status_code}")
        print(f"Error code: {response.code}")
        print(f"Error message: {response.message}")
        print("For more information, see the documentation: https://www.alibabacloud.com/help/model-studio/developer-reference/error-code")
  3. コマンドラインから python hello_qwen.py または python3 hello_qwen.py を実行します。

    説明

    このコマンドは、Python ファイルが含まれているディレクトリから実行してください。どの場所からでも実行するには、ファイルの完全なパスを指定してください。

    コマンドを実行すると、次の出力が表示されます:

    I am a large-scale language model from Alibaba Cloud. My name is Qwen.

Node.js

ステップ 1: Node.js 環境の設定

Node.js のインストール状況の確認

ターミナルで次のコマンドを入力して、現在の開発環境に Node.js と npm がインストールされているかを確認できます:

node -v
npm -v

次の例では、Windows の CMD を使用しています:

image

これにより、現在の Node.js のバージョンが出力されます。Node.js がインストールされていない場合は、Node.js 公式サイトにアクセスしてダウンロードしてください。

モデル呼び出し SDK のインストール

ターミナルで次のコマンドを実行できます:

npm install --save openai
# または
yarn add openai
説明

インストールが失敗した場合は、レジストリミラーを設定してインストールを完了できます。例:

npm config set registry https://registry.npmmirror.com/

レジストリミラーを設定した後、SDK のインストールコマンドを再度実行してください。

image

added xx package in xxs と表示されたら、OpenAI SDK のインストールは完了です。npm list openai を使用して、特定のバージョン情報をクエリできます。

ステップ 2: モデル API の呼び出し

  1. 新しい hello_qwen.mjs ファイルを作成します。

  2. 次のコードをファイルにコピーします。

    import OpenAI from "openai";
    
    try {
        const openai = new OpenAI(
            {
                // シンガポール、米国 (バージニア)、中国 (北京) の各リージョンで API キーは異なります。 API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
                // 環境変数が設定されていない場合は、次の行をお使いの Model Studio API キーを使用して、apiKey: "sk-xxx" のように置き換えてください。
                apiKey: process.env.DASHSCOPE_API_KEY,
                // 注: base_url はリージョンごとに異なります。 以下の例では、シンガポールリージョンの base_url を使用しています。
                // - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1
                // - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1
                // - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1
                baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
            }
        );
        const completion = await openai.chat.completions.create({
            model: "qwen-plus",  
            messages: [
                { role: "system", content: "You are a helpful assistant." },
                { role: "user", content: "Who are you?" }
            ],
        });
        console.log(completion.choices[0].message.content);
    } catch (error) {
        console.log(`エラーメッセージ: ${error}`);
        console.log("詳細については、ドキュメントをご参照ください: https://www.alibabacloud.com/help/model-studio/developer-reference/error-code");
    }
  3. コマンドラインから次のコマンドを実行して API リクエストを送信します:

    node hello_qwen.mjs
    説明
    • このコマンドは hello_qwen.mjs が含まれているディレクトリから実行してください。どの場所からでも実行するには、ファイルの完全なパスを指定してください。

    • SDK が hello_qwen.mjs と同じディレクトリにインストールされていることを確認してください。異なるディレクトリにある場合、Cannot find package 'openai' imported from xxx というエラーが表示されます。

    コマンドが正常に実行されると、次の出力が表示されます:

    I am a language model from Alibaba Cloud. My name is Qwen.

Java

ステップ 1: Java 環境の設定

Java バージョンの確認

ターミナルで次のコマンドを実行できます:

java -version
# (任意) Maven を使用して Java プロジェクトを管理およびビルドする場合は、Maven が開発環境に正しくインストールされていることも確認する必要があります
mvn --version

次の例では、Windows の CMD を使用しています:

image

DashScope Java SDK には Java 8 以降が必要です。出力の最初の行を確認して Java のバージョンを確認できます。たとえば、openjdk version "16.0.1" 2021-04-20 というメッセージは、現在の Java バージョンが Java 16 であることを示します。現在の開発環境に Java がインストールされていない場合、またはバージョンが Java 8 より前の場合は、Java ダウンロードにアクセスしてダウンロードおよびインストールしてください。

モデル呼び出し SDK のインストール

環境に Java がインストールされている場合は、DashScope Java SDK をインストールします。SDK のバージョンについては、「DashScope Java SDK」をご参照ください。次のコマンドを実行して Java SDK の依存関係を追加します。the-latest-version を最新のバージョン番号に置き換えてください。

XML

  1. Maven プロジェクトの pom.xml ファイルを開きます。

  2. <dependencies> タグ内に次の依存関係情報を追加します。

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dashscope-sdk-java</artifactId>
        <!-- 'the-latest-version' を最新のバージョン番号に置き換えます: https://mvnrepository.com/artifact/com.alibaba/dashscope-sdk-java -->
        <version>the-latest-version</version>
    </dependency>
  3. pom.xml ファイルを保存します。

  4. mvn compilemvn clean install などの Maven コマンドを使用して、プロジェクトの依存関係を更新します。Maven は自動的に DashScope Java SDK をダウンロードしてプロジェクトに追加します。

次の例では、Windows 上の IntelliJ IDEA 統合開発環境 (IDE) を使用しています:

image

Gradle

  1. Gradle プロジェクトの build.gradle ファイルを開きます。

  2. dependencies ブロック内に次の依存関係情報を追加します。

    dependencies {
        // 'the-latest-version' を最新のバージョン番号に置き換えます: https://mvnrepository.com/artifact/com.alibaba/dashscope-sdk-java
        implementation group: 'com.alibaba', name: 'dashscope-sdk-java', version: 'the-latest-version'
    }
  3. build.gradle ファイルを保存します。

  4. コマンドラインで、プロジェクトのルートディレクトリに切り替え、次の Gradle コマンドを実行してプロジェクトの依存関係を更新します。これにより、DashScope Java SDK が自動的にダウンロードされ、プロジェクトに追加されます。

    ./gradlew build --refresh-dependencies

次の例では、Windows 上の IntelliJ IDEA IDE を使用しています:

image

ステップ 2: モデル API の呼び出し

次のコードを実行して、モデル API を呼び出すことができます。

import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.protocol.Protocol;
public class Main {
    public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
        // 注:base_url はリージョンごとに異なります。 以下の例では、シンガポールリージョンの base_url を使用しています。
        // - シンガポール: https://dashscope-intl.aliyuncs.com/api/v1
        // - 米国 (バージニア): https://dashscope-us.aliyuncs.com/api/v1
        // - 中国 (北京): https://dashscope.aliyuncs.com/api/v1
        Generation gen = new Generation(Protocol.HTTP.getValue(), "https://dashscope-intl.aliyuncs.com/api/v1");
        Message systemMsg = Message.builder()
                .role(Role.SYSTEM.getValue())
                .content("You are a helpful assistant.")
                .build();
        Message userMsg = Message.builder()
                .role(Role.USER.getValue())
                .content("Who are you?")
                .build();
        GenerationParam param = GenerationParam.builder()
                // シンガポール、米国 (バージニア) 、および中国 (北京) リージョンの API キーに互換性はありません。 API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
                // 環境変数が設定されていない場合は、次の行をご自身の Model Studio API キーを使用して、.apiKey("sk-xxx") に置き換えます。
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                // モデルリスト: https://www.alibabacloud.com/help/model-studio/getting-started/models
                .model("qwen-plus")
                .messages(Arrays.asList(systemMsg, userMsg))
                .resultFormat(GenerationParam.ResultFormat.MESSAGE)
                .build();
        return gen.call(param);
    }
    public static void main(String[] args) {
        try {
            GenerationResult result = callWithMessage();
            System.out.println(result.getOutput().getChoices().get(0).getMessage().getContent());
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.err.println("エラーメッセージ: "+e.getMessage());
            System.out.println("詳細については、ドキュメントをご参照ください: https://www.alibabacloud.com/help/model-studio/developer-reference/error-code");
        }
        System.exit(0);
    }
}

コードを実行すると、対応する出力が表示されます:

I am a large-scale language model developed by Alibaba Cloud. My name is Qwen.

curl

Model Studio プラットフォーム上のモデルは、OpenAI 互換の HTTP メソッドまたは DashScope HTTP メソッドを使用して呼び出すことができます。モデルのリストについては、「モデル」をご参照ください。

説明

環境変数が設定されていない場合は、-H "Authorization: Bearer $DASHSCOPE_API_KEY" \ を -H "Authorization: Bearer sk-xxx" \ に置き換え、ご利用の Model Studio API キーを使用してください。

OpenAI 互換 HTTP

コード例の URL は「シンガポール」リージョン用です。「中国 (北京)」リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions に置き換える必要があります。

次のコマンドを実行して API リクエストを送信できます:

Windows

コマンドプロンプト (CMD) で次のコマンドを実行します:

# ======= 重要 =======
# シンガポール、米国 (バージニア)、および中国 (北京) リージョンの API キーには互換性がありません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
# 注: base_url はリージョンごとに異なります。以下の例では、シンガポール リージョンの base_url を使用しています。
# - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
# - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions
# - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
# === 実行する前にこのコメントを削除してください ===

curl -X POST "https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions" \
-H "Authorization: Bearer %DASHSCOPE_API_KEY%" \
-H "Content-Type: application/json" \
-d "{
    \"model\": \"qwen-plus\",
    \"messages\": [
        {
            \"role\": \"system\",
            \"content\": \"You are a helpful assistant.\"
        },
        {
            \"role\": \"user\",
            \"content\": \"Who are you?\"
        }
    ]
}"

Linux/macOS

ターミナルで次のコマンドを実行します:

# ======= 重要 =======
# シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーに互換性はありません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
# 注: base_url はリージョンごとに異なります。以下の例では、シンガポールリージョンの base_url を使用しています。
# - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
# - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions
# - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
# === 実行する前にこのコメントを削除してください ===

curl -X POST https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "qwen-plus",
    "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user", 
            "content": "Who are you?"
        }
    ]
}'

API リクエストを送信すると、次のレスポンスが返されます:

{
    "choices": [
        {
            "message": {
                "role": "assistant",
                "content": "I am a large-scale language model from Alibaba Cloud. My name is Qwen."
            },
            "finish_reason": "stop",
            "index": 0,
            "logprobs": null
        }
    ],
    "object": "chat.completion",
    "usage": {
        "prompt_tokens": 22,
        "completion_tokens": 16,
        "total_tokens": 38
    },
    "created": 1728353155,
    "system_fingerprint": null,
    "model": "qwen-plus",
    "id": "chatcmpl-39799876-eda8-9527-9e14-2214d641cf9a"
}

DashScope HTTP

コード例の URL はシンガポールリージョン用です。

  • 米国 (バージニア) リージョンのモデルを使用する場合は、URL を https://dashscope-us.aliyuncs.com/api/v1/services/aigc/text-generation/generation に置き換える必要があります。

  • 中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation に置き換える必要があります。

次のコマンドを実行して API リクエストを送信できます:

Windows

コマンドプロンプト (CMD) で次のコマンドを実行します:

# ======= 重要 =======
# シンガポール、米国 (バージニア) 、中国 (北京) リージョンの API キーに互換性はありません。 API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
# 注: base_url はリージョンごとに異なります。 以下の例では、シンガポールリージョンの base_url を使用しています。
# - シンガポール: https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# - 米国 (バージニア): https://dashscope-us.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# - 中国 (北京): https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# === 実行する前にこのコメントを削除してください ===

curl -X POST "https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
-H "Authorization: Bearer %DASHSCOPE_API_KEY%" \
-H "Content-Type: application/json" \
-d "{
  \"model\": \"qwen-plus\",
  \"input\": {
    \"messages\": [
      {
        \"role\": \"system\",
        \"content\": \"あなたは役に立つアシスタントです。\"
      },
      {
        \"role\": \"user\",
        \"content\": \"あなたは誰ですか?\"
      }
    ]
  },
  \"parameters\": {
    \"result_format\": \"message\"
  }
}"

Linux/macOS

ターミナルで次のコマンドを実行します:

# ======= 重要 =======
# シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーに互換性はありません。 API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
# 注: base_url はリージョンごとに異なります。 以下の例では、シンガポールリージョンの base_url を使用しています。
# - シンガポール: https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# - 米国 (バージニア): https://dashscope-us.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# - 中国 (北京): https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation
# === 実行する前にこのコメントを削除してください ===

curl -X POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "qwen-plus",
    "input":{
        "messages":[      
            {
                "role": "system",
                "content": "You are a helpful assistant."
            },
            {
                "role": "user",
                "content": "Who are you?"
            }
        ]
    },
    "parameters": {
        "result_format":"message"
    }
}'

API リクエストを送信すると、次のレスポンスが返されます:

{
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": "I am a large-scale language model from Alibaba Cloud. My name is Qwen."
                }
            }
        ]
    },
    "usage": {
        "total_tokens": 38,
        "output_tokens": 16,
        "input_tokens": 22
    },
    "request_id": "87f776d7-3c82-9d39-b238-d1ad38c9b6a9"
}

その他の言語

モデル API の呼び出し

package main

import (
	"bytes"
	"encoding/json"
	"fmt"
	"io"
	"log"
	"net/http"
	"os"
)

type Message struct {
	Role    string `json:"role"`
	Content string `json:"content"`
}
type RequestBody struct {
	Model    string    `json:"model"`
	Messages []Message `json:"messages"`
}

func main() {
	// HTTP クライアントを作成
	client := &http.Client{}
	// リクエストボディを構築
	requestBody := RequestBody{
		// モデルリスト: https://www.alibabacloud.com/help/model-studio/getting-started/models
		Model: "qwen-plus",
		Messages: []Message{
			{
				Role:    "system",
				Content: "You are a helpful assistant.",
			},
			{
				Role:    "user",
				Content: "Who are you?",
			},
		},
	}
	jsonData, err := json.Marshal(requestBody)
	if err != nil {
		log.Fatal(err)
	}
	// POST リクエストを作成。注意: base_url はリージョンごとに異なります。以下の例では、シンガポールリージョンの base_url を使用しています。
        // - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
        // - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions
        // - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
	req, err := http.NewRequest("POST", "https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions", bytes.NewBuffer(jsonData))
	if err != nil {
		log.Fatal(err)
	}
	// リクエストヘッダーを設定
	// シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーは相互に交換できません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
	// 環境変数が設定されていない場合は、次の行を apiKey := "sk-xxx" に置き換え、ご利用の Model Studio API キーを使用します。
	apiKey := os.Getenv("DASHSCOPE_API_KEY")
	req.Header.Set("Authorization", "Bearer "+apiKey)
	req.Header.Set("Content-Type", "application/json")
	// リクエストを送信
	resp, err := client.Do(req)
	if err != nil {
		log.Fatal(err)
	}
	defer resp.Body.Close()
	// レスポンスボディを読み取り
	bodyText, err := io.ReadAll(resp.Body)
	if err != nil {
		log.Fatal(err)
	}
	// レスポンス内容を出力
	fmt.Printf("%s\n", bodyText)
}
<?php
// 注意: base_url はリージョンごとに異なります。以下の例では、シンガポールリージョンの base_url を使用しています。
// - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
// - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions
// - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
$url = 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions';
// シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーは相互に交換できません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
// 環境変数が設定されていない場合は、次の行を $apiKey = "sk-xxx"; に置き換え、ご利用の Model Studio API キーを使用します。
$apiKey = getenv('DASHSCOPE_API_KEY');
// リクエストヘッダーを設定
$headers = [
    'Authorization: Bearer '.$apiKey,
    'Content-Type: application/json'
];
// リクエストボディを設定
$data = [
    "model" => "qwen-plus",
    "messages" => [
        [
            "role" => "system",
            "content" => "You are a helpful assistant."
        ],
        [
            "role" => "user",
            "content" => "Who are you?"
        ]
    ]
];
// cURL セッションを初期化
$ch = curl_init();
// cURL オプションを設定
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// cURL セッションを実行
$response = curl_exec($ch);
// エラーをチェック
if (curl_errno($ch)) {
    echo 'Curl error: ' . curl_error($ch);
}
// cURL リソースを閉じる
curl_close($ch);
// レスポンスを出力
echo $response;
?>
using System.Net.Http.Headers;
using System.Text;

class Program
{
    private static readonly HttpClient httpClient = new HttpClient();

    static async Task Main(string[] args)
    {
        // シンガポール、米国 (バージニア)、中国 (北京) リージョンの API キーは相互に交換できません。API キーの取得: https://www.alibabacloud.com/help/model-studio/get-api-key
        // 環境変数が設定されていない場合は、次の行を string? apiKey = "sk-xxx"; に置き換え、ご利用の Model Studio API キーを使用します。
        string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");

        if (string.IsNullOrEmpty(apiKey))
        {
            Console.WriteLine("API Key not set. Make sure the 'DASHSCOPE_API_KEY' environment variable is set.");
            return;
        }
        // 注意: base_url はリージョンごとに異なります。以下の例では、シンガポールリージョンの base_url を使用しています。
        // - シンガポール: https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
        // - 米国 (バージニア): https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions
        // - 中国 (北京): https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
        string url = "https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions";
        // モデルリスト: https://www.alibabacloud.com/help/model-studio/getting-started/models
        string jsonContent = @"{
            ""model"": ""qwen-plus"",
            ""messages"": [
                {
                    ""role"": ""system"",
                    ""content"": ""You are a helpful assistant.""
                },
                {
                    ""role"": ""user"", 
                    ""content"": ""Who are you?""
                }
            ]
        }";

        // リクエストを送信してレスポンスを取得
        string result = await SendPostRequestAsync(url, jsonContent, apiKey);

        // 結果を出力
        Console.WriteLine(result);
    }

    private static async Task<string> SendPostRequestAsync(string url, string jsonContent, string apiKey)
    {
        using (var content = new StringContent(jsonContent, Encoding.UTF8, "application/json"))
        {
            // リクエストヘッダーを設定
            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
            httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            // リクエストを送信してレスポンスを取得
            HttpResponseMessage response = await httpClient.PostAsync(url, content);

            // レスポンスを処理
            if (response.IsSuccessStatusCode)
            {
                return await response.Content.ReadAsStringAsync();
            }
            else
            {
                return $"Request failed: {response.StatusCode}";
            }
        }
    }
}

API リファレンス

  • Qwen API の入出力パラメーターについては、「Qwen」をご参照ください。

  • その他のモデルについては、「モデル」をご参照ください。

よくある質問

モデル API を呼び出した後に「Model.AccessDenied」というエラーが報告された場合はどうすればよいですか?

A: このエラーは、サブワークスペースの API キーを使用しているために発生します。サブワークスペースは、デフォルトのワークスペース内のアプリケーションまたはモデルにアクセスできません。Qwen-Plus などのモデルを使用するには、ルートアカウントの管理者がサブワークスペースに権限を付与する必要があります。詳細については、「モデルの呼び出し権限を設定する」をご参照ください。

次のステップ

その他のモデルの表示

サンプルコードでは qwen-plus モデルを使用します。 Model Studio は他の Qwen モデルもサポートしています。 サポートされているモデルとそれらに対応する API リファレンスのリストについては、「モデル」をご参照ください。

高度な使用方法の学習

サンプルコードは基本的な Q&A のみをカバーしています。ストリーミング出力構造化出力関数呼び出しなど、Qwen API の高度な機能については、「テキスト生成モデルの概要」フォルダをご参照ください。

モデルをオンラインで試す

Qwen Chat」のようにダイアログボックス形式でモデルと対話するには、Playground (シンガポール米国 (バージニア)、または中国 (北京)) にアクセスしてください。