AI应用关键词扫盲Function Calling MCP ReAct Skills RAG Harness

AI 学习日记:LLM、Agent 和上下文

最近学习了一些大模型和 Agent 相关的概念,简单记录一下自己的理解。

温度参数

温度可以理解为模型输出的随机程度。

当温度设置为 0 时,模型会尽量选择概率最高的词,输出更确定,适合写代码。

温度调高以后,模型会更愿意选择一些概率较低的词,输出会更有创意,但也更不可控。所以头脑风暴可以适当调高。

上下文窗口

大模型不是无限记忆的,它一次能看到的内容有限,这个范围叫 上下文窗口(Context Window)

如果对话太长,早期内容就可能被处理掉。常见做法是 压缩(Compaction),也就是把前面的对话总结成一段摘要,保留重要信息,丢掉细节。

所以比较好的使用方式是:一个 Session 尽量只处理一个主题。这样上下文更干净,模型也更不容易混乱。

Instruct 模型

我们平时用的大模型,大多不是单纯的 Base 模型,而是 Instruct 模型。

Instruct 模型是在 Base 模型基础上,用大量“指令-回答”数据做微调,再通过 RLHF 进一步优化,让模型更适合按照人的要求完成任务。

Function Calling

Function Calling 的核心是:模型不直接执行工具,而是输出一个结构化的工具调用请求。

外围程序拿到这个请求以后,真正去执行函数,然后把执行结果再放回上下文,让模型继续生成回答。

所以模型负责判断“要不要调用工具、调用哪个工具”,真正干活的是外部程序。

MCP

MCP 可以理解为给工具调用定了一套标准。

它标准化了工具怎么描述、参数怎么定义、怎么调用、结果怎么返回。

但 MCP 本身没有给模型增加新的 AI 能力,它底层还是 Tool Use 那套逻辑:把工具描述放进上下文,模型判断是否调用,程序执行工具,再把结果返回给模型。

它的价值主要在于标准化,让工具更容易复用和接入。

ReAct

ReAct 是 Reasoning + Acting。

简单来说,就是让模型在循环中不断执行:

思考 → 行动 → 观察结果 → 再思考

这也是 Agent 和普通聊天机器人的区别之一。Agent 不只是回答问题,还可以拆任务、调用工具、根据结果继续推进。

Skills

Skills 可以理解为可复用的工作流程。

比如总结论文这件事,可以固定成:提取标题、摘要、方法、实验结果、局限性、未来工作。以后遇到类似任务,就可以直接复用这套流程。

RAG

RAG 是让 Agent 用上外部知识。

模型本身不一定知道我们的私有资料,比如项目文档、论文、代码、公司知识库。所以需要先从外部知识库检索相关内容,再把这些内容放进上下文,让模型基于资料回答。

RAG 的重点不是让模型记住知识,而是让模型回答前先查资料。

Harness

为了让 LLM 写出来的代码能被验证,能尽早发现问题并修复,就需要一套测试、反馈、修复机制。这就是最近比较火的 Harness Engineering
如果说 RAG 是让 Agent 有知识,工具调用是让 Agent 有行动能力,那么 Harness 就是让 Agent 更可靠。
事前检测+事后反馈

总结

学到最后,我觉得有一句话很关键:

一切都是上下文。