Skip to main content

Text rerank

リランキングモデルは、初期検索で返されたドキュメントを再スコアリングし、最も関連性の高い結果を最上位に表示します。

モデル概要

gte-rerank モデルは 2026 年 5 月 30 日に提供を終了します。qwen3-rerank に切り替えてください。
  • シンガポール
  • 北京

モデル

最大ドキュメント数

アイテムあたりの最大入力トークン数

リクエストあたりの最大入力トークン数

サポート言語

シナリオ

qwen3-rerank

500

4,000

120,000

中国語、英語、スペイン語、フランス語、ポルトガル語、インドネシア語、日本語、韓国語、ドイツ語、ロシア語など 100 以上の主要言語

  • テキストセマンティック検索

  • RAG アプリケーション

  • アイテムあたりの最大入力トークン数:クエリまたはドキュメントあたりの最大トークン数。単一のクエリまたはドキュメントの入力がこの上限を超えると、API は HTTP 400 エラーを返し、入力内容は切り捨てられません。
  • 最大ドキュメント数:リクエストあたりの最大ドキュメント数。qwen3-vl-rerank の場合、制限はドキュメントタイプ (テキスト、イメージ、ビデオ、または混合) によって異なります。
  • リクエストあたりの最大入力トークン数: クエリのトークン数 × ドキュメント数 + ドキュメントの合計トークン数として計算されます。リクエストあたりの制限を超えてはなりません。

入力制限

モデル

画像

ビデオ

qwen3-vl-rerank

JPEG、PNG、WEBP、BMP、TIFF、ICO、DIB、ICNS、SGI (URL または Base64 をサポート)

MP4、AVI、MOV (URL のみ)

前提条件

API キーを取得し、API キーを環境変数として設定します。SDK を使用するには、DashScope SDK をインストールします。

HTTP

{WorkspaceId} を実際の ワークスペース ID に置き換えます。
このセクションでは DashScope HTTP API について説明します。また、qwen3-rerank と qwen3.7-text-rerank は OpenAI 互換 API にも対応しています。詳しくは OpenAI 互換 API を参照してください。

リクエスト

リクエストヘッダー

Content-Type string (必須)リクエストのコンテンツタイプは application/json である必要があります。Authorization string (必須)Model Studio API キーでリクエストを認証します。例: Bearer sk-xxxx。

リクエストボディ

model string (必須)モデル名。サポートされている値:qwen3-rerank、gte-rerank-v2、qwen3-vl-rerank。input object (必須)入力コンテンツ。
query と documents を input オブジェクト内にネストします。

プロパティ

query string | object (必須)クエリテキスト (最大 4,000 トークン)。qwen3-vl-rerank は 2 つの クエリ フォーマットをサポートしています:
  • 文字列形式:テキスト文字列を直接渡します。例:"query": "What is a rerank model?"。
  • オブジェクト形式:モダリティタイプと値を指定したディクショナリを {"modality type": "input content"} のように渡します。サポートされているタイプは text と image です。
    • テキストクエリ: "query": {"text": "What is a text rerank model?"}
    • イメージクエリ: "query": {"image": "イメージ URL または Base64 エンコードされた文字列"}
documents array (必須)ソート対象の候補ドキュメント。各要素は文字列です。qwen3-vl-rerank は、要素ごとに辞書または文字列を受け付けます: {"modality type": "text/image URL/video URL"}。サポートされているタイプ: text、image、video。
  • テキスト: キーは text で、値は文字列です。辞書ラッパーなしのプレーンな文字列も有効です。
  • イメージ: キーは image、値は URL または Base64 データ URI (data:image/{format};base64,{data}、ここで {format} は jpeg/png、{data} はエンコードされた文字列) です。
  • 動画: キーは video、値には公開アクセス可能な URL を指定する必要があります。
parameters object (任意)オプションのパラメーター。
top_n と instruct を parameters オブジェクト内にネストします。

プロパティ

top_n int (任意)返す上位ランクのドキュメント数。デフォルト:すべてのドキュメント。合計ドキュメント数を超える値を指定すると、すべてのドキュメントが返されます。return_documents bool (任意)結果にドキュメントテキストを含めるかどうか。デフォルト: false。対応モデル: gte-rerank-v2、qwen3-vl-rerank、qwen3-rerank。instruct string (任意)カスタムソート命令。qwen3-rerank および qwen3-vl-rerank に適用され、モデルに異なるソートポリシーを適用するように指示します。例:
  • Q&A 取得タスク (デフォルト): 「Web 検索クエリが与えられた場合、そのクエリに回答する関連パッセージを取得する」
    • フォーカス:回答を見つける。モデルは、ドキュメントがクエリに回答しているかどうかを優先します。
    • 例:クエリ「風邪を予防する方法は?」に対し、ドキュメント「頻繁な手洗いは風邪を予防する」は高スコアになりますが、「風邪は一般的な病気です」は (トピック的には関連していますが、回答ではないため) 低スコアになります。
  • セマンティック類似性ソートタスク: "意味的に類似したテキストを取得する。"
    • フォーカス:セマンティックな等価性を判断する。モデルは、言葉遣いや構造に関係なく、クエリとドキュメントが同じコアな意味を持つかどうかを評価します。
    • 例:よくある質問のシナリオで、「パスワードを変更するにはどうすればよいですか?」と「パスワードを忘れた場合はどうなりますか?」はセマンティックに類似しています (高スコア)。モデルは、両方が同じユーザーの意図を反映しているかどうかに焦点を当てます。
命令は英語で記述してください。デフォルト:Q&A 取得タスク。その他の命令は、モデルリポジトリで入手できます。fps float (任意)qwen3-vl-rerank のみ。ビデオフレームの抽出数を制御します。値が小さいほど、フレーム数は少なくなります。範囲: 0~1 (デフォルト: 1.0)。
  • qwen3-rerank
  • qwen3-vl-rerank
  • gte-rerank-v2
# これはシンガポールリージョンの URL です。WorkspaceId を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。
curl --request POST \
  --url https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/rerank/text-rerank/text-rerank \
  --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
        "model": "qwen3-rerank",
        "input": {
            "documents": [
                "Rerank models are widely used in search engines and recommendation systems. They sort candidate documents based on text relevance.",
                "Quantum computing is a cutting-edge field of computer science.",
                "The development of pre-trained language models has brought new advancements to rerank models."
            ],
            "query": "What is a rerank model?"
        },
        "parameters": {
            "top_n": 2,
            "instruct": "Given a web search query, retrieve relevant passages that answer the query."
        }
}'
WorkspaceId を実際の ワークスペース ID に置き換えます。

応答

request_id string追跡とトラブルシューティングのためのユニークなリクエスト識別子。output objectタスクの出力。

プロパティ

results arrayrelevance_score の降順で結果がソートされます。

プロパティ

document dict元のドキュメントオブジェクト。return_documents が true の場合にのみ返されます。フォーマット: {"text": "Original document text"}。index int入力 documents 配列内のドキュメントのインデックス。relevance_score doubleドキュメントとクエリ間のセマンティックな関連性。範囲:0.0〜1.0 (高いほど関連性が高い)。
スコアは現在のリクエストに相対的なものであり、リクエスト間で比較することはできません。
usage objectトークン使用量統計。

プロパティ

total_tokens intリクエストによって消費された合計トークン数。
code stringエラーコード。失敗したリクエストに対してのみ返されます。詳細については、「エラーコード」をご参照ください。message string詳細なエラーメッセージ。失敗したリクエストに対してのみ返されます。詳細については、「エラーコード」をご参照ください。
  • 成功応答
  • 失敗応答
{
    "output": {
        "results": [
            {
                "index": 0,
                "relevance_score": 0.9334521178273196
            },
            {
                "index": 2,
                "relevance_score": 0.34100082626411193
            }
        ]
    },
    "request_id": "85ba5752-1900-47d2-8896-23f99b13f6e1",
    "usage": {
        "total_tokens": 79
    }
}

OpenAI 互換 API

qwen3-rerank と qwen3.7-text-rerank は OpenAI 互換 API で呼び出すことができます。gte-rerank-v2 と qwen3-vl-rerank はサポートされておらず、呼び出すと model_not_supported エラーが返されます。 エンドポイント:POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-api/v1/reranks DashScope HTTP API との違い:
  • リクエストボディはフラットな構造で、query、documents、top_n、instruct、return_documents は model と同じ階層に指定します。input や parameters にはネストしません。
  • 並べ替え結果はレスポンスの results 配列に含まれ、各要素には index(リクエスト内でのドキュメントの位置)と relevance_score(関連性スコア)が含まれます。return_documents が true の場合は document.text も返されます。

リクエスト例

curl --request POST \
  --url https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-api/v1/reranks \
  --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "model": "qwen3-rerank",
    "query": "What is a rerank model",
    "documents": [
      "Rerank models are widely used in search engines and recommendation systems",
      "Quantum computing is a frontier field of computer science"
    ],
    "top_n": 2,
    "return_documents": true
}'

レスポンス例

{
  "object": "list",
  "results": [
    {
      "document": {
        "text": "Rerank models are widely used in search engines and recommendation systems"
      },
      "index": 0,
      "relevance_score": 0.8369123119638817
    },
    {
      "document": {
        "text": "Quantum computing is a frontier field of computer science"
      },
      "index": 1,
      "relevance_score": 0.2453528429428607
    }
  ],
  "model": "qwen3-rerank",
  "id": "f55bad52-5f1a-9db2-a915-57ef33e94664",
  "usage": {
    "total_tokens": 66
  }
}
Python および Node.js の呼び出し例については、リランキングを参照してください。

SDK の使用

例

リランキングモデル API を呼び出します。
SDK のパラメーター名は HTTP API と一致しますが、構造は異なります。HTTP はネストされた input および parameters オブジェクトを使用するのに対し、SDK は FLAT 構造を使用します。
import os
import dashscope

# 以下は中国 (北京) リージョンの設定です。リージョンによって region の値は異なります。呼び出し時は、{WorkspaceId} をお使いのワークスペース ID に置き換えてください。
client = dashscope.Client(
    # 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: api_key="sk-xxx"
    # API キーはリージョン固有です。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    workspace="{WorkspaceId}",
    region="cn-beijing",
)

def text_rerank():
    resp = client.rerank.create(
        model="gte-rerank-v2",
        query="What is a rerank model?",
        documents=[
            "Rerank models are widely used in search engines and recommendation systems. They sort candidate documents based on text relevance.",
            "Quantum computing is a cutting-edge field of computer science.",
            "The development of pre-trained language models has brought new advancements to rerank models."
        ],
        top_n=2,
        return_documents=True
    )
    print(resp)

if __name__ == '__main__':
    text_rerank()
イメージクエリを使用したマルチモーダル再ランキングには、 qwen3-vl-rerank を使用します。
import os
import dashscope
import json

# 以下は中国 (北京) リージョンの設定です。リージョンによって region の値は異なります。呼び出し時は、{WorkspaceId} をお使いのワークスペース ID に置き換えてください。
client = dashscope.Client(
    # 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: api_key="sk-xxx"
    # API キーはリージョン固有です。API キーを取得するには、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    workspace="{WorkspaceId}",
    region="cn-beijing",
)

def vl_rerank():
    resp = client.rerank.create(
        model="qwen3-vl-rerank",
        query={"image": "https://img.alicdn.com/imgextra/i3/O1CN01rdstgY1uiZWt8gqSL_!!6000000006071-0-tps-1970-356.jpg"},
        documents=[
            {"text": "Rerank models are widely used in search engines and recommendation systems. They sort candidate documents based on text relevance."},
            {"image": "https://img.alicdn.com/imgextra/i3/O1CN01rdstgY1uiZWt8gqSL_!!6000000006071-0-tps-1970-356.jpg"},
            {"video": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250107/lbcemt/new+video.mp4"}
        ],
        top_n=2,
        return_documents=True
    )
    print(json.dumps(resp.model_dump(), ensure_ascii=False, indent=4))

if __name__ == '__main__':
    vl_rerank()

出力例

SDK は HTTP レスポンスをラップします。リクエストが成功した場合、コード と メッセージ は常に空の文字列です。
{
    "request_id": "4b0805c0-6b36-490d-8bc1-4365f4c89905",
    "output": {
        "results": [
            {
                "index": 0,
                "relevance_score": 0.9334521178273196,
                "document": {
                    "text": "Rerank models are widely used in search engines and recommendation systems. They sort candidate documents based on text relevance."
                }
            },
            {
                "index": 2,
                "relevance_score": 0.34100082626411193,
                "document": {
                    "text": "The development of pre-trained language models has brought new advancements to rerank models."
                }
            }
        ]
    },
    "usage": {
        "total_tokens": 79
    }
}

エラーコード

モデルの呼び出しが失敗し、エラーメッセージが返された場合は、「エラーコード」を参照して解決してください。