🔍 大模型的训练数据不是实时的,它“不知道”今天北京是不是下雨。

所以,你这段代码:

String text = deepseekChatClient.prompt()
    .user(city + "未来三天的天气如何")
    .call()
    .chatResponse()
    .getResult()
    .getOutput()
    .getText();

如果直接靠大模型回答,它返回的只是一个“基于统计和常识的推测性回答”,而不是真实的天气。


🤔 那么,这段代码拿到的到底是什么数据?

我们来分两种情况讨论:


❌ 情况一:没有使用“工具调用”(Function Calling / Tool Calling)

如果你只是像上面这样直接问:

.user("北京未来三天天气如何")

那么:

🚫 大模型会“凭经验”编一段话,比如:

“北京未来三天可能晴转多云,气温在15-25℃之间,建议出门带伞……”

但这不是真实天气,只是模型根据训练数据中“北京+春季/秋季”的典型天气模式“猜”的。

✅ 这种方式的问题:

  • 数据不准确
  • 无法用于生产
  • 可能误导用户(幻觉)

✅ 情况二:你正在使用“工具调用”(这才是正确的做法)

你之前的问题中提到了 ToolResponseMessage,说明你其实在走一个更高级的流程:

✅ 正确流程:AI + 工具调用(Function Calling)

  1. 用户问:“北京天气如何”
  2. AI 模型判断:这不是我能直接回答的 → 建议调用 getWeather(city) 工具
  3. 系统调用真实天气 API(或模拟)
  4. 把结果包装成 ToolResponseMessage
  5. 再把工具结果发回给 AI 模型,让它生成自然语言回复

💡 这才是 ToolResponseMessage 的用途:把真实数据告诉 AI,让它“翻译”成人类语言。


📌 所以你的代码应该长这样(完整流程):

// 第一步:AI 判断要调用工具
AiResponse aiResponse = client.prompt()
    .user("北京未来三天天气如何")
    .call()
    .chatResponse();

// 假设 AI 返回:需要调用 getWeather 工具,callId = "call_123"
String callId = aiResponse.getToolCalls().get(0).getId();
String city = extractCityFromToolCall(aiResponse); // 提取参数

// 第二步:系统调用真实天气服务
String realWeather = weatherService.getRealWeather(city); // 真实 API 查询

// 第三步:把真实结果包装成 ToolResponseMessage
ToolResponseMessage toolResponse = new ToolResponseMessage(
    List.of(new ToolResponseMessage.ToolResponse(callId, realWeather, "getWeather"))
);

// 第四步:把工具结果再发回给 AI,让它生成最终回复
String finalAnswer = client.prompt()
    .user("北京未来三天天气如何")
    .toolResponse(toolResponse)
    .call()
    .chatResponse()
    .getResult()
    .getOutput()
    .getText();

✅ 总结:你问的问题,答案是:

问题 回答
大模型能提供实时天气吗? ❌ 不能,训练数据是静态的
.user("天气如何").call() 返回什么? 🤖 模型“猜”的结果(可能错误)
怎么拿到真实天气? ✅ 必须通过“工具调用”(Tool Calling)
让系统调用真实 API,再把结果交给 AI 生成回复
ToolResponseMessage 是干嘛的? 📦 就是用来把“真实结果”传给 AI 的桥梁

🎯 类比理解:

大模型就像一个知识渊博但不联网的教授
你问他:“今天股市如何?”
他不知道,但他说:“你应该去查一下新浪财经。”
你查完回来告诉他结果,他才能说:“哦,今天股市上涨了2%。”

这个“你去查”的过程,就是 Tool Calling


✅ 所以:
不要指望大模型返回真实数据,
要用 AI + 工具调用 + 真实服务 的组合,才能做出靠谱的应用。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐