AI核心概念基础知识

AI核心概念基础知识

本文将讲述LLM, Token, Context, Prompt, Tool, MCP, Agent, Agent Skill等AI领域核心概念。

LLM

LLM(Large Language Model),即大语言模型,简称大模型,目前的大模型,基本上都是基于Transformer架构搭建的。

大模型天生就只会做一件事:根据 “已经说过的话”(包含用户的输入和模型的输出),预测「下一个词」是什么

这是一个循环往复的过程,每次输出一个Token,直到模型给出代表结束的Token

Token

Token = 文本经过子词分词器(Subword Tokenizer)离散化后的最小语义单元,会将用户的自然语言,进行分词,每个词会映射到一个确定的数字

模型不直接处理字符串 / 字符 / 单词,只处理Token ID(整型数字),并进行矩阵/向量运算,Token 是连接「自然语言」与「神经网络向量」的唯一桥梁

OpenAI提供了一个GPT模型文本转为Token的页面:platform.openai.com/tokenizer

Context

大模型本身是无状态的,那么他是怎么记住你之前所说的话的?

实际上,在调用大模型时,可以将对话历史一起作为输入,这样大模型就知道之前发生了什么

Context为模型的上下文,是每次计算所获取的所有信息,通常来讲包含一下内容:

  • 对话历史
  • 用户当前的输入
  • 模型当前输出
  • 工具列表
  • Prompt

Context Window

Contenxt所能容纳的最大Token数量,就是Context Window(上下文窗口)

RAG

RAG(Retrieval-Augmented Generation,检索增强生成),是一种不修改大模型,仅通过外部知识库检索 + prompt 拼接,让 LLM 基于私有 / 最新 / 精准知识生成回答的技术范式。

它能解决以下问题:

  • 知识截止:训练数据固定,无法获取训练后新数据
  • 私有数据不可见:无法读取企业内部文档、业务数据
  • 幻觉 Hallucination:无依据编造答案
  • 不可追溯:答案无法溯源、无法审核

比如将公司内部的一些知识文档,进行预处理,构建知识库

后续处理用户的输入时从知识库中匹配与用户问题语义最相关的知识,一起喂给大模型

Prompt

Prompt(提示词)= 输入给大模型的完整 Token 序列,是大模型的唯一交互接口、可编程指令集、上下文载体。

大模型是无状态纯函数,所有行为完全由输入的 Prompt 决定,Prompt 会被分词器转为 Token ID 输入给大模型,模型的所有输出(回答、格式、逻辑、知识),都由 Prompt 直接控制,Prompt越具体模型的效果越符合预期

1
2
3
4
5
6
[1. 角色定义] 你是XX领域的专业专家,严格遵守规则
[2. 核心指令] 执行XX任务,禁止XX行为
[3. 约束条件] 仅使用提供的知识,不编造、不扩展
[4. 上下文/参考知识] RAG检索结果、对话历史(Context)
[5. 输出格式] 严格返回JSON/纯文本/步骤化内容
[6. 用户输入] 用户的问题/请求

Prompt Engineering

提示词工程(Prompt Engineering),它是 LLM 能力不完善时代的 “补偿性技术”,利用 LLM 上下文学习(ICL)与无状态特性,通过结构化、规则化、可复现的输入序列设计,在不修改模型权重的前提下,精准控制模型输出行为的整套工程化方法体系。

随着大模型能力的进化,它从「核心技术」变成了「底层基础设施」,提示词被底层框架完全封装,开发者不再接触

Prompt分类

Prompt分为用户提示词和系统提示词。用户提示词为用户输入的“具体任务”,系统提示词是系统配置的“人设和做事规则”

例如:

  • 系统提示词:你是一位耐心的数学老师,当学生向你请教数学问题时,不要直接给出答案,而是要一步一步引导学生思考,帮助他们理解解题思路
  • 用户提示词:1 + 2 * 3等于几

Tool

大模型本身是纯文本、闭域、无执行能力的:

  • 不能实时联网(知识永远滞后)
  • 不能操作外部系统(查不了你的数据库、调不了业务接口、改不了数据)
  • 不能获取实时数据(天气、订单、库存、日志)

Tool 就是为了解决:让模型不只 “说”,还能 “做”。提供大模型对外的感知能力,他对大模型来说就是一个函数,大模型给输入,然后会输出对应的内容

但是大模型本身只能处理文本,大模型需要调用工具时,会输出调用工具的请求文本,系统(大模型外部)处理后会触发真正的调用,并将结果输入给大模型

MCP

要让系统能够进行工具的调用,需要把工具接入系统,而MCP(Model Context Protocol)协议就是统一的接入规范,统一大语言模型与外部数据源、工具、系统的交互方式

Agent

Agent(智能体)是以 LLM 为核心大脑,具备自主感知、目标规划、工具调用、记忆维护、自我反思能力,能自动完成多步骤复杂任务的闭环执行系统。

  • LLM = 大脑

  • Context / 记忆 = 短期 / 长期记忆

  • Tool / MCP = 手脚(执行能力)

  • RAG = 知识储备

  • Prompt = 行为规则

1
2
3
4
5
6
7
8
9
用户需求

Agent(大脑:LLM)
├─ 记忆:Context + KV Cache + RAG(长期知识)
├─ 规划:CoT / Plan(怎么干)
├─ 执行:Tool / MCP(去干活)
└─ 反思:自我校验(干得对不对)

最终结果

Agent Skill

AgentSkill(智能体技能)是面向业务场景的、模块化可复用的 Agent 执行单元,能够进行多步骤、多 Tool 编排来完成具体的业务动作

如下展示了一个AgentSkill的简要示例,顶部的部分是Skill的元数据,让Agent知道这个技能的概述,用于判断是否使用该技能,以实现技能的按需加载(渐进式披露

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
---
name:xxx
description:生成出门携带物品清单,当用户表明需要出门时使用
---

# 目标

你是一个贴心的助手,你的任务是根据用户所在位置的天气情况,告诉用户出门需携带的物品

# 执行步骤


# 判断规则

# 输出格式

# 示例

## 用户问题

## 工具返回

### xxx工具

## 最终输出

Agent Skill Reference

设想这样一个场景,有一个视频会议助手Skill,用于总结会议内容,如果想要实现当会议涉及资金时能够标注总结财务是否合规、当涉及到一些敏感内容时能够提示涉及到的法务风险等,如果把财务规定与法律条文等内容都塞到视频会议助手Skill,那么这个Skill的内容将十分庞大,不仅消耗Token,还可能干扰结果生成

AgentSkill提供了Reference的能力,能够实现按需加载的按需加载,可以在视频会议助手Skill内声明如下内容,以实现引用:

  • 仅在提到“钱、预算、采购、费用”时触发。须读取集团财务手册.md,指出决定中的金额是否超标,并明确审批人

Agent Skill Script

AgentSkill能够进行脚本的触发,比如添加如下规则文字,一般来说,大模型不会读取脚本的内容,只关心运行方法和运行结果,脚本逻辑不回进入上下文

1
2
3
4
5
6
# 上传规则

如果用户提到“上传”,你必须运行upload.py 脚本将总结内容上传到服务器。脚本使用方法:
```python
python upload.py "会议总结内容"
```