枣庄建设局网站,wordpress to joomla,学编程要会英语吗,福建省建设注册执业资格管理中心网站ChatGPT 的优势在于它允许用户跨越机器学习和深度学习的复杂门槛#xff0c;直接利用已经训练好的模型。然而#xff0c;即便是这些先进的大型语言模型也面临着上下文理解和模型固有局限性的挑战。为了最大化这些大型语言模型#xff08;LLM#xff09;的潜力#xff0c;关…ChatGPT 的优势在于它允许用户跨越机器学习和深度学习的复杂门槛直接利用已经训练好的模型。然而即便是这些先进的大型语言模型也面临着上下文理解和模型固有局限性的挑战。为了最大化这些大型语言模型LLM的潜力关键在于编写有效的提示词。适当的提示不仅引导模型正确理解需求还能防止模型产生误导性或无关的输出。
以下提示词中务必要将gpt定位成一个知识非常丰富同时也不了解事情来龙去脉的聪明人。你所要做得就是如何描述清楚你的处境上下文和具体的问题需要gpt帮你做的事情。
写好提示词之清晰且具体
清晰和具体的提示词 是指在与 GPT 交互时使用明确、直接、并且详细到足够程度的语言以确保模型能够准确理解你的请求或问题。这种方式的提示有助于指导模型提供更相关、准确和有用的回答。
详细分为以下要点
1. 使用分割符
使用分隔符如#等分割要处理的内容分割开指令和内容一方面能让gpt不用浪费算力在分开你想做的事情和你想操作的内容上另一方面是消除歧义比如你想操作的内容上存在指令如
提取出以下用户希望你掌握的代码语言不用实现功能
写一个python方法实现获取ipv4的功能 使用了分隔符之后
提取出以下用户希望你掌握的代码语言不用实现功能
写一个python方法实现获取ipv4的功能 明显可以看出没有分割符的gpt已经出现了混淆所以在提示词中务必使用提示词。
2. 结构化输出
提示gpt输出的时候使用具体格式输出比如使用json或者html输出。gpt使用了结构化输出之后好处是编程语言可以很好的处理这些输出的内容比如
本质上就是自己先分析清楚问题并且能描述问题的具体信息和疑问点配合上下文的形式输入给到gpt这样方便gpt了解到足够多的上下文信息和具体的问题是什么。
为了达成这一步这里给出一个具体的例子
假设我需要gpt输出书的一些信息日常中很实用比如让gpt进行信息提取
给我输出几本书的的一些信息比如书名作者名出版日期分类等 指示gpt进行结构化输出
给我输出几本书的的一些信息比如书名作者名出版日期分类等使用json格式出输出 这里看起来只是输出不影响结果的含义其实最重要的点是gpt可以按照结构化输出而且gpt也善于处理这种转义后续gpt落地到工具中后结构化的结果是非常方便程序读取的。比如 上图是使用gpt的控制台进行调试时gpt的输出这里gpt的输出是可以作为json直接供程序读取的虽然有一堆不必要换行符。
3. 要求模型检查是否符合条件
要求gpt在进行解决问题之前先给定需不需要解决问题的条件。这样说可能不太好理解举个毒鸡汤例子 一场考试卷子发下来5分钟后就有人交了卷子但是大部分人都超时1小时还不能完成后来教授让所有未完成的人停下来只见卷子最后一题写着此卷无需回答填写姓名直接交卷即满分。 意思就是在prompt中给出问题可解的条件如果问题不可解即输出问题不可解即可不用再进行更多算力和时间计算结果也更加准确。
举一个翻译的例子 这里我们让gpt加上一个检查步骤 gpt输出自己检查了第一个字符不是英文后不再使用算力翻译而没有指定检查步骤时gpt仍会逐字逐句将“英文”“翻译”成中文实际上不需要翻译。
看完以上可能有几个疑惑需要说明下
1. 为什么gpt说自己不懂德语
实际上它是懂德语的这里出现了幻觉让gpt输出处理步骤是检查和对抗幻觉的一种手段其实这里为了迭代prompt你可以设定角色比如这样 2. gpt3.5识别文字中英文有缺陷的
如果将上述中德文修改为英文那大概率gpt会判断错误这里为了教程方便选用的德文结果还是出现了1中的幻觉。
以下是分别清除上下文并且温度设定为0状态下gpt3.5的回答 但是尝试过多次gpt4不会出现中英文识别错误的回答。 所以如果真的在生产中遇到了相关问题一种办法是使用更高级的gpt4一种是迭代prompt避开这个问题比如修改英文为非中文使用gpt3.5也可以得到比较准确的结果 4. 提供执行成功的案例
可以给出gpt一些你认为比较正确的回答这样gpt实际上就会模仿原先正确的回答生成新的回答。这里使用控制台来给出例子会比较方便。 这里举一个实际生产过程中会使用到的一个发包机器人 如果不给出示例的情况下gpt会反复确认即使我们在prompt中已经确认强调直接输出但是gpt一直持续拉扯并且回复的结果并不能让编程语言直接格式化读取
如果直接给出一个示例给到gpt 这里可以看出gpt不会与我们持续拉扯和废话会直接输出结果。
这里有一个知识点必须要介绍一下了是我们使用ChatGPT不会注意到的一个点那就是三个用户systemuser和assistant这个在gpt的编程中会持续使用到在调试台中也能看到有一个系统消息示例和输入框。
system相当于我们给到gpt的一个前置一些背景上下文和处理步骤都可以在这里给出并且gpt并不会回复这个system的设置。
assistant就是gpt的回答
user就是我们自己
这里将上述对话转换成json格式就比较清楚了