1、大模型应用开发基础

1、大模型应用开发基础

1、大模型应用开发基础

AGI(Artificial General Intelligence)中文译为「通用人工智能」。是具备超越人类智能的 AI。

AGI 时代,AI 无处不在,形成新的社会分层:

  1. AI 产品使用者,使用别人开发的 AI 产品
  2. AI 产品制造者,设计和开发 AI 产品
  3. 基础模型相关,训练基础大模型,或为大模型提供基础设施(算力等)

越向下层,重要性越高,从业人数越少。

AI 产品制造者的核心能力模型

三懂:

  1. 懂业务,就是懂用户、懂客户、懂需求、懂市场、懂运营、懂商业模式,懂怎么赚钱
  2. 懂 AI,就是懂 AI 能做什么,不能做什么,怎样才能做得更好、更快、更便宜,懂怎么用 AI 解决赚钱过程中的问题
  3. 懂编程,就是懂如何编写代码实现一个符合业务需求的产品,尤其是 AI 产品

什么是 AI?

大模型 AI 能干什么?

大模型,全称「大语言模型」,英文「Large Language Model」,缩写「LLM」。

本课第一个专业向要求:分清对话产品大模型

但是,千万别以为大模型只是聊天机器人。它的能量,远不止于此。

按格式输出

分类

聚类

持续互动

技术相关问题

可能一切问题,都能解决,所以是通用人工智能 AGI

用 AI,要用「用人思维」:

  • 机器思维:研发了什么功能,就有什么功能。
  • 用人思维:给 ta 一个任务,总会有些反馈,或好或坏,惊喜或惊吓。
划重点:
  1. 大模型就是一个函数,给输入,生成输出
  2. 任何可以用语言描述的问题,都可以输入文本给大模型,就能生成问题的结果文本
  3. 进而,任意数据,都可以输入给大模型,生成任意数据

大模型是怎样工作的?

通俗原理

其实,它只是根据上文,猜下一个词(的概率)……

OpenAI 的接口名就叫「completion」,也证明了其只会「生成」的本质。

略深一点的通俗原理

训练推理是大模型工作的两个核心过程。

用人类比,训练就是学,推理就是用。学以致用,如是也。

例如,有下面训练数据:

  1. AI 正在改变我们的生活方式。
  2. AI 技术在医疗领域有广泛应用。
  3. AI 可以提高企业的生产效率。
  4. AI 算法能够预测市场趋势。
  5. AI 在自动驾驶汽车中扮演重要角色。
  6. AI 有助于个性化教育的发展。
  7. AI 机器人可以执行复杂的任务。
  8. AI 技术正在推动智能家居的普及。
  9. AI 在金融分析中发挥着关键作用。
  10. AI 技术正逐步应用于艺术创作。

「AI」之后出现「技」的概率大于其它字。这些字之间的概率关系,就是大模型训练时学到的。

用不严密但通俗的语言描述原理:

训练:
  1. 大模型阅读了人类说过的所有的话。这就是「机器学习
  2. 训练过程会把不同 token 同时出现的概率存入「神经网络」文件。保存的数据就是「参数」,也叫「权重
推理:
  1. 我们给推理程序若干 token,程序会加载大模型权重,算出概率最高的下一个 token 是什么
  2. 用生成的 token,再加上上文,就能继续生成下一个 token。以此类推,生成更多文字

Token 是什么?

  1. 可能是一个英文单词,也可能是半个,三分之一个
  2. 可能是一个中文词,或者一个汉字,也可能是半个汉字,甚至三分之一个汉字
  3. 大模型在开训前,需要先训练一个 tokenizer 模型。它能把所有的文本,切成 token

再深一点点

  • 这套生成机制的内核叫「Transformer 架构」
  • Transformer 是目前人工智能领域最广泛流行的架构,被用在各个领域
  • Transformer 仍是主流,但并不是最先进的
架构设计者特点链接
TransformerGoogle最流行,几乎所有大模型都用它OpenAI 的代码
RWKVPENG Bo可并行训练,推理性能极佳,适合在端侧使用官网RWKV 5 训练代码
MambaCMU & Princeton性能更佳,尤其适合长文本生成GitHub
Test-Time Training (TTT)Stanford, UC San Diego, UC Berkeley & Meta AI速度更快,长上下文更佳GitHub

目前只有 transformer 被证明了符合 scaling-law。

用好 AI 的核心心法

OpenAI 首席科学家 Ilya Sutskever 说过:

数字神经网络和人脑的生物神经网络,在数学原理上是一样的。

所以,我们要:把 AI 当人看

凯文·凯利在和孙志岗交流时,说了类似的观点:「和人怎么相处,就和 AI 怎么相处。」

  1. 用「当人看」来理解 AI
  2. 用「当人看」来控制 AI
  3. 用「当人看」来说服别人正确看待 AI 的不足

当什么人呢?

  1. 学习时当老师
  2. 工作时当助手
  3. 休闲时当朋友

这是贯彻整门课的心法,乃至我们与 AI 相伴的人生的心法。

划重点:使用大模型,首先要建立对象感。你是什么角色?Ta 是什么角色?

大模型应用产品架构

Agent 模式还太超前,Copilot 是当前主流。

实现 Copilot 的主流架构是多 Agent 工作流

  • 模仿人做事,将业务拆成工作流(workflow、SOP、pipeline)
  • 每个 Agent 负责一个工作流节点

大模型应用技术架构

大模型应用技术特点:门槛低,天花板高。

纯 Prompt

  • Prompt 是操作大模型的唯一接口
  • 当人看:你说一句,ta 回一句,你再说一句,ta 再回一句……

Agent + Function Calling

  • Agent:AI 主动提要求
  • Function Calling:AI 要求执行某个函数
  • 当人看:你问 ta「我明天去杭州出差,要带伞吗?」,ta 让你先看天气预报,你看了告诉 ta,ta 再告诉你要不要带伞

RAG(Retrieval-Augmented Generation)

  • Embeddings:把文字转换为更易于相似度计算的编码。这种编码叫向量
  • 向量数据库:把向量存起来,方便查找
  • 向量搜索:根据输入向量,找到最相似的向量
  • 当人看:考试答题时,到书上找相关内容,再结合题目组成答案,然后,就都忘了

Fine-tuning(精调/微调)

当人看:努力学习考试内容,长期记住,活学活用。

如何选择技术路线

面对一个需求,如何开始,如何选择技术方案?下面是个不严谨但常用思路。

其中最容易被忽略的,是准备测试数据

值得尝试 Fine-tuning 的情况:

  1. 提高模型输出的稳定性
  2. 用户量大,降低推理成本的意义很大
  3. 提高大模型的生成速度
  4. 需要私有部署

体验编程调用 OpenAI API

本课程主打语言是 Python,因为:

  1. Python 和 AI 是天生一对
  2. Python 是最容易学习的编程语言

安装 OpenAI Python 库

在命令行执行:

1
pip install --upgrade openai

发一条消息

体验给大模型注入新知识的代码竟如此简单。

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
26
27
28
29
30
from openai import OpenAI

# 加载 .env 文件到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())

# 初始化 OpenAI 服务。会自动从环境变量加载 OPENAI_API_KEY 和 OPENAI_BASE_URL
client = OpenAI()

# 消息
messages = [
{
"role": "system",
"content": "你是AI助手小瓜,是 AGIClass.ai 的助教。这门课每周二、四上课。" # 注入新知识
},
{
"role": "user",
"content": "周末上课吗?" # 问问题。可以改改试试
},

]

# 调用 GPT-4o-mini 模型
chat_completion = client.chat.completions.create(
model="gpt-4o-mini",
messages=messages
)

# 输出回复
print(chat_completion.choices[0].message.content)
作者

步步为营

发布于

2024-04-08

更新于

2025-03-15

许可协议