Files
cloudpods/docs/aiproxy/functional-test-climc-mimo.md
T
2026-06-09 18:54:54 +08:00

3.7 KiB
Raw Blame History

aiproxy 功能测试(climc + 小米 MiMo

本文用 climc 配置 aiproxy 资源,并通过 curl 调用 POST /v1/chat/completions 验证 xiaomi catalogapi.xiaomimimo.com)。

安全:请勿将 MiMo API Key 写入脚本或提交到 Git。使用环境变量 MIMO_API_KEY。若 Key 曾泄露,请到小米开放平台轮换。

通义千问(DashScope)测试见 functional-test-climc.md

前置条件

说明
服务 aiproxy 主节点已部署,Keystone 中已注册 aiproxy public endpoint
数据库 主节点已执行 InitDBcatalog 含 xiaomimimo-* 模型
客户端 source /etc/yunion/rcadminclimc 可用
工具 jq
网络 aiproxy 节点能访问 https://api.xiaomimimo.com
source /etc/yunion/rcadmin
export CLIMC_OUTPUT_FORMAT=json
bash scripts/test/aiproxy/aiproxy-functional-test.sh
# 交互菜单中选择 xiaomi,输入 MiMo API Key

或快捷入口(默认选中 xiaomi):

export MIMO_API_KEY='你的 MiMo API Key'
bash scripts/test/aiproxy/aiproxy-functional-test-mimo.sh

预置模型:export AIPROXY_FT_PROVIDER=xiaomi AIPROXY_FT_MODEL=mimo-v2.5-pro

按 provider 自动命名的资源(可覆盖 AIPROXY_FT_KEY_NAME 等):

变量 默认(xiaomi
AIPROXY_FT_KEY_NAME aiproxy-ft-xiaomi
AIPROXY_FT_VK_NAME aiproxy-ft-xiaomi-vk
AIPROXY_FT_ROUTING_NAME aiproxy-ft-xiaomi-routing
AIPROXY_FT_MODEL 交互默认 mimo-v2-flash

手动步骤摘要

Catalog

climc ai-provider-show xiaomi
climc ai-model-show xiaomi-mimo-v2-flash

config.base_url 应为 https://api.xiaomimimo.com

ai_key

climc ai-key-create mimo-ft \
  --ai-provider-id xiaomi \
  --secret "${MIMO_API_KEY}" \
  --weight 10 \
  --enabled

路由与 chat

climc ai-virtual-key-create aiproxy-mimo-ft-vk
climc ai-routing-create aiproxy-mimo-ft-routing \
  --priority 10 \
  --models '[{"ai_provider_id":"xiaomi","ai_model_id":"mimo-v2-flash","priority":1}]'

AIPROXY_URL="$(climc endpoint-list --service aiproxy --interface public --limit 1 \
  --output-format json | jq -r '.data[0].url')"
VK="$(climc ai-virtual-key-show aiproxy-mimo-ft-vk --output-format json | jq -r '.virtual_key')"

curl -k -sS "${AIPROXY_URL%/}/v1/chat/completions" \
  -H "Authorization: Bearer ${VK}" \
  -H "Content-Type: application/json" \
  -d '{"model":"mimo-v2-flash","messages":[{"role":"user","content":"hi"}],"max_tokens":64}' | jq .

流式

scripts/test/aiproxy/aiproxy-functional-test-mimo.sh 在非流式通过后默认执行 step 7(stream: true)。跳过:export AIPROXY_FT_SKIP_STREAM=1

curl -k -sS -N -o /tmp/aiproxy-mimo-stream.sse \
  "${AIPROXY_URL%/}/v1/chat/completions" \
  -H "Authorization: Bearer ${VK}" \
  -H "Content-Type: application/json" \
  -d '{"model":"mimo-v2-flash","stream":true,"messages":[{"role":"user","content":"hi"}],"max_tokens":64}'

catalog 中其它模型:mimo-v2.5-promimo-v2-promimo-v2.5mimo-v2-omniid 形如 xiaomi-mimo-v2.5-pro)。

常见问题

上游 401
检查 MIMO_API_KEY 是否有效;确认 ai_key--enabledai_provider_id=xiaomi

no ai_routing matched
virtual key 与 routing 须在同一 climc 项目下创建。

与 DashScope 脚本冲突
MiMo 脚本使用独立的 vk/routing/key 名称;勿与 aiproxy-ft-vk 混用同一 routing 的 model 列表。

清理

climc ai-routing-delete aiproxy-mimo-ft-routing
climc ai-virtual-key-delete aiproxy-mimo-ft-vk
climc ai-key-delete mimo-ft