2大语言模型LLM

在Agent系统中,把大模型看成大脑即可,和人脑之于人的定位,完全一样。

它负责理解用户目标,进行推理和任务规划,并输出下一步需要做什么。比如调用某个工具、继续获取信息,又或者是整理材料输出答案等。当然,大脑只负责思考和输出,这些其他外部操作,都是由模型之外的Agent Runtime和Harness来完成的(之后文章会详细介绍)。

Agent系统中的大模型=聊天机器人中的大模型,两者完全一样,区别只在于使用方式不同。

后者主要是跟用户交互,输出相对比较随意;前者很多输出,还需要继续交给程序处理:调用哪个工具?传哪些参数等?所以会约束要求输出格式。

比如用户输入:帮我查一下北京明天的天气。

聊天机器人的大模型:明天北京预计晴到多云,最高气温约18℃,最低气温约7℃,出门建议带件外套。

Agent系统的大模型,会先输出(调用查天气的工具):
{
  "tool": "weather_search",
  "city": "北京",
  "date": "2026-10-31"
}

程序识别该输出以后,会去调用天气工具,拿到天气结果以后,再返回给大模型。
大模型会再加工输出:明天北京晴到多云,最高18℃,最低7℃,早晚偏凉,建议带外套。

也就是说,两者用的模型完全一样,但在Agent场景中,模型中间输出需要程序可读、可执行,所以格式更规范。

如何让模型输出更规范呢?主要就是系统提示词不同!

还是刚才的例子,在聊天机器人中,系统提示词是:你是一个智能助手,请回答用户的问题。

最终给到大模型的输入是:系统提示词+用户提示词,即你是一个智能助手,请回答用户的问题。帮我查一下北京明天的天气。

但在Agent中,系统提示词会改成:

你是一个 Agent。
当用户需要查询天气时,不要直接回答,而是输出需要调用的工具和参数。
必须严格按照下面的JSON格式输出:

{
  "tool": "weather_search",
  "city": "",
  "date": ""
}

于是,同一个模型,在Agent中就会输出上述中间结果,程序能读懂,继续下一步操作:调用天气查询工具。

没错,就是这么简单粗暴,模型没变,变的只是提示词,通过提示词去规范模型的输出格式。