西藏巴青项目

大模型网关转发测试用例.md 2.5KB

大模型网关转发测试用例

实现:com.ruoyi.web.kb.controller.KbOpenAiProxyController须若依 Token,非匿名


1. 单元测试(Service / Controller 逻辑)

编号 用例类 预期
UT-KB-LLM-001 KbOpenAiProxyServiceImplTest.listModelsForwardsAuth GET 上游 /v1/models,Bearer 为 ruoyi.kb.api-key
UT-KB-LLM-007 KbOpenAiProxyControllerApiTest.models MockMvc GET /v1/models 路由与响应(standalone 不测 Security)
UT-KB-LLM-002 KbOpenAiProxyServiceImplTest.chatCompletionsForwardsBody POST 上游 /v1/chat/completions
UT-KB-LLM-003 KbOpenAiProxyServiceImplTest.detectsStreamRequest 识别 stream:true
UT-KB-LLM-004 KbOpenAiProxyServiceImplTest.rejectsWithoutApiKey 未配置服务端 api-key 抛异常
UT-KB-LLM-005 KbOpenAiProxyControllerApiTest.chatNonStream 非流式转发逻辑
UT-KB-LLM-006 KbOpenAiProxyControllerApiTest.chatStream 流式 SSE 写出 data:
mvn -pl baqing-admin test -Dtest=KbOpenAiProxyServiceImplTest,KbOpenAiProxyControllerApiTest

2. 接口联调(须启动 8010 + 有效若依 Token)

POST /login 获取 token,后续请求:

Authorization: Bearer {token}

编号 步骤 预期
IT-KB-LLM-001 GET http://localhost:8010/v1/models + Token HTTP 200
IT-KB-LLM-002 POST .../v1/chat/completionsstream:false + Token JSON 含 choices
IT-KB-LLM-003 同上 stream:true + Token text/event-stream
IT-KB-LLM-004 上述任一路径 不带 Token HTTP 401
IT-KB-LLM-005 仅带 VUE_APP_LLM_API_KEY、不带若依 Token HTTP 401(大模型 Key 不能代替登录态)

curl 示例(模型列表)

curl -s -H "Authorization: Bearer {若依token}" http://localhost:8010/v1/models

3. 前端回归(经 8010 转发)

编号 步骤 预期
FE-KB-LLM-001 管理端已登录,VUE_APP_LLM_BASE_URL 指向 8010,对话请求 Header 为 若依 Token 对话成功
FE-KB-LLM-002 同上但 Header 仍为 VUE_APP_LLM_API_KEY 401,需按 doc/大模型/大模型网关转发接口说明.md §6 改造

4. 修订记录

版本 日期 说明
1.0 2026-05-25 初版
1.1 2026-05-25 补充 IT/UT 编号
1.2 2026-05-25 IT-004/005、FE 用例:须若依 Token,禁止匿名