# 查询模型选择项

```{raw} html
<div class="mo-api-page-show-toc" aria-hidden="true"></div>
```

获取当前用户可见模型的显示名称、调用名称和能力，用于构建模型选择列表。

```text
GET https://billing.moi.matrixorigin.cn/api/v1/taas/models/select-options
```

## 调用前准备

准备个人访问令牌。创建和管理方法参阅[创建和管理个人访问令牌](../../../../../guides/genesis/api-keys.md#创建和管理个人访问令牌)。

查询范围为当前用户有权访问的数据。

## 查询参数

将示例中的 `$MOI_PERSONAL_ACCESS_TOKEN` 替换为个人访问令牌。

:::::::{div} mo-api-tabs
::::::{tab-set}
:::::{tab-item} 输入示例

```bash
curl --get "https://billing.moi.matrixorigin.cn/api/v1/taas/models/select-options" \
  -H "X-API-Key: $MOI_PERSONAL_ACCESS_TOKEN" \
  --data-urlencode "page_size=2"
```

将响应中的 `next_page_token` 保存为 `$NEXT_PAGE_TOKEN`，保持筛选条件不变并请求下一页。该值为空或省略时停止翻页。

```bash
curl --get "https://billing.moi.matrixorigin.cn/api/v1/taas/models/select-options" \
  -H "X-API-Key: $MOI_PERSONAL_ACCESS_TOKEN" \
  --data-urlencode "page_size=2" \
  --data-urlencode "page_token=$NEXT_PAGE_TOKEN"
```

:::::
:::::{tab-item} 参数说明

::::{div} mo-api-parameter-table

| 参数 | 类型 | 是否必填 | 说明 |
| --- | --- | --- | --- |
| `type` | string | 否 | 模型类型筛选。 |
| `status` | string | 否 | 模型启用状态筛选。 |
| `q` | string | 否 | 按名称、别名、描述、系列、类型或供应商名称搜索。 |
| `search` | string | 否 | 未填写 `q` 时使用的搜索词。 |
| `pricing_status` | string | 否 | 报价筛选：`priced` 或 `unpriced`。 |
| `logos` | string | 否 | 按模型系列筛选；可重复传递或用逗号分隔。 |
| `logo` | string | 否 | `logos` 的兼容参数，可与 `logos` 合并使用。 |
| `search_logos` | string | 否 | 将系列匹配加入搜索条件；可重复传递或用逗号分隔。 |
| `search_types` | string | 否 | 将类型匹配加入搜索条件；可重复传递或用逗号分隔。 |
| `context_max` | integer | 否 | 仅返回上下文窗口大于 0 且不超过该值的模型。 |
| `page_size` | integer | 否 | 每页数量，默认 100，最大 1000。 |
| `page_token` | string | 否 | 上一页返回的下一页标记；首个请求省略。 |

::::

:::::
::::::
:::::::

## 成功响应

返回 HTTP `200`，响应包含模型选择项。

:::::::{div} mo-api-tabs mo-api-response-tabs
::::::{tab-set}
:::::{tab-item} 响应示例

```json
{
  "items": [
    {
      "id": "model_example",
      "display_name": "Example Chat",
      "model_id": "example-chat-model",
      "capabilities": [
        "chat"
      ],
      "debug_capabilities": []
    }
  ],
  "total": 1,
  "next_page_token": ""
}
```

:::::
:::::{tab-item} 字段说明

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `items` | array of object | 本页记录。 |
| `items[].id` | string | 模型目录对象 ID。 |
| `items[].display_name` | string | 优先使用别名，未设置别名时使用模型名称。 |
| `items[].model_id` | string | 模型调用名称，与模型目录中的 `name` 对应。 |
| `items[].capabilities` | array of string | 模型调用能力。 |
| `items[].debug_capabilities` | array of string | 可用的调试能力；为空时省略。 |
| `total` | integer | 符合筛选条件的总记录数。 |
| `next_page_token` | string | 下一页标记；为空或省略时已到最后一页。 |

字段路径中的 `[]` 表示数组中的每一项。

:::::
::::::
:::::::
