2.概念
1. LLM
LLM
是 Large Language Model
(大语言模型)的缩写。
它是指一种基于深度学习、训练于海量文本数据的人工智能模型,能够理解和生成自然语言,比如英文、中文等。譬如 ChatGPT
就是一个典型的 LLM
。
- 大数据:训练用的数据量非常庞大(数千亿个单词)
- 大参数量:模型中用于“记忆”的参数可能有几十亿甚至上千亿个
- 大计算力:训练需要超大规模的计算资源(GPU集群)
LLM
的关键能力如下:
能力 | 示例 |
---|---|
语言理解 | 能读懂文章、代码、对话等内容 |
语言生成 | 能写作、回答问题、续写文本 |
翻译 | 能把一种语言翻译成另一种 |
总结归纳 | 能提炼长文本的要点 |
逻辑推理 | 能基于文本信息做出有逻辑的判断 |
多轮对话 | 能持续理解上下文进行交流 |
常见的 LLM
框架或产品:
名称 | 开发者 | 备注 |
---|---|---|
GPT 系列 | OpenAI | ChatGPT 就是基于 GPT-4 |
Claude | Anthropic | 强调安全性和可控性 |
Gemini(原 Bard) | Google DeepMind | 与 Google 搜索深度整合 |
LLaMA | Meta | 开源的大语言模型 |
文心一言 | 百度 | 面向中文场景的国产 LLM |
通义千问 | 阿里 | 支持多种编程和中文场景 |
2. Function Calling
Function Calling 是一种 LLM
的功能调用机制,允许 LLM
在对话过程中调用外部函数,以获取更详细的信息。
譬如这样的一个场景:
用户输入:
今天天气怎么样?
传统 LLM
(如 GPT-3
)可能会回答:
对不起,我无法提供实时天气。
支持 Function Calling
的 LLM
会这样做:
理解意图是“获取当前天气”
自动调用开发者提供的
getWeather(location)
函数函数返回数据:
{ "location": "Beijing", "temp": "26°C", "condition": "Sunny" }
然后再生成回答:
北京今天是晴天,气温大约 26°C
const functions = [
{
name: 'getWeather',
description: '获取城市天气信息',
parameters: {
type: 'object',
properties: {
location: {
type: 'string',
description: '城市名称,例如:Beijing'
}
},
required: ['location']
}
}
]
3. MCP
MCP(Model Context Protocol
) 是 OpenAI
提出的一种新协议,旨在为语言模型(LLM
)提供结构化、持久和可扩展的上下文输入机制。
传统的 LLM
输入上下文是「一段字符串」,是一次性输入输出,譬如:
用户:帮我总结这段文章。
模型:好的,文章的重点是...
而 MCP
提供的是更结构化的上下文,譬如:
[
{
"name": "project_notes",
"type": "file",
"content": "# 项目笔记\n这是一个 Node.js 应用,使用了 Express、MongoDB..."
},
{
"name": "user_goal",
"type": "message",
"role": "user",
"content": "请帮我写一篇轻松风格的博客,介绍这个项目的技术栈和亮点。"
}
]
我们可以同时使用 Function Calling
和 MCP
:模型先用 MCP
理解所有上下文,然后决定要不要通过 Function Calling
去调用某个函数来处理任务。
4. AI Agent
AI agent
(人工智能代理)是指一种具备感知、思考、决策和行动能力的人工智能系统,它可以在一定的环境中自主地完成任务或达成目标。
有以下核心特点:
特性 | 说明 |
---|---|
感知 | 能够通过传感器或 API 接收环境信息(例如:读取网页、文件、数据等) |
推理 | 可以分析信息,规划任务,制定行动策略 |
执行 | 能通过调用工具、API 、脚本或与外界交互来完成任务 |
自主性 | 可以在少量人类干预下自动运行,部分具备“自我纠错”能力 |
它不仅能像 ChatGPT
一样对话,还能:
- 自动查找资料
- 读写文件或数据库
- 控制浏览器点击按钮
- 写代码、调试、测试
- 自动执行多步任务(如写一篇博客并自动发布)