吴恩达 x Open AI ChatGPT ——如何写出好的提示词视频核心笔记
核心知识点脑图如下:
1、第一讲:课程介绍
要点1:
上图展示了两种大型语言模型(LLMs)的对比:基础语言模型(Base LLM)和指令调整语言模型(Instruction Tuned LLM)。
基础语言模型(Base LLM)
功能:基础语言模型能够预测下一个单词,这种预测是基于文本训练数据。
例子:图中提供了一个故事的开头:“Once upon a time, there was a unicorn that lived in a magical forest with all her unicorn friends(中文释义:从前,有一只独角兽和她所有的独角兽朋友住在魔法森林里)”,这展示了模型如何根据给定的文本继续生成故事。问答能力:它能够回答基础的问题,例如“法国的首都是什么?”,但它可能会产生问题文本,如有害输出,这些输出与基础语言模型的性质有关,因为它们仅基于预测下一个最可能的单词,而不是遵循特定的指令。
指令调整语言模型(Instruction Tuned LLM)
功能:这种模型试图遵循指令,它通过在指令上进行微调(fine-tuning,周鸿祎大佬经常讲),并在尝试遵循这些指令时进行优化。
微调方法:使用RLHF(Reinforcement Learning with Human Feedback,中文释义:人类反馈强化学习)进行微调,即结合强化学习和人类反馈。

三H原则:帮助(Helpful)、诚实(Honest)、无害(Harmless)。
例子:当问到“法国的首都是什么?”时,指令调整的模型会更准确地回答“法国的首都是巴黎”。
总结来说,图中的主要区别在于基础模型侧重于文本数据的下一个词预测,而指令调整模型则侧重于理解和遵循指令,提供更准确、更有用、更安全的输出。
2、第二讲:使用准则
要点1:好提示词的第一个原则——写出清晰且准确的提示
指令必须清晰的三个核心原因:
核心一——避免歧义:清晰的指令让机器没有猜测的空间,可以直接执行。
核心二——提高效率:清晰的指令可以让机器快速理解并采取行动,节约时间。
核心三——确保结果准确:指令清晰可以确保机器提供的结果是我们所期待的。
要点2:好提示词的第一个原则——给大模型思考的时间
要点2所说的“给大模型思考的时间”,其实是在指导我们如何更高效地与大型语言模型(如我)进行交互。
下面是三个核心要点的解读:

(1)等待模型回应:
模型需要时间处理你的请求和生成回答,就像你向朋友提问后要等待他们思考并回答一样。
(2)避免打断:
在模型回答之前不要急于提出新问题,这就像不打断别人说话,给对方完成表达的机会。
这个一般模型也不允许。
(3)逐步提问:
如果有复杂的问题,可以分步骤提问,让模型逐一解决,就像解难题一样,一步一个脚印来解答。
这是最核心的,大问题务必精准拆解成小问题,且根据回复逐步调优。
3、第三讲:提示词不是一步到位的,而通过反复迭代逐步完善的。
吴恩达老师“这幅图展示了一个名为“迭代式提示开发”的循环流程图,它代表一个反馈循环,用于改进和完善提示(可能是编程、数据输入或任何需要精确指示的场合)的质量。流程由四个主要部分组成:

1、Idea(想法): 这是流程的开始阶段,你需要有一个初始想法或设计,这将成为你的起始点。
2、Implementation (code/data) Prompt(实现(代码/数据)提示): 根据想法,你会创建一个初步的提示,如果是编程领域,可能是编写代码或准备数据输入。
3、Experimental result(实验结果): 使用你的提示进行实验后,你将获得某些结果,这些结果可能会或不会符合你的预期。
4、Error Analysis(错误分析): 如果结果不符合预期,你需要进行错误分析,查找为什么会出现这样的结果,可能是提示不够清晰、具体或存在逻辑错误。
这个过程是迭代的,意味着你会不断重复这个循环,每一次都根据之前的反馈来调整和改进你的提示,直到实验结果符合你的预期。
图下方的“Prompt guidelines”列出了优化提示时应遵循的指导原则:
1、Be clear and specific(要清晰和具体): 提示需要有足够的详细信息,避免歧义——这点反复强调过了。
2、Analyze why result does not give desired output(分析为什么结果不符合预期输出): 当结果不如意时,深入分析原因(模型会分析,咱们也不要坐等,要结合经验进行分析),理解导致结果偏差的因素。
3、Refine the idea and the prompt(改进想法和提示): 根据分析结果调整你的想法和提示。
4、Repeat(重复): 不断重复这一过程(反复迭代),每次都尝试提高提示的有效性。
这个流程是设计思维和敏捷开发的典型,强调持续改进和适应性。
4、第四讲:最兴奋的功能——文本总结
为大段文本形成摘要,以便我们快速的获取信息。
新版GPT4最多能让用户输入3万2千token(大概50页英文文字长度,网上说法大约25000字)。
5、第五讲:模型推理:
省去了早期开发需要自己训练模型的工作,现在一个API搞定!
6、第六讲:格式转化 Transforming
Html 转 JSON等各种转换:原来咱们用复杂的正则,现在大模型API快速搞定。
校对写的所有内容:论文、评论、文稿等。
支持各种语言的翻译
GPT4 的图片转文本,文本转图片功能也非常强大。

7、第7讲:文本扩写
Chatgpt可以作为头脑风暴的伙伴,基于我们的提示词展开文本扩写。
建议负责任的使用,比如:不要生成垃圾邮件。
可用于文档助理,比如:邮件助理。

8、第8讲:自定义聊天机器人
用途举例:
AI 客服助理;
餐厅AI接单员
等等......
注意:角色的设定很重要。
9、小结
9.1 写出好的提示词的两个核心要点
1、写出清晰和具体指令的重要性
2、给予模型足够的时间来“思考”。
9.2 迭代式提示开发
这是一种通过不断优化和细化提示来改进模型响应的方法。
9.3 模型的几项能力
总结
推断
转换
扩展信息。
这些能力在构建聊天机器人时尤为重要,它们使得机器人能够处理各种任务,从理解和回应用户输入到生成新的内容。
模型非常有趣,可以放心去玩!!——咱们就是得多用,才能知道怎么更好得使用用!

10、中英文字母视频地址
https://www.bilibili.com/video/BV1s24y1F7eq
相关文章:
吴恩达 x Open AI ChatGPT ——如何写出好的提示词视频核心笔记
核心知识点脑图如下: 1、第一讲:课程介绍 要点1: 上图展示了两种大型语言模型(LLMs)的对比:基础语言模型(Base LLM)和指令调整语言模型(Instruction Tuned LLM࿰…...
JVM从1%到99%【精选】-【初步认识】
目录 1.java虚拟机 2.JVM的位置 3.代码的执行流程 4.JVM的架构模型 5.JVM的生命周期 6.JVM的整体结构 1.java虚拟机 Java虚拟机是一台执行Java字节码的虚拟计算机,它拥有独立的运行机制,其运行的Java字节码也未必由Java语言编译而成。JVM平台的各种语言可以共享Java…...
pdf转图片(利用pdf2image包)
参考: pdf2image pip install pdf2image代码: from pdf2image import convert_from_path, convert_from_bytes import osoutput_folder ./xx/ dpi_value 600 pdf_start_page 1 # pdf显示的第一页 start_page 1 # 真实页码 prex # 图像前缀def to_…...
SwiftUI的转场动画
SwiftUI的转场动画 记录一下SwiftUI中的一些弹窗动画 import SwiftUIstruct TransitionBootCamp: View {State var showView falselet screenWidth UIScreen.main.bounds.widthlet screenHeight UIScreen.main.bounds.heightvar body: some View {ZStack(alignment: .botto…...
Trust Region Policy Optimization (TRPO)
Trust Region Policy Optimization (TRPO) 是一种强化学习算法,专门设计来改善策略梯度方法在稳定性和效率方面的表现。由 John Schulman 等人在 2015 年提出,TRPO 的核心思想是在策略优化过程中引入一个信任区域(trust region)&a…...
消息服务--Kafka的简介和使用
消息服务--Kafka的简介和使用 前言异步解耦削峰缓存1、消息队列2、kafka工作原理3、springBoot KafKa整合3.1 添加插件3.2 kafKa的自动配置类3.21 配置kafka地址3.22 如果需要发送对象配置kafka值的序列化器3.3 测试发送消息3.31 在发送测试消息的时候由于是开发环境中会遇到的…...
【c++11线程库的使用】
#include<iostream> #include<thread> #include<string> using namespace std; void hello(string msg) { for (int i 0; i < 1000; i) { cout << i; cout << endl; } } int main() { //1.创建线程 thread …...
无限debugger的几种处理方式
不少网站会在代码中加入‘debugger’,使你F12时一直卡在debugger,这种措施会让新手朋友束手无策。 js中创建debugger的方式有很多,基础的形式有: ①直接创建debugger debugger; ②通过eval创建debugger(在虚拟机中…...
数据库基础理论知识
1.基本概念 数据(Data):数据库存储的基本对象。数字、字符串、图形、图像、音频、视频等数据库(DB):在计算机内,永久存储、有组织、可共享的数据集合数据库管理系统(DBMS):管理数据库的系统软件数据库系统(DBS):DBDBMSDBADBAP 数…...
华为OD机试真题-模拟目录管理-2024年OD统一考试(C卷)
题目描述: 实现一个模拟目录管理功能的软件,输入一个命令序列,输出最后一条命令运行结果。 支持命令: 1)创建目录命令:mkdir 目录名称,如mkdir abc为在当前目录创建abc目录,如果已存在同名目录则不执行任何操作。此命令无输出。 2)进入目录命令:cd 目录名称, 如cd …...
yield代码解释
目录 我们的post请求爬取百度翻译的代码 详细解释 解释一 解释二 再说一下callback 总结 发现了很多人对存在有yield的代码都不理解,那就来详细的解释一下 我们的post请求爬取百度翻译的代码 import scrapy import jsonclass TestpostSpider(scrapy.Spider):…...
C#四部曲(知识补充)
Unity跨平台原理 .Net相关 只要编写的时候遵循.NET的这些规则,就能在.NET平台下通用 各种源码→根据.NET规范编写→(虚拟机)生成CIL中间码(保存在程序集中)→转成操作系统原代码 跨语言← 跨平台↓ Unity跨平台原理(Mono) c#脚本→MonoC#编…...
Vue中的数据交互有几种方式
1. 单向数据流: Vue中的数据流是单向的,从父组件传递到子组件。父组件可以通过props将数据传递给子组件,子组件通过props接收并使用这些数据。这种方式适用于父子组件之间的简单通信。 2. 事件: 子组件可以通过触发自定义事件来…...
2.MySQL中的数据类型
整数类型: tinyint(m): 1个字节 范围(-128~127) 常用:性别 0和1表示性别;状态 0和1表示 int(m): 4个字节 范围(-2147483648~2147483647) 常用:数值 数值类型中的长度m是值显示长度,只有字段指定zerofill时有用 例如…...
身份证查询真伪-三要素查验-ios身份证实名认证接口调用
身份证实名认证接口联网核验是实名认证的关键一步,通过翔云OCR识别出的身份证信息,联网上传全国人口数据库,通过比对查找,确认人口数据库是否有身份证号和姓名匹配的信息,如果有那就确认身份证是真的,如果没…...
@EnableWebMvc介绍和使用详细demo
EnableWebMvc是什么 EnableWebMvc 是 Spring MVC 中的一个注解,它用于启用 Spring MVC 框架的基本功能,以便你可以使用 Spring MVC 提供的特性来处理 Web 请求。 通常情况下,在基于 Spring Boot 的应用中,并不需要显式地使用 Ena…...
VC-旅游系统-213-(代码+说明)
转载地址: http://www.3q2008.com/soft/search.asp?keyword旅游系统 旅游信息管理系统开题报告 一、研究目的 旅游信息管理系统能帮助旅行社在游客的市场开拓、游客的信息管理、客户服务等方面进行综合处理。使旅行社能够准确的掌握客户的市场动态,充分了解对客户…...
重学SpringBoot3-ErrorMvcAutoConfiguration类
更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-ErrorMvcAutoConfiguration类 ErrorMvcAutoConfiguration类的作用工作原理定制 ErrorMvcAutoConfiguration示例代码1. 添加自定义错误页面2.自定义错误控…...
剑指offer面试题34 丑数
考察点 空间换时间提效知识点 题目 分析 这里面其实用到了一点点的数学知识,丑数的定义是只包含2,3,5因子的数。现在要求第1500个丑数,最简单的办法就是从数字1开始遍历,依次判断每个数字是不是丑数,如果…...
C++ std::list的merge()使用与分析
看到《C标准库第2版》对list::merge()的相关介绍,令我有点迷糊,特意敲代码验了一下不同情况的调用结果。 《C标准库第2版》对list::merge()的相关介绍 list::merge()定义 merge()的作用就是将两个list合并在一起,函数有2个版本:…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
