Harry33t opened a new issue, #1085:
URL: https://github.com/apache/dubbo-go-samples/issues/1085

   ## 问题描述
   
   我在本地测试 book-flight-ai-agent sample 时,发现 .env.example 中默认模型为:
   
   LLM_MODEL = qwq
   
   `qwq ` 模型参数量较大,对本地机器的显存/内存要求较高。对于普通开发者电脑来说,直接按照 README 跑这个 sample 
可能会遇到模型无法加载、响应很慢,或者 Agent 行为不稳定的问题。
   
   我本地使用较小模型 `qwen3:4b`  测试时,服务可以启动,HTTP/SSE 
接口也能返回内容,但模型没有正确触发订票工具,而是把用户的查票请求判断为不相关任务。
   
   请求:
   ```
   curl -X POST http://127.0.0.1:8080/api/chat \
     -H "Content-Type: application/json" \
     -d '{"message": "帮我查明天从北京到上海的航班", "bin": ""}'
   ``` 
   返回的 SSE 流中出现了类似内容:
   ```
   **Thought**: Greeting task is unrelated.
   **Action**: ```json { "method": "TaskUnrelated", "params": {} } ```
   ```
   说明小模型虽然能跑通接口,但不一定能稳定完成 Agent 工具调用流程。
   
   ## 测试环境
   OS: Windows 11
   Go: 1.25
   Docker Desktop
   Ollama: qwen3:4b
   Sample: book-flight-ai-agent
   
   ## 复现步骤:
   进入 book-flight-ai-agent 目录:
   
   > cp .env.example .env
   
   将 .env 中模型改为本地可运行的小模型:
   ```
   LLM_MODEL = qwen3:4b
   LLM_URL = http://127.0.0.1:11434
   ```
   启动 server:
   > go run ./go-server/cmd/server.go
   启动 frontend:
   > go run ./go-client/frontend/main.go
   
   调用聊天接口:
   ```
   curl -X POST http://127.0.0.1:8080/api/chat \
     -H "Content-Type: application/json" \
     -d '{"message": "帮我查明天从北京到上海的航班", "bin": ""}'
   ```
   ### 实际结果
   
   服务可以启动,接口可以返回 SSE 流,但较小模型可能无法稳定触发 SearchFlightTicketTool,导致 demo 
的核心订票流程无法完整展示。
   
   同时,README 中没有说明:
   
   1. 推荐使用多大参数量的模型;
   2. 最低可用模型配置;
   3. 普通开发者机器跑不动 qwq 时应该怎么办;
   4. 是否有 mock/fallback 模式可以绕过 LLM,直接验证 RPC 和工具链路。
   
   ### 预期结果
   README 应该补充模型要求和推荐配置,让用户知道:
   1、默认模型 qwq 对硬件要求较高;
   2、 推荐使用哪些 Ollama 模型;
   3、 小模型可能只能验证接口,不一定能稳定完成 Agent 工具调用;
   4、如果只是想验证 sample 的 RPC/Web/SSE 链路,是否可以使用 mock 模式或固定响应模式。
   
   ## 建议修复方式
   
   建议在 README 中增加一个模型推荐章节:
   
   ## Model requirements
   
   This sample uses an LLM to decide when to call flight booking tools.
   
   Recommended models:
   
   | Model | Purpose |
   |---|---|
   | qwen2.5:7b / qwen3:8b | Basic local test |
   | qwen2.5:14b | Recommended for more stable tool calling |
   | qwq | Best reasoning quality, but requires much more memory |
   
   Small models may run the HTTP/SSE flow successfully, but may fail to call 
tools reliably.
   
   也可以考虑增加一个 mock/fallback 模式:
   
   > LLM_MODE = mock
   
   当用户只想验证 sample 是否跑通时,mock 模式可以直接返回固定航班查询结果,避免本地模型能力不足导致误判为代码问题。
   
   ## 影响
   
   这个问题不会阻塞代码编译或服务启动,但会明显影响新用户体验。用户可能会误以为 sample 本身有 
bug,实际上是默认模型门槛较高或小模型工具调用能力不足。
   
   如果这个修复方向可以接受,我可以继续提交 PR。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to