首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用 ChatGPT 的 7 个技巧 | Prompt Engineering 学习笔记

概述 前段时间在 DeepLearning 学了一门 Prompt 的课程,吴恩达本人授课,讲的通俗易懂,感觉受益匪浅,因此在这里总结分享一下我的学习笔记。 为什么要学习 Prompt ?...HTML 等格式文本,甚至是图片,视频等 避开 AI 的局限:喜欢编造事实,这是目前 AI 已知的缺陷,但有效的 Prompt 可以帮助你有效的避开这个已知,但目前还无法解决的缺陷 不再迷信完美的 Prompt...第二章:Guidelines 指南 第二章主要介绍以下内容: 如何使用 ChatGPT 进行结构化输出,例如 JSON,HTML,XML 等等 如果使用 Prompt 有效的避免 AI 虚构事实的方法(...总结 Conslusion 吴恩达的这门 Prompt Engineering 课程,主要讲解了使用 Prompt 的基本原则,还有 LLM 大模型在各个场景下的使用方式。...关于使用 Prompt 要记住以下原则: 清晰具体的指令 足够的上下文和足够多的对话 提出展示信息源,避免 AI 编造事实 使用结构化的输出方式,例如 JSON, XML,HTML 等,这是 AI 擅长的输出方式

60610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    在langchain中使用带简短知识内容的prompt template

    没错,就是可以使用prompt中的信息做知识库,让chatgpt从这个给定的知识库中查询出有用的东西,然后再用自己的语言组织起来,返回给用户。...在langchain中使用FewShotPromptTemplate实际上,上面的问题和答案都是promot内容的一部分,所以可以保存在PromptTemplate中。...这里输出的内容和我们最开始的内容是一样的。使用ExampleSelector在上面的例子中,我们实际上是把所有的shot examples都提交给了大语言模型,但实际上并不是必须的。...这里我们使用SemanticSimilarityExampleSelector,它的作用是根据语义的相似度来选择examples:from langchain.prompts.example_selector...ExampleSelector和FewShotPromptTemplate结合起来一起使用:prompt = FewShotPromptTemplate( example_selector=example_selector

    65210

    在langchain中使用带简短知识内容的prompt template

    没错,就是可以使用prompt中的信息做知识库,让chatgpt从这个给定的知识库中查询出有用的东西,然后再用自己的语言组织起来,返回给用户。...在langchain中使用FewShotPromptTemplate 实际上,上面的问题和答案都是promot内容的一部分,所以可以保存在PromptTemplate中。...这里输出的内容和我们最开始的内容是一样的。 使用ExampleSelector 在上面的例子中,我们实际上是把所有的shot examples都提交给了大语言模型,但实际上并不是必须的。...这里我们使用SemanticSimilarityExampleSelector,它的作用是根据语义的相似度来选择examples: from langchain.prompts.example_selector...ExampleSelector和FewShotPromptTemplate结合起来一起使用: prompt = FewShotPromptTemplate( example_selector=example_selector

    57740

    正则表达式的使用

    正则表达式在php中的使用 php中支持正则表达式的函数 preg_filter 执行正则表达式搜索和替换 preg_grep 返回匹配模式的数组条目 preg_last_error...执行一个正则表达式搜索并且使用一个回调函数进行替换 preg_replace_callback 执行一个正则表达式搜索并且使用一个回调进行替换 preg_replace 执行一个正则表达式的搜索和替换...( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。 匹配前面的子表达式零次或多次。要匹配 字符,请使用 \。...匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +。 . 匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 . 。 [ 标记一个中括号表达式的开始。...^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。 { 标记限定符表达式的开始。要匹配 {,请使用 {。

    92320

    使用CoT 的 Prompt方式利用 LLM 设计测试用例实践

    /v2.1/chat" # v2.0环境的地址ws(s)://spark-api.xf-yun.com/v2.1/chat text =[] Prompt 内容 def getText(role...of Thought 的 prompt ep_message=f"""{delimiter}等价类测试用例设计方法是把输入的参数域划分成若等价类,这些等价类包含了有效等价类和无效等价类,...无效等价类是指对于程序的规格说明来说是不合理的,无意义的输入数据构成的集合,利用无效等价类可检验程序是否有效的避免了规格说明中所规定的功能以外的内容。...特别注意,一条测试用例可以覆盖多个有效等价类,一条测试用例只能覆盖一个无效等价类{delimiter} 使用等价类测试用例设计方法需要经过如下几步:{delimiter}...:{delimiter}" user_message = f"""被测系统是地铁车票自助购票软件系统需求,系统只接收 5元或10元纸币,一次只能使用一张纸币,车票只有两种面值 5 元或者 10

    61420

    js中三种弹窗的简单使用alert、confirm、prompt

    1、alert():显示带有一条指定消息和一个 OK(确认) 按钮的警告框。...:用于显示一个带有指定消息和 OK 及取消按钮的对话框。...一般作为判断条件 写在script标签中 括号中的内容为字符串和整型 点击确认返回true,点击取消返回false 如: if(confirm("您是否要进入?"))...{ } 火狐浏览器显示样式如下: 谷歌浏览器显示样式如下: 3、prompt(?,?):用于显示可提示用户进行输入的对话框。...写在script标签中 第一个问是显示的文本,第二个问是输入框中的默认值(可不写) 点击确认返回输入框中的内容,取消返回null 如: var info = prompt("请输入您的姓名:"); 火狐浏览器显示样式如下

    9.3K20

    Prompt learning 教学:prompt基本原则以及使用场景技巧助力你更好使用chatgpt,得到你想要的答案

    Prompt learning 教学[基础篇]:prompt基本原则以及使用场景技巧助力你更好使用chatgpt,得到你想要的答案 如果你想系统学习 如果你对 AI 和 Prompt Engineering...基础篇更多的会从用户的角度教你如何使用 AI 产品,或者换句话说,会讲更多 prompt 的内容。...2.prompt基本原则 在和 ChatGPT 对话时,亦或者在使用和设计 prompt 时,有以下几个原则与建议。记住这几个原则,能让你写出更好的 prompt。...如果你是通过 API 或者 OpenAI Playground 的方式使用,则建议你先使用最新的模型测试。 2.1 Prompt 里最好包含完整的信息 这个是对结果影响最大的因素。...ChatGPT Prompt Engineering 课程中,还提到,你可以使用其他特殊符号来分割文本和 prompt,比如, 等,课程中的案例是这样的(注意这个是 python

    52130

    中缀表达式转换为后缀表达式(栈的使用)

    中缀表达式如1*2+(2-1), 其运算符一般出现在操作数之间, 因此称为中缀表达式,也就是大家编程中写的表达 式。...编译系统不考虑表达式的优先级别, 只是对表达式从左到右进行扫描, 当遇到运算符时, 就把其前面的两 个操作数取出, 进行操作。...为达到上述目的, 就要将中缀表达式进行改写,变为后缀表达式 如上面的表达式 1*2+(2-1), 就变为12*21-+; 后缀表达式中不含有括号, 且后缀表达式的操作数和中缀表达式的操作数排列次序完全相同...我们实现的时候,只需要用一个特定工作方式的数据结构(栈),就可以实现。 其中stack op;用来存放运算符栈。数组ans用来存放后缀表达式。...如果扫描结束,栈中还有元素,则依次弹出加到数组ans的末尾,就得到了后缀表达式。

    40610

    ETL(二):表达式组件的使用

    4、ETL开发流程如下 整个ETL开发流程的详细步骤,可以参考我的另外一篇文章:https://blog.csdn.net/weixin_41261833/article/details/103625414...④ 在edw用户下查看该表(此时只是有表结构,没有数据); 3)创建映射 ① 创建映射 ② 将源表和目标表都拖拉到右侧灰色区域; ③ 在源表和目标表之间添加一个“表达式转换”...组件; ④ 双击“表达式转换组件”,点击“端口”,出现如下界面后,便可进行相应字段的转换操作了; ⑤ 将first_name与last_name合并为一个字段name; 对图中的...,界面左下角出现如下界面,表示创建的映射没有问题; 4)定义任务 ① 在定义任务之前,先点击连接–>再点击关系; ② 定义一个连接源数据库的连接对象(数据来源); ③ 定义一个连接目标数据库的连接对象...⑥ 上述操作会自动帮我们打开M客户端; M客户端主要是用于监控任务的,详细的日志信息可以帮助我们找出自己在哪里犯过错误。

    33230

    java中Lambda表达式的使用

    一、概述 1、什么是Lambda表达式 Lambda 表达式是一种匿名函数,简单地说,它是没有声明的方法,也即没有访问修饰符、返回值声明和名字。 它可以写出更简洁、更灵活的代码。...方法引用是 lambda 表达式的语法糖,任何用方法引用的地方都可由lambda表达式替换,但是并不是所有的lambda表达式都可以用方法引用来替换。...Apple的静态方法compareByWeight正好符合Comparator函数式接口,所以可以使用: Apple::compareByWeight 静态方法引用来替代lambda表达式 public...compareByWeight一定是某个实例调用的,就是lambda表达式的第一个参数,然后lambda表达式剩下的参数作为 compareByWeight的参数,这样compareByWeight正好符合...lambda表达式的定义。

    2.4K20

    Composer 版本约束表达式的使用

    那在 composer 使用过程中我们通常会有这几种写法: 不限定版本 极不推荐这样玩哦 使用 * 号来表示版本的时候,composer 会根据你配置中的 minimum-stability 的值情况来决定安装最新的...使用 dev- 前缀加分支名 我们在自己开发一个包的时候,经常会用 dev-master 或者 dev-develop 来指定版本,它表示使用该分支下最新的提交。...并且 < 1.2.0,则写成: "require": { "overtrue/wechat": "~1.1.15" } 所以,你应该看出规律了,~ 的作用是允许表达式中最后一位变到最大值...这样的使用场景并不多,根据你的情况来调整用法就好。 最后就是使用具体版本号 使用 =1.2.34 或者 1.2.34 都是指定了具体的版本号, composer 不会考虑检查新版本来安装。...总结 无论你是包的作者,还是使用者,正确使用版本是非常重要的,尤其对于有一定使用量的包作者来讲,严格遵守语义化版本的规范是对你的用户负责。

    1.1K30

    说说正则表达式的使用

    今日分享:正则表达式 一:正则表达式的定义及用途 正则表达式是一种特殊的字符串,字符串中的每个字符都含有特定的意义。...使用者通过将正则中不同的字符组合成不同的字符串,以便用它来匹配(筛选或提取)文本中的目标文本。 其用途主要就是匹配文本。...就编写Python爬虫来说,当获取到目标网页中的链接文本时,要想按照我们的需要提取出数据,就可以通过比对要获取的目标数据来编写相对应的正则表达式。...二:正则表达式的基本语法 在这里为使大家详细了解正则的基础知识,小编从网上搜索了一个较为详细的知识图,小编就不在重复造轮子了 图片来源于网络,请大家访问图片右下角的原创地址 三:正则的优缺点 正则表达式的难点在于复杂多变没有统一格式...四:小编建议 首先大致熟悉正则的基本知识,不必完全记下,当需要使用时在看即可。

    1.3K80

    Prompt learning 教学基础篇:prompt基本原则以及使用场景技巧助力你更好使用chatgpt,得到你想要的答案

    Prompt learning 教学基础篇:prompt基本原则以及使用场景技巧助力你更好使用chatgpt,得到你想要的答案如果你想系统学习如果你对 AI 和 Prompt Engineering 不是很了解...基础篇更多的会从用户的角度教你如何使用 AI 产品,或者换句话说,会讲更多 prompt 的内容。...2.prompt基本原则在和 ChatGPT 对话时,亦或者在使用和设计 prompt 时,有以下几个原则与建议。记住这几个原则,能让你写出更好的 prompt。...如果你是通过 API 或者 OpenAI Playground 的方式使用,则建议你先使用最新的模型测试。2.1 Prompt 里最好包含完整的信息这个是对结果影响最大的因素。...ChatGPT Prompt Engineering 课程中,还提到,你可以使用其他特殊符号来分割文本和 prompt,比如, 等,课程中的案例是这样的(注意这个是 python

    63550

    Java8 Lambda表达式.md什么是λ表达式λ表达式的类型λ表达式的使用其它相关概念

    Java代码中,对于非常简单的逻辑(比如比较list中element大小),可以使用lambda表达式实现,但是复杂的逻辑千万不要用lamdda表达式,理由只要一个就够了—代码难以维护。...λ表达式的使用 λ表达式用在何处 λ表达式主要用于替换以前广泛使用的内部匿名类,各种回调,比如事件响应器、传入Thread类的Runnable等。...,Oracle并没有简单地使用内部类去实现λ表达式,而是使用了一种更动态、更灵活、易于将来扩展和改变的策略(invokedynamic)。...λ表达式与集合类批处理操作(或者叫块操作)** 上文提到了集合类的批处理操作。这是Java8的另一个重要特性,它与λ表达式的配合使用乃是Java8的最主要特性。...Consumer类型,它们都是函数接口,所以可以使用λ表达式。

    1.7K30

    Composer进阶使用之版本约束表达式的使用

    关于这个问题之前是没有注意到的,在阅文面试的时候问到了,回来之后看了一下 可能有很多人和我一样,不是那么清楚各种写法到底是啥意思,比如波浪号~,折音号^ 在了解约束表达式之前,先要了解一下语义化版本 版本格式...,所以包是稳定的,也就是可以安全更新的 你可以写成:~1.2 如果你希望次版本都不要更新,只允许修订版本(补丁版本)的变化,>= 1.1.15并且< 1.2.0 则写成:~1.1.15 所以,~的作用是允许表达式中最后一位变到最大值...= 你可以定义多个范围,使用空格 或者逗号,表示逻辑上的与,使用双竖线||表示逻辑上的或。...其中与的优先级会大于或 这样的使用场景并不多,根据你的情况来调整就好 精确版本 可以指定具体的版本,告诉Composer只能安装这个版本。...原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:Composer进阶使用之版本约束表达式的使用

    89231

    python 中正则表达式的使用

    正则表达式的定义 正则表达式(re)(Regular Expression)。...正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。...在Python中使用正则表达式,python提供了re模块,包含所有正则表达式的功能。...由于python的字符串本身也用 \ 转义,所以要注意,例如: s = 'ABC\-001' # Python的字符串 对应的正则表达式字符串变成: 'ABC-001' 因此,为了避免冲突,建议使用Python...re.match(pattern, string, flags=0) : 从字符串开头匹配正则表达式,如果匹配返回一个匹配的对象,如果没有匹配返回None,常结合if判断语句使用 例2: ?

    61820
    领券