基础概念
什么是人工智能
人工智能(Artificial Intelligence,简称:AI)是指通过计算机系统模拟人类智能的技术。通过这种技术,可以实现人类的认知和思维活动,从而可以完成许多复杂的任务,比如学习,推理决策等。本质就是通过算法和数据,让机器具备类人能力。
AI应用
把人工智能的能力,运用到具体业务和实际场景中,以产品或系统的形式落地。比如豆包、汽车智能驾驶辅助系统等。
AI算法
AI算法,就是计算机模仿人类思考、学习、判断时,遵循的数学公式 + 执行流程,是实现这些能力的具体方法和逻辑。(AI算法 = AI的"大脑逻辑",人工智能要靠AI算法实现)
常见的AI算法:线性回归、逻辑回归、决策树&随机森林、支持向量机(SVM)、卷积神经网络等。
Agent
Agent(智能体)是一个能够感知环境输入、自主决策、规划行动路径,并可调用工具或执行操作以达成目标的自主性软件实体。
- Copilot模式: AI作为"副驾驶",在工作中实时提供建议、给出问题答案与参考方案,但最终决策与控制权完全由人类掌握。
- Agent模式: Copilot模式是人主导、AI提供建议并由人决定是否执行;Agent模式是AI自主进行任务规划并调用工具完成执行。
- Copilot模式举例:ChatGPT普通问答模式、豆包网页的一问一答模式。
- Agent模式举例:智能客服Agent(帮你订机票、点外卖)。
vibe coding(AI编程)
Vibe Coding是一种以自然语言驱动的软件开发方式,开发者通过描述需求或意图(而非手写代码),借助大语言模型自动生成、修改代码,从而完成开发任务。作为开发者只管验收、反馈、迭代,快速把想法变成可运行程序。
人工智能、机器学习、深度学习三者的关系是什么?
- 人工智能(AI)
- 目标是让机器拥有类似人类的智能。
- 机器学习(ML)
- 机器学习(Machine Learning)是人工智能的核心实现方式。它通过数据训练模型,让机器自动学习规律,而不是依赖人工编写规则。
- 机器学习的常见方法包含:线性回归/逻辑回归、决策树&随机森林、支持向量机(SVM)等。
- 深度学习(DL)
- 是机器学习的一个重要分支。是一种基于多层神经网络,让机器自动从海量数据中学习特征与规律,从而实现感知、理解与生成的高级机器学习方法。
- 三者关系: 深度学习是机器学习的重要分支,机器学习是人工智能的核心实现方式。
什么是LLM(大语言模型)
LLM 全称 Large Language Model,中文叫大语言模型,是一种基于海量文本数据训练、能理解和生成人类语言的人工智能模型。
常见的大语言模型:GPT系列、Claude系列、Gemini系列、Deepseek、豆包
Prompt
什么是Prompt(提示词)?提示词的基本结构包括哪些部分?
提示词是用户或系统提供给大语言模型(LLM)的指令或文本,用于引导模型生成特定输出。
系统提示词 & 用户提示词:
| 类型 | 定义 | 核心功能 | 示例 |
|---|---|---|---|
| 用户提示词 | 由终端用户直接输入,触发单次任务。 | 传达即时需求(如提问、指令)。 | 用户输入:"查询订单" |
| 系统提示词 | 由开发者预设,嵌入系统后端。 | 定义模型角色、行为规范、知识边界。 | 预设:"你是一名客服,用友好语气解答问题" |
系统提示词如同"操作系统",持续影响所有交互(如角色设定、行为规范、知识边界、安全过滤);用户提示词如同"操作指令",驱动单次任务执行(如生成报告、翻译文本)。
提示词基本结构:CO-STAR 框架
| 缩写 | 含义 | 说明 |
|---|---|---|
| C | Context(背景) | 提供足够的背景信息,帮助AI理解任务的上下文和环境。 |
| O | Objective(目标) | 明确说明希望AI完成的具体目标或任务。 |
| S | Style(风格) | 指定AI生成内容的风格,例如正式、幽默、小红书风格等。 |
| T | Tone(语气) | 确定AI生成内容的语调,如礼貌、说服性、激励性等。 |
| A | Audience(受众) | 描述目标受众的特征,如年龄、兴趣、职业等。 |
| R | Response(响应格式) | 指定AI回应的格式,如表格、段落、列表等,以及回应的具体要求。 |
提示词工程(Prompt Engineering)
Prompt Engineering是指通过设计和优化输入给大语言模型的提示词,来引导模型生成更准确、更稳定、更符合预期结果的一种工程方法。
有哪些设计和优化提示词的技巧?
基础提示技巧:
- 角色提示: 通过设定身份(如"你是一位资深的Python架构师")来约束模型的语气、专业深度和思维方式。
- 结构化指令引导: 通过特定分隔符(如:""、【】、<>或XML标签)、列表以及Markdown格式等来清晰地界定指令、背景信息、输入数据和输出要求,防止模型混淆。
- 少样本提示: 提供1~3个正确示例,让模型快速学习格式与规则。
进阶推理技巧:
-
链式思考(CoT)提示: 让模型分步推理,先思考再输出答案,大幅提升复杂问题准确率。
- 提示词示例: 请一步步推理以下问题,展示你的完整思考过程,最后得出结论:
一件衣服原价是200元,先打8折,再减去满100减20的优惠券,最后还要加上5%的税费。小李用这张优惠券买这件衣服,实际支付多少钱?
- 提示词示例: 请一步步推理以下问题,展示你的完整思考过程,最后得出结论:
-
自我一致性: 传统链式思考(CoT)提示只走一条推理路径;自我一致性则探索多条路径,最终聚合为一致答案。它不再依赖"一次思考定生死",而是通过"多次尝试 + 投票机制"来提高准确率。
-
案例:
问题: 小明有24颗糖,他每天吃3颗,中途休息了一天没吃。问他总共吃了几天才吃完?
传统思维链(CoT)
推理文本:每天吃3颗,24 ÷ 3 = 8天。答案是8天。
最终输出:8。
自我一致性
推理1:吃糖时间共需24 ÷ 3 = 8天,加上中间休息1天,实际经过9天 → 输出:答案为9。
推理2:第1~7天吃完21颗,第8天休息,第9天吃完剩下3颗,共经历9天 → 输出:答案为9。
推理3:直接计算:8天进食 + 1天休息 = 9天 → 输出:答案为9。
投票汇总文本:多数答案为9,投票决定最终输出9。
-
提示词示例:
请从不同角度独立思考以下问题三次,每次采用不同的表达方式或拆解顺序,展示完整推理过程。然后比较三个答案,选择最合理且一致的结果作为最终输出。
问题:
小明有60张游戏卡牌,他每天卖出5张。第3天结束后,他休息了2天没卖,之后继续每天卖5张。问他一共用了多少天才卖完?
要求:
- 每次推理必须独立,不能复制前面的内容。
- 最终输出格式为:
→ 第一次推理:...
→ 第二次推理:...
→ 第三次推理:...
→ 综合判断与最终答案:...
-
优化与迭代策略:
- 由浅入深(Iterative Refinement): 不要指望一次写出完美的 Prompt。先从简单的指令开始,观察输出,再根据不足逐步添加约束条件和背景。
Token(词元)
什么是 Token?Token 在大语言模型中的作用是什么?
- Token(词元)概念: Token是大语言模型(LLM)处理文本时的最小语义单位。是将文本拆解为模型可理解的离散单元(不是字,也不是单词)。
- Token通过大语言模型的分词器将文本拆分而来,不同模型的分词器不同,同一个词在不同模型中可能被拆分成不同的Token。
- Token分类:
- Prompt Token / Input Token(输入Token): 发给模型的内容:问题、历史对话、上传的文档、系统提示词等。
- Completion Token / Output Token(输出Token): 模型生成的回答。
- Token在大语言模型中的作用:
- 计费单位: 几乎所有商用大模型都按Token收费:输入Token + 输出Token。
- 上下文长度限制: 模型有最大上下文窗口(如 8k、32k、128k、1M Token),超过上限模型就无法处理,会截断或报错。
- 决定模型理解能力: Token切分越合理,模型越能理解语义;同时Token数量直接影响推理速度、显存占用、成本。
会话记忆
什么是会话记忆(Chat Memory)?有什么作用?
在对话系统中,会话记忆指的是模型对历史对话内容的存储与利用机制,属于上下文理解的核心能力之一。
会话记忆包括:
- 用户之前说过的话。
- 模型之前的回答。
- 当前对话的上下文状态。
举个例子:
用户:我在做一个 Spring AI 项目。
用户:怎么接入大模型?
第二句话虽然没提"Spring AI",但模型能理解你是在延续上文问题------这就是会话记忆在起作用。
会话记忆的作用:
- 上下文连贯: 能理解"它""这个"等指代,让对话流畅不脱节。
- 减少重复输入: 无需每次重复背景信息,交互更高效。
- 个性化体验: 记住用户偏好、历史偏好,提供定制回复。
- 多轮任务完成: 逐步收集信息,支持复杂任务(如写代码逐步完善、信息咨询)。
会话记忆和上下文窗口(Context Window)是什么关系?
- 会话记忆: 参考上一题。
- 上下文窗口: 大语言模型一次最多能处理的Token数量。
- 两者的关系: 上下文窗口 = 背包容量;当前输入 + 会话记忆 + 系统提示词 + 大模型的回复 = 要装进去的东西。
多模态
什么是多模态?常见的模态有哪些?典型应用场景有哪些?
- 多模态: 是指融合文本、图像、音频、视频等多种类型信息,让模型能理解、生成不同模态数据的技术。(单模态只能处理一种数据类型)
- 常见模态: 文本(Text)、图像(Image)、音频(Audio)、视频(Video)。
- 典型应用场景:
- 智能问答: 上传图片 + 提问;场景:医疗影像分析。
- 文生图/图生文: 文本 → 图片,图片 → 描述;场景:AI绘画、商品描述生成。
- 语音助手: 语音 → 文本 → LLM → 语音;场景:智能客服、车载助手。
- 视频理解: 视频摘要、行为识别;场景:视频网站生成视频摘要、安防监控、内容审核。
RAG
什么是RAG(检索增强生成)
RAG(Retrieval Augmented Generation,检索增强生成)是一种结合外部知识库检索与大模型生成的技术。核心是让大模型在回答前先"查资料"(外部知识库),再基于检索到的权威信息生成答案,解决模型知识过时、幻觉、专业知识不足三大核心问题。
RAG就像给AI装上了"外挂大脑",让它在回答问题时,先从外部知识库(如文档、数据库)中检索相关片段,再将这些片段作为上下文,输入给模型。这样,AI的回答就基于真实、最新数据,大幅减少"幻觉",同时支持动态知识更新。
比喻理解:想象你是个学生,参加开卷考试,你本身是记忆了一些知识的(AI模型训练数据知识)。
- 传统LLM就像闭卷考试------你只能靠死记硬背,可能记错。
- RAG就像开卷考试------给你发了一本历史书(RAG的知识库),你先快速翻书找到"秦朝"章节(检索),再根据书里的内容组织答案(生成),确保答案是真实的。
RAG让AI从"背书机器"升级为"会查资料的专家",适合需要高准确性的场景(如医疗咨询、法律问答)。
RAG解决的问题:
- 知识过时问题: 大模型训练数据是"历史的"。RAG可以接入最新文档、实时数据、内部知识库,实现"动态知识"。
- 幻觉问题(Hallucination): 模型容易"编答案"。RAG基于真实文档回答,提供依据,大幅降低幻觉。
- 私有知识问题: 模型默认不知道公司内部数据、私有文档、业务规则。RAG可以接入企业知识库、本地文件,实现"企业专属AI"。
- 上下文窗口限制: 模型不能一次读太多内容。RAG检索"相关片段"而不是全部数据,节省Token。
- 可解释性问题: 传统模型回答"黑盒"。RAG可以返回"引用来源",支持溯源。
RAG的核心工作流程是怎样的?
离线准备阶段:
- 数据采集: 数据采集来源包括:文档(PDF / Word / Markdown)、数据库、API、网页。
- 文档切分(Chunking): 把长文档拆成小块以提高检索精度、适配上下文窗口。
- 向量化(Embedding): 将每个chunk转换为向量。
- 存储: 将向量存储到向量数据库(除向量外一般还存储:原文、metadata),常见的向量数据库有:Milvus、Pinecone等。
在线查询阶段:
- 数据查询检索: 用户输入问题,将问题转换为向量,然后在向量数据库中进行相似度搜索,寻找最相似的文档块(常见算法:余弦相似度、向量距离)。
- (可选)重排序(Re-ranking): 对检索结果进行再次排序,即用更强模型筛选最相关内容。
- Prompt构建 & 答案生成: 将检索结果和用户问题组合起来,构造成一个完整的Prompt,放入上下文窗口调用大模型,模型生成答案并返回。
Tool
什么是工具调用 (Tool Calling)?
Tool Calling(工具调用)是AI应用中的一种常见技术模式,指大语言模型(LLM)能够根据用户请求,智能地选择并调用外部工具(如函数、API、服务等)并获取执行结果,以此扩展并增强自身能力的技术流程。
大模型本身无法做到的事:
- 知识滞后,无实时信息。
- 无法精确计算:大数运算、复杂公式推导。
- 无法与外部交互:如查询数据库、读写文件。
Tool Calling VS Function Calling
- 函数调用(Function Calling)是工具调用(Tool Calling)的早期叫法与核心形式,现在行业里一般统一称为工具调用(Tool Calling)。函数调用是指 LLM 请求调用一个开发者预定义的函数(Function),这里的"函数"就是你代码中的一个方法。
- Tool Calling 是一个更通用、更广泛的概念,不仅包含了 Function Calling,还涵盖了调用其他类型的工具。
MCP
什么是 MCP?与 Tool Calling 的区别是什么?
MCP(Model Context Protocol,模型上下文协议)由AI公司Anthropic于2024年11月推出的开源标准协议。为大语言模型(LLM)与外部系统、工具和数据源提供标准化的安全双向通信接口,解决AI集成的「N×M」复杂度问题,常被类比为AI领域的「USB-C」或「通用接口」。
- 以前: 大模型想要接入各类外部系统或工具等,每个模型和每个工具/系统之间都要单独开发一套专属对接逻辑,适配成本极高、复用性极差。
- 现在: 有了MCP,就像所有设备都统一使用USB-C,只要遵循这个标准,就能即插即用。
N: 各种大模型(GPT、Claude、DeepSeek、通义千问、文心一言......)
M: 各种工具/系统(数据库、浏览器、代码IDE、邮箱、ERP、飞书、企业内部接口......)
在MCP协议中核心的组成部分是 MCP Client 和 MCP Server。
- MCP Client 是大模型系统内的"连接器",负责按MCP协议发起连接、调用外部服务。
- MCP Server 是外部工具的"适配器",会按照MCP协议将工具功能封装成标准接口,供Client调用。
与Tool Calling的区别: Tool Calling是LLM调用外部工具的能力,MCP是LLM与工具交互的标准化协议。
MCP的核心工作流程是什么?
- 初始化连接(握手建连): MCP主机启动,创建MCP Client并按照配置与MCP Server建立通信连接。(一个主机可同时连接多个MCP Server,每个Server独立承载不同的工具与能力)。
- 能力发现(工具/资源列表): Client向Server发起能力查询,Server返回结构化清单:名称、描述、参数、权限。Client将工具信息同步给主机,让LLM明确自身可调用的外部能力边界。
- 执行决策 & 调用工具(LLM驱动): 用户输入问题后,Client会自动整合可用工具列表、用户原始问题与对话上下文,并以标准化格式封装后发送给LLM。LLM依据上下文及工具元信息进行智能决策:
- 判断是否需要调用外部工具、选择具体工具并匹配合规入参。
- 若无需调用工具,则直接生成自然语言回复,跳过后续执行环节。
- 若LLM确定调用工具,Client会将结构化的调用请求精准转发至对应MCP Server。由Server承担实际执行职责,完成API调用、数据库读写、脚本运行或文件系统操作等任务,执行完毕后,以统一结构化格式将结果回传给Client。
- 结果回传 & 输出: Client把工具执行结果回传给LLM,模型融合工具执行结果、用户问题与对话上下文,生成符合需求的自然语言回答,再由Client通过主机应用展示给用户。
Agent & 工作流
什么是工作流(Workflow)?与Agent区别是什么?
- Agent: 能够感知环境输入、自主决策、规划行动路径,并可调用工具或执行操作以达成目标的自主性软件实体。
- 工作流(Workflow): 是按照预先定义好的步骤和规则,依次执行任务的一种流程化机制。特点:流程是固定的、可预期的、每一步做什么是提前设计好的、更像一条"流水线"。
- 区别: 工作流是"人预先定义步骤的自动化流程",而Agent是"大模型(LLM)根据目标动态控制流程走向"。
什么是多Agent模式,什么场景下需要使用多Agent协作而不是单个Agent解决?
- 多Agent模式: 将一个复杂任务拆分给多个具备不同职责的Agent,由它们协作完成整体目标的系统。可以理解为:从"一个人干所有事",变成"一群分工明确的人协作"。
- 什么场景下需要使用多Agent协作: 当任务复杂到"一个Agent无法稳定、清晰地完成"时,就需要多Agent。尽管可采用单个Agent整合并执行复杂任务,但这种超级Agent架构存在明显弊端:
- 上下文限制: 一个Agent需要将所有任务的内容、工具描述、历史记录都塞进有限的上下文窗口,导致信息过载、成本剧增、推理速度下降。
- 角色冲突与指令污染: 同一个Agent同时扮演多个角色时,系统提示词会发生冲突,导致行为混乱或平庸化。
- 单点故障与脆弱性: 单个Agent一旦在某个步骤推理出错或遇到未知情况,整个任务链可能崩溃。
Skill
什么是Skill?和Tool Calling的区别是什么?
- 定义: Skill是模型经过学习或配置后,可重复执行的一类标准化任务能力。
- Skill VS Tool Calling:
- Tool 更侧重于单一操作的能力,比如:查天气API、数据库查询、发HTTP请求。
- Skill 是一项完整技能,比如:帮你"规划旅行"。会用到:查天气 + 查机票 + 查酒店 + 生成行程。