大模型

年份 历史
1946 通用计算机
1997 国际象棋
2016 alphaGo 战胜了世界冠军
2021 语音识别,图像识别进入日常生活
2022 GPT

GPT 能干什么?

从AI 的视角,怎么定义我遇到的亚业务问题 首先,我们从三个角度来看待一个业务问题:

  1. 输人是什么:文本、图像、语音信号
  2. 输出是什么:标签、数值、大段文字(包括代码、指令等)…
  3. 怎么量化衡量输出的对错/好坏?

3.2、从 AI 的视角,怎么定义我遇到的业务问题

首先,我们从三个角度来看待一个业务问题:

  1. **输人是什么:**文本、图像、语音信号…
  2. **输出是什么:**标签、数值、大段文字(包括代码、指令等)…
  3. 怎么量化衡量输出的对错/好坏?

业务问题分类

绝大多数业务问题,都可以归入如下至少一类。

分类问题

笼统的说,输出是标签。输出的标签是个有限集。输出的标签是预先定义好的有限集。

例如:分析一段评论是正向还是负向,是典型的分类问题。输出是两个标签之一:“正向”或“负向”。

更复杂的分类,比如,输入一篇新闻,输出是“政治”、“经济”、“体育”、“娱乐”、“科技”之一(或多个标签)。

聚类问题

没法提前规定有多少种标签,只能把同一类事物聚合在一起,到底能聚出多少类,是数据本身决定的。

例如:自动收集客户经常问到的问题。(我们无法预知客户有多少问题,只能把同一个意思的问题聚合在一起)

回归问题

输出是一个数值,更重要的是,评价输出好坏的标准是误差大小,而不是二元的对错。

举例:跟据专车司机每天工作的时段、时长、跑的公里数,预估他一天的净利润

决策问题

输出是连续的一系列动作,每一步动作都有代价或收益,每一步的动作本身没有对错,而是要最大化最终的收益

举例:打游戏、下棋、无人驾驶、对话、量化投资

概率密度估计

超纲了,本门课不讲。提一下就是为了严谨。

复杂问题的两个视角

  • 信息抽取,实体识别,内容生成本质上都是分类问题
  • 在 ChatGPT 时代,上述很多问题都可以从文本生成的角度解决
划重点:
  1. 把 ChatGPT 看做是一个函数,给输入,生成输出
  2. 任何业务问题,都可以用语言描述,成为 ChatGPT 的输入,就能生成业务问题的结果
  3. 实际生成中,算法工程师通常需要根据业务know-how将上述基本问题串起来。理解问题本质,对拆解任务有很大帮助!

大模型的原理以及GPT 是如何生成结果

五、它是怎么生成结果的?

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

alt text

[[prompt.md]]

开发大模型的提效利器

chatALL

代码示例

 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
31
32
33
34
import openai
import os

# 加载 .env 文件
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())

# 从环境变量中获得你的 OpenAI Key
openai.api_key  = os.getenv('OPENAI_API_KEY')

# 模型列表
models = openai.Model.list()

for model in models.data:
    print(model.id)

# 消息格式
messages=[
    { 
        "role": "system", 
        "content": "你是AI助手小瓜.你是AGIClass的助教。这门课每周二、四上课。"
    },
    { 
        "role": "user", 
        "content": "你是干什么的?什么时间上课"
    },
    
]

# 调用ChatGPT-3.5
chat_completion = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages=messages)

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

大语言模型 (LLM) :GPT ,transformer

大语言模型(Large Language Model,简称LLM)是近年来自然语言处理(NLP)领域的重要进展之一。它指的是那些具有庞大参数规模和强大学习能力的语言模型,能够理解和生成人类语言。在LLM中,GPT(Generative Pre-trained Transformer)和Transformer是两个关键的概念和技术。

GPT GPT,全称是Generative Pre-trained Transformer,是一种基于Transformer架构的生成式预训练语言模型。GPT模型通过在海量的文本数据上进行无监督学习,捕捉语言的统计规律和模式,从而具备了强大的语言生成和理解能力。GPT模型能够完成多种NLP任务,如文本生成、问答、摘要等,并且在很多任务上取得了显著的性能提升。

GPT模型的核心是Transformer架构,它采用自注意力机制(self-attention mechanism)来处理输入的文本序列。这种机制使得模型能够捕捉文本中任意位置之间的依赖关系,从而更好地理解文本的含义。此外,GPT模型还采用了预训练-微调(pre-training and fine-tuning)的训练策略,先在大量无标签数据上进行预训练,然后在特定任务的有标签数据上进行微调,以实现对不同任务的适应。

Transformer Transformer是一种基于自注意力机制的神经网络架构,最初被用于机器翻译任务,后来被广泛用于各种NLP任务。Transformer模型由编码器(encoder)和解码器(decoder)两部分组成。编码器负责将输入的文本序列转换为一系列向量表示,而解码器则根据这些向量表示生成输出文本。

在Transformer中,自注意力机制是关键所在。它通过对输入序列中的每个位置进行加权求和,计算出一个表示该位置与其他位置之间关系的向量。这种机制使得模型能够捕捉到文本中的长距离依赖关系,并且具有更强的并行计算能力。因此,Transformer模型在处理长文本和大规模数据集时表现出色。

关系与比较 GPT和Transformer之间存在密切的关系。GPT模型采用了Transformer架构作为其基础,利用Transformer的自注意力机制和预训练-微调策略来提升语言生成和理解的能力。可以说,GPT是Transformer架构在自然语言生成领域的一种成功应用。

与传统的循环神经网络(RNN)和卷积神经网络(CNN)相比,Transformer和GPT具有更强的表示能力和更高的计算效率。它们能够更好地捕捉文本中的上下文信息和语义关系,因此在各种NLP任务中取得了更好的性能。

总结 大语言模型(LLM)是自然语言处理领域的重要进展,其中GPT和Transformer是两个关键的技术。GPT是一种基于Transformer架构的生成式预训练语言模型,具有强大的语言生成和理解能力。Transformer则是一种基于自注意力机制的神经网络架构,为NLP任务提供了强大的表示能力和计算效率。这两种技术的结合使得大语言模型在处理自然语言任务时取得了显著的进步。

提示词工层 (Prompt Engineering)

也叫「指令工程」。Prompt就是你发给ChatGPT的指令,比如「讲个笑话」、ython编个贪吃蛇游戏」、「给男/女朋友写封情书」等 ·貌似简单,但意义非凡 excalidraw ChatGPT ·Prompt是AGl时代的「编程语言」 别复制 ·Prompt工程是AGl时代的「软件工程」 ·提示工程师是AG引时代的「程序员」 ·学会提示工程,就像学用鼠标、键盘一样,是AG引时代的基本技能 ·专门的「提示工程师」不会长久,因为每个人都要会「提示工程」

Prompt调优

  • 从人的视角:说清楚自己想要什么
  • 从机器视角: 你详细说说
  • 从模型视角: 不是每种说法它都能完美理解,需要尝试和技巧

Prompt构成

  • 指示: 对任务描述
  • 上下文: 给出任务相关的其他背景信息
  • 例子: 实验证明对输出 正确性有帮组
  • 输出: 任务的输入信息; 在提示词中精确标识出输入
  • 输出格式描述,方便后续自动解析模型输出结果,比如 (JSON,XML)

ChatGPT插件

function call 功能

它允许 ChatGPT 生成参数,并以结构化的数据类型与自定义函数进行交互,生成稳定的 JSON 输出。 最重要的是,它能够从自然语言中提取相应的函数参数,方便我们进行函数调用,而无需将具体执行函数传递给 GPT。这为我们的对话提供了更灵活的方式。

首先,我们可自行编写或使用 langchain 来实践一下简单的函数调用。

参考文档

gpt function call

GPT编程插件

  • tabnine 代码不全
  • cursor Ai first ide ,被逼开源
  • codeGeex 国产,ide 插件免费使用
  • bito 免费,基于gpt3.5 , cli工具值得用

大纲解读

模块 目的 原理 实践 认知
AI 大模型基础介绍 对大模型有直观的、基础的了解,以展开后续课程学习 大模型最基础的原理 搞定环境搭建和工具的使用 大模型并不神奇,也不神秘
Prompt Engineering 操纵大模型的基础方法 让 prompt 更大概率生效的原理 使用 prompt 和调用 OpenAI API 程序思维从确定性到模糊性的变化
Function Calling & Plugins Prompt 和编程结合的当前最高级手段 Fine-tuning 比 prompt 更稳定 使用 Function Calling 解决问题 人机接口和机器接口的演化方向
AI 编程 学会用 AI 辅助编程,助力接下来的学习 AI 编程也是 prompt engineering 使用 AI 编程解决问题 从 AI 编程看提示工程和 AI 能力的天花板
LangChain 用 LangChain 开发大模型应用 什么是 embeddings 使用 LangChain 开发应用 各种大模型应用的技术套路
Semantic Kernel LangChain 之外的另一个选择 - 使用 Semantic Kernel 开发应用 Prompt 和代码分离的思想
Fine-tuning 学会大模型应用技术的天花板 机器学习基础 训练出自己的独特大模型 大模型、GPU 选型
AI 产品设计 独立完成 AI 产品设计,成为 AI 全栈 商业、美学、用户体验的基本原理 设计商业模式,绘制原型图,快速做出 demo 什么是好的产品。技术含量高不代表产品好
业务沟通锦囊 没有产品经理帮忙,也能直面业务同事 与人沟通的基本原理 高效收集需求和反馈 做得好,多数时候确实不如说得妙
AI 绘画 AI 绘画,陶冶情操 文生图的原理 使用 prompt 绘画 -

这节课会带给你

  1. AI 产品和传统产品研发流程的区别
  2. 如何找到有商业价值的产品创意
  3. 如何快速验证想法

AI 率先改变的是软件工程界。产品开发流程会发生下面的变化。

主要改变:

  1. 需求阶段开始调试 prompt,不动代码的情况下验证可行性
  2. 后续迭代,prompt 也是独立维护,不和代码耦合
  3. 借助工具快速搭出 demo,验证需求
  4. 全栈开发

常见商业模式

模式 说明 2C 产品 2B 产品
免费模式 免费使用,广告/增值服务变现 微信、抖音、王者荣耀、ChatGPT、Bing Chat GitHub、钉钉、飞书
计费模式 按次/按量/按时长收费 滴滴打车、共享单车、共享充电宝 云服务器、云数据库、云存储
订阅模式 包月、包季、包年 网易云音乐、爱奇艺、ChatGPT Plus、GitHub Copilot GitHub Copilot
一次性付费 购买一次,终身使用 Alfred、塞尔达传说 Confluence、JIRA、Windows、外包项目
思考:为什么 AI 产品采用订阅模式的更多?

适合独立开发者/AI 的模式

  1. 不要烧钱。如果用户/客户不肯为你的产品掏钱,说明需求选错了
  2. 2B 外包项目,尽量一次性付费,且做好只收到首付款的准备
  3. 订阅制最香
    1. 每月有固定收入,增长压力不大(很多好产品死于增长)
    2. 连续包月,很多人忘记退订……(但在中国较难获得权限)

支付宝 周期扣款的准入条件

  1. 在开通时,商家需要在线提交营业执照,注册资本大于等于 100 万人民币。
  2. 企业无经营风险,包含但不限于工商信息可查询到的风险信息:行政处罚、股权冻结、股权质押、动产抵押、动产抵押物等。

微信支付的门槛更高,参考 「微信支付——扣款服务(委托代扣)最全资料整理」 。基础条件:

  1. 商户需要提供服务电话(要求通过微信支付认证,并展示在账单详情页中)
  2. 接入商户一个月内整体客诉已经妥善处理并反馈平台,近一个月客诉小于万分之一(含主体)
  3. 商户主体无违规
  4. 接入代扣业务需要有一定的交易量要求,3 个月以上,主动支付的日交易笔数超过 1000 笔

要融资吗?

请相信:天下没有免费的午餐

只在以下情况考虑融资:

  1. 当有个「改变世界」的想法,无法低成本验证,必须先烧钱时,拉风投是最好的选择。保护好自己的底线
  2. 但模式已经验证,需要资金快速扩张时,果断融资。但,优先考虑正规借贷,而不是风投
  3. 当需要投资人除了钱以外的其它资源时,比如品牌、生态、渠道、人脉等

切记:没有融资经验,别贸然融资。找有经验的人帮忙

思考:你列出的种子群体,哪些付费能力较强?