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

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

最終更新日:Oct 21, 2025

Alibaba Cloud Model Studio を使用すると、OpenAI 互換インターフェイスまたは DashScope SDK を介して大規模言語モデル (LLM) を呼び出すことができます。

このトピックでは、Qwen を例として、最初の API 呼び出しを行う手順を説明します。学習内容は次のとおりです。

  • API キーの取得

  • ローカル開発環境の構成

  • Qwen API の呼び出し

アカウント設定

  1. アカウントの登録: Alibaba Cloud アカウントをお持ちでない場合は、まず登録する必要があります。

  2. リージョンの選択: Model Studio は、国際版 (シンガポール)中国本土版 (北京) を提供しています。2 つのエディションは、コンソール、エンドポイント、モデル、およびその価格設定が異なります。詳細については、「モデルと価格」をご参照ください。

    • 国際版: エンドポイントとモデルサービスは、中国本土を除く国際リージョンにあります。デフォルトのエンドポイントはシンガポールです。

    • 中国本土版: エンドポイントとモデルサービスは中国本土にあります。現在、北京エンドポイントのみがサポートされています。

  3. アカウントの確認を完了する: 中国本土版を有効化するには、このステップが必要です。国際版を有効化する場合は、このステップをスキップできます。

    Alibaba Cloud アカウントを使用して、アカウントの確認を完了します。

    • [個人確認] または [エンタープライズにアップグレード] を選択し、[今すぐ確認] をクリックします。

    • 表示されるページの [追加情報] セクションで、[中国本土内でクラウドリソースを購入するか、アクセラレーションを有効にする][はい] を選択します。

    • その他の項目については、「アカウント確認の概要」をご参照ください。

  4. Model Studio の有効化: Alibaba Cloud アカウントを使用して、Model Studio コンソール (シンガポールまたは北京) に移動します。利用規約を読んで同意すると、Model Studio は自動的に有効化されます。利用規約が表示されない場合は、すでに Model Studio を有効化していることを示します。

  5. API キーの取得: [キー管理] (シンガポールまたは北京) ページに移動し、[API キーの作成] をクリックします。後で、[API キー] を使用してモデルを呼び出します。

    新しい API キーを作成するときは、[ワークスペース]デフォルトワークスペースに設定します。サブワークスペースの API キーを使用するには、Alibaba Cloud アカウントのオーナーが、特定のモデルを使用するために対応するサブワークスペースを承認する必要があります。詳細については、「サブワークスペースにモデルの呼び出しを承認する」をご参照ください。

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%

イメージ

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

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

使い慣れたプログラミング言語またはツールを選択してください。

Python

ステップ 1: Python 環境のセットアップ

Python のバージョンを確認する

ターミナルで次のコマンドを実行して、現在の環境に Python と pip がインストールされているかどうかを確認します。

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

python -V
pip --version

次の図は、Windows コマンドプロンプトの例です。

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

A: この問題を解決するには、次の手順を実行します。

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

    source .venv/bin/activate

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

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

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 はインストールされています。

説明

SDK のインストール中に WARNING: You are using pip version xxx; however, version xxx is available. というメッセージが表示された場合、これは pip ツールを更新するための通知であり、SDK のインストールには影響しません。このメッセージは無視してかまいません。

ステップ 2: LLM 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://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
            # 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: api_key="sk-xxx",
            api_key=os.getenv("DASHSCOPE_API_KEY"),
            # 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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': 'You are a helpful assistant.'},
                {'role': 'user', 'content': 'Who are you?'}
                ]
        )
        print(completion.choices[0].message.content)
    except Exception as e:
        print(f"Error message: {e}")
        print("詳細については、https://www.alibabacloud.com/help/ja/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
    # 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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://modelstudio.console.alibabacloud.com/?tab=model#/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 return code: {response.status_code}")
        print(f"Error code: {response.code}")
        print(f"Error message: {response.message}")
        print("詳細については、https://www.alibabacloud.com/help/ja/model-studio/developer-reference/error-code をご参照ください")
  3. コマンドラインで python hello_qwen.py または python3 hello_qwen.py を実行します。

    説明

    この例のコマンドは、Python ファイルが置かれているディレクトリから実行する必要があります。別の場所から実行する場合は、完全なファイルパスを指定する必要があります。

    コマンドを実行すると、次の出力が返されます。

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

Node.js

ステップ 1: Node.js 環境のセットアップ

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

ターミナルで次のコマンドを実行して、現在の環境に Node.js と npm がインストールされているかどうかを確認します。

node -v
npm -v

次の図は、Windows コマンドプロンプトの例です。

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: LLM API の呼び出し

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

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

    import OpenAI from "openai";
    
    try {
        const openai = new OpenAI(
            {
                // シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
                // 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: apiKey: "sk-xxx",
                apiKey: process.env.DASHSCOPE_API_KEY,
                // 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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 message: ${error}`);
        console.log("詳細については、https://www.alibabacloud.com/help/ja/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 コマンドプロンプトの例です。

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: LLM API の呼び出し

次のコードを実行して LLM 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 {
        // 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
                // 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: .apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                // モデルのリストについては、https://www.alibabacloud.com/help/ja/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("Error message: "+e.getMessage());
            System.out.println("詳細については、https://www.alibabacloud.com/help/ja/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

OpenAI 互換 HTTP または DashScope HTTP を使用してモデルを呼び出すことができます。モデルのリストについては、「モデルと価格」をご参照ください。

説明

環境変数を構成していない場合は、-H "Authorization: Bearer $DASHSCOPE_API_KEY" \ を -H "Authorization: Bearer sk-xxx" \ に置き換えます。

OpenAI 互換 HTTP

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

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

Windows

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

# ======= 重要 =======
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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/ja/model-studio/get-api-key をご参照ください
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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 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.aliyuncs.com/api/v1/services/aigc/text-generation/generation に置き換える必要があります。

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

Windows

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

# ======= 重要 =======
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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\"
  }
}"

Linux/macOS

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

# ======= 重要 =======
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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 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"
}

その他の言語

LLM 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/ja/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 リクエストを作成します。次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
	// 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: apiKey := "sk-xxx"
	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
// 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions に置き換えます
$url = 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions';
// シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
// 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: $apiKey = "sk-xxx";
$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://modelstudio.console.alibabacloud.com/?tab=model#/api-key をご参照ください
        // 環境変数を構成していない場合は、次の行を Model Studio API キーに置き換えます: string? apiKey = "sk-xxx";
        string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");

        if (string.IsNullOrEmpty(apiKey))
        {
            Console.WriteLine("API キーが設定されていません。'DASHSCOPE_API_KEY' 環境変数が設定されていることを確認してください。");
            return;
        }
        // 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を 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/ja/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」をご参照ください。

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

よくある質問

LLM API を呼び出した後に Model.AccessDenied エラーが報告された場合の対処方法

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

次のステップ

その他のモデルを表示

サンプルコードでは qwen-plus モデルを使用しています。Alibaba Cloud Model Studio は、他の Qwen モデルや DeepSeek、Kimi などのサードパーティモデルもサポートしています。サポートされているモデルとその API リファレンスの詳細については、「モデルと価格」をご参照ください。

高度な使用方法について学ぶ

サンプルコードは、簡単な Q&A 対話 を実装しています。Qwen API の高度な使用方法 ( ストリーミング出力構造化出力関数呼び出しなど) の詳細については、「テキスト生成モデルの概要」セクションのトピックをご参照ください。

オンラインでモデルを体験する

ダイアログボックスで大規模モデルと対話するには (Qwen Chatでの体験と同様)、Playground (シンガポールまたは北京) にアクセスしてください。