从 0 到 1 的Prompt 教程,来自Claude 官方,不会写 prompt的看这个足够

Claude 的强大,最近得到了很多网友的验证,甚至效果上面大有超越 GPT的许多声音。

所以从优秀的 Claude 中学习,将会是一个很好的起点。

图片

这里,Claude 的开发者们提供了一个相当详细的 Prompt Engineering 教程。

这个教程能够全面地逐步了解如何在 Claude 中设计最佳提示。

循序渐进,由浅入深,非常适合学习和收藏。

教程分为初级、中级和高级,涵盖从基本提示结构到避免幻觉和构建复杂行业用例的高级技巧,并提供了练习和示例以加深理解。

重要的是,可以自己实践体验,每部分的教程都有一个“Example Playground”,可以在这里自由地体验课程中的示例,金也可以了解更改提示后,直接看 Claude 的回答。

看完之后,能够有几个收获。

  • 掌握一个好的提示的基本结构
  • 识别常见的故障模式并学习“80/20”技术来解决它们
  • 了解 Claude 的优势和劣势
  • 为常见使用案例从头开始构建强大的 prompt

详细教程地址放在了评论区,并且包含实际案例以及练习案例

下面是几个重点,可以收藏学习。第九点给出了一个 claude prompt 的模板,适用所有的 LLM 提示词设计,直接套用即可。

图片

1、基本的结构要掌握

基础不扎实,啥都白费,都是如此。

使用 Messages API 调用 Claude 时,至少需要以下参数,也是需要了解参数的含义。

  • model: 你打算调用的 API 模型名称。
  • max_tokens: 生成最大 token 数,Claude 在达到此最大值之前可能会停止。这个参数仅指定要生成的绝对最大 token 数,并且是一个硬性停止
  • messages: 输入消息的数组。模型经过训练,可以在用户和助手消息之间交替操作。模型会生成对话中的下一个消息。每个输入消息必须是一个具有 role 和 content 的对象。你可以指定一个用户角色的消息,或者包含多个用户和助手消息(它们必须交替出现)。第一条消息必须总是使用用户角色。

此外,还有一些可选参数

  • system: 系统提示。**为什么要使用系统提示符?**编写良好的系统提示可以通过多种方式提高 Claude 的表现,例如提高 Claude 遵循规则和指示的能力
  • temperature: Claude 响应的变化程度。0-1 之间。

2、清晰直接

Claude 对清晰直接的指示反应最好。

把 Claude 想象成任何其他刚接触这份工作的人。Claude 除了你从字面上告诉它之外,没有关于该做什么的背景。就像你第一次指导一个人完成一项任务一样,你越是以直截了当的方式向 Claude 解释你想要什么,Claude 的回答就会越好、越准确。

比如下面这个例子

图片

上面是表达不清晰,下面是表达清晰。

PROMPT = “Write a haiku about robots.”

上面的生成的结果已经足够好了,但可能希望 Claude 直接回答就是这首诗,而没有 “Here is a haiku” 这样的提示。

所以下面的直接在提示词上面修改。

PROMPT = “Write a haiku about robots. Skip the preamble; go straight into the poem.

3、分配角色非常重要

促使 Claude 在一个特定的角色(包括所有必要的上下文)中是很重要的,这也称为角色提示(role prompting),角色上下文越详细越好。

为 Claude 准备一个角色可以提高 Claude 在各个领域的表现,从写作到编码再到总结。这就像人类有时被告知“像__一样思考”时可以帮助。角色提示还可以改变 Claude 的回答风格、语气和方式。

图片当我们让 Claude 扮演一只猫的角色时,Claude 的视角发生了变化,因此 Claude 的回应语气、风格、内容都适应了新的角色。

图片一个逻辑推理的对比,从上下对比来看,通过新的角色分配,让 Claude 充当逻辑机器人, Claude 做对了

4、分离数据和善用 XML 标签

通常,我们不想编写完整的 prompt,而是希望在提示模板可以在以后提交给 Claude 之前使用额外的输入数据进行修改。如果您希望 Claude 每次都执行相同的操作,这可能会派上用场,但 Claude 用于其任务的数据每次可能都不同。

想要做到这几一点,方法是将 Prompt 的固定框架与可变的用户输入分开,然后在将完整的 Prompt 发送给 Claude 之前将用户输入替换到 Prompt 中。

为什么我们要像这样分离和替换输入?提示模板简化了重复性任务。

假设您构建了一个提示结构,邀请第三方用户向提示提交内容(在本例中为他们想要生成声音的动物)。这些第三方用户不必编写,甚至不必看到完整的提示。他们所要做的就是填写变量。

比如下面这个例子

图片

但是在替换的过程中, 有可能出现一些意外的情况,导致多输出一些无关紧要的字符。

这时候要善用 XML 标签。

XML 标记是尖括号标记,如。它们成对出现,由一个开始标签(如)和一个用 / 标记的结束标签(如)组成。XML 标签用于环绕内容,如下所示:content。

注意: 虽然 Claude 可以识别并使用各种分隔符和分隔符,但claude建议专门使用 XML 标记作为 Claude 的分隔符,因为 Claude 接受过专门培训,可以将 XML 标记识别为一种快速的组织机制。除了函数调用之外,没有 Claude 接受过训练的特殊 sauce XML 标记,应该使用这些标记来最大限度地提高性能。

图片

5、格式化输出

Claude 可以通过多种方式格式化其输出

一种方法是使用 XML 标记将响应与任何其他多余的文本分开。可以要求 Claude 使用 XML 标签来使其输出更清晰、更容易被人类理解。

将输出放在 XML 标记中,允许最终用户通过编写一个简短的程序来提取 XML 标记之间的内容,从而可靠地获取诗歌,并且只获取诗歌。

还有一种方式是将第一个 XML 标记放入 assistant 轮次中

同样的方式,对 JSON 格式也适用。

看下面的两个例子。

图片

6、Thinking Step by Step

这是一个prompt 很常用的咒语,一定要牢记。在很多场合都很受用,效果贼好

这种方式是给大模型一些思考的时间,就类似人回答问题的时候,思考后的回答,一定是准确的。

给 Claude 时间一步一步思考有时会使 Claude 更准确,尤其是对于复杂的任务。然而,只有当它大声说出来时,思考才有意义。你不能让 Claude 思考,而只输出答案 - 在这种情况下,实际上没有思考发生。

比如用第一、第二之类的阶段性动作。

图片

让 Claude 思考可以将 Claude 的答案从错误转变为正确。在很多情况下,Claude 犯错就是这么简单!

7、Few-Shot Prompting

这种方式非常实用,是我在工作中经常用到这种方式,效果很棒,特别是格式化输出。

举例说明你希望大模型如何表现(或你希望它拒绝某些事情)对于以下方面非常有效:

  • 获得正确的答案
  • 以正确的格式获得答案

这种提示称为 “few shot prompting”。可能还会遇到短语“zero-shot”或“n-shot”或“one-shot”。“shots” 的数量是指提示中使用的示例数量

当我们提问一些问题的时候,Claude 的默认回答相当正式和机械,你可以花时间描述你想要的语气或者格式。

图片

8、避免幻觉

幻觉问题一直都是所有大模型的最大的问题。也是最让我们头疼的问题

你可以不回答,但是别给我瞎回复,是我们在日常提问最低的原则之一。

对于 Claude 来说。

  • 一些坏消息:Claude 有时会“产生幻觉”并提出不真实或不合理的主张。
  • 好消息:可以使用一些技术来减少幻觉。

方案一:给 Claude 一个出路:告诉 Claude 它可以拒绝回答,或者只有在它确实确定知道答案的情况下才回答。

比如:PROMPT = “Who is the heaviest hippo of all time? Only answer if you know the answer with certainty.

图片

方案二:对于一些长文本理解,先收集证据: 告诉 Claude 首先提取相关引文,然后根据这些引文得出答案。

图片

方案三:设置温度参数(temperature) :可以通温度参数来解决。温度是衡量 0 到 1 之间的答案创造力的指标,其中 1 表示更不可预测且标准化程度较低,而 0 表示最一致。

在温度为 0 的情况下向 Claude 提问通常会在重复试验中产生一个几乎确定性的答案集(尽管不能保证完全确定性)。在温度 1(或两者之间的等级)下向 Claude 提问将产生更多可变的答案

9、独特而复杂的提示(重要)

这个很重要,结合了之前的学到的信息,总结成一套 prompt 模板,适用于大多数的 LLM 提示词设计。

一个用于复杂提示的引导式结构,并非所有提示都需要以下复杂结构的每个元素。鼓励您尝试并包含或不包含元素,看看它如何影响 Claude 的回答。通常最好先使用许多提示元素来使提示正常工作,然后再优化和精简提示。

教程中提到了很重要的一点:下面的排序对于某些元素很重要

  • 1、user角色,确保消息 API 调用始终以消息数组中的“user”角色开头。
  • 2、任务上下文,根据提示向 Claude 提供有关其应承担的角色或您希望其承担哪些目标和总体任务的背景信息。# 最好将上下文放在提示正文的早期
  • 3、语气语境,# 如果对互动很重要,请告诉应该使用什么语气,# 根据任务的不同,此元素可能不是必需的。
  • 4、详细的任务描述和规则,# 详细说明您希望 Claude 执行的具体任务,以及 Claude 可能必须遵循的任何规则。# 如果Claude没有答案或不知道,你也可以在这里给他“出局”。
  • 5、示例,提供至少一个可以模仿的理想响应示例,将其包含在 XML 标记中,一般来说,例子越多=越好。
  • 6、输入要处理的数据,如果需要处理数据,也放在 XML 标签中,非必需的元素。
  • 7、即时任务描述或请求,提醒 Claude 或准确地告诉 Claude 需要立即做什么来完成提示的任务。可以在此处添加其他变量,例如用户的问题。
  • 8、 思考,thinking step by step,对于有多个步骤的任务,最好告诉Claude 在给出答案之前一步步思考。有时,你甚至可能不得不说“在你给出答案之前…吧啦吧啦”,只是为了确保克劳德首先这样做。
  • 9、输出格式,如果希望采用特定的格式,请明确告诉 Claude 该格式是什么。根据任务的不同,此元素不是必需的。如果使用这个元素,将其放在提示的末尾比放在开头更好。
  • 10、预填 Claude 的回复, 也不是一个必须的元素,如果想预填 Claude 的回复,必须将其放在 API 调用中的“assistant”角色中。

以上就是教程的全部内容。

教程地址:https://github.com/anthropics/courses/tree/master/prompt_engineering_interactive_tutorial

图片

最精华的部分就是第九点,按照第九点的方式写 prompt ,是能够有非常不错的效果。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/411626.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

若依后端 MyBatis改为MyBatis-Plus

引用 1.引入MyBatis-Plus依赖 在总目录的pom.xml&#xff0c;导入依赖 <mybatis-plus.version>3.4.3</mybatis-plus.version> <!-- mybatis-plus 增强CRUD --> <dependency> <groupId>com.baomidou</groupId> <artifactId>…

计算机毕业设计选题推荐-医院门诊预约-医院预约挂号微信小程序/安卓APP-项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

Unity(2022.3.41LTS) - 着色器

目录 一、着色器的基本概念 二、表面着色器 一、着色器的基本概念 定义与作用&#xff1a; 着色器是一种在图形硬件上运行的程序&#xff0c;用于控制物体的颜色、纹理、光照、透明度等视觉属性。它通过对输入的几何数据&#xff08;如顶点位置、法线、纹理坐标等&#xff09…

项目:基于TCP的文件传输系统

项目介绍: 模拟FTP原理&#xff1a;客户端连接服务器后&#xff0c;向服务器发送一个文件。文件名可以通过参数指定&#xff0c;服务器端接收客户端传来的文件&#xff08;文件名随意&#xff09;&#xff0c;如果文件不存在自动创建文件&#xff0c;如果文件存在&#xff0c;…

代码随想录Day 23|回溯Part02,39.组合总和、40.组合总和Ⅱ、131.分割回文串

提示&#xff1a;DDU&#xff0c;供自己复习使用。欢迎大家前来讨论~ 文章目录 第七章 回溯算法part03一、题目题目一&#xff1a; 39. 组合总和解题思路&#xff1a;回溯三部曲剪枝优化小结&#xff1a; 题目二&#xff1a;40.组合总和Ⅱ解题思路&#xff1a;回溯三部曲 题目…

【项目源码】终于有人将打字游戏和编程英语结合起来啦!编程初学者的福音

Hello&#xff01;各位彦祖&#xff0c;亦菲们&#xff01;又是美好的一天&#xff01;今天给大家分享一个Java项目源码&#xff1a;Java打字游戏项目源码&#xff01; 看到这里&#xff0c;你可能会说&#xff01; 一个破打字游戏有什么可神气的&#xff01;&#xff01;&…

Leetcode面试经典150题-28.找出字符串第一个匹配项的下标

解法都在代码里&#xff0c;不懂就留言或者私信&#xff0c;比第一题稍微难点 用KMP解这个题简直就像大炮打蚂蚁&#xff0c;但是没办法&#xff0c;现在都是这么卷 package dataStructure.bigFactory;public class _28Strstr {public static int strStr(String s1, String s…

springboot3.x入门系列【5】支持unix sock 套接字服务

目录 一、简介 二、springBoot3.x 套接字的支持 1. 环境要求 2. springboot内置tomcat 2.1 支持unix 设置 unixDomainSocketPath 2.2 windows 下unix服务测试 3. springboot外置tomcat 3.1 tomcat 配置unix socket 套接字 3.2 启动tomcat 服务 3.3 nginx 支持unix…

android13固定app方向 强制app方向

总纲 android13 rom 开发总纲说明 1.前言 经常遇到客户有固定或者设置应用方向,不让他们改成其他方向的需求。今天我们就来处理这种问题。 2.问题分析 在 Android 10 之前,显示旋转的处理逻辑分散在多个类和模块中,Android 10 统一了这些逻辑,集中在 DisplayRotation.ja…

MATLAB 沿任意方向分层点云(82)

MATLAB 沿任意方向分层点云(82) 一、算法介绍二、算法实现1.代码2.效果更多内容参考: MATLAB点云处理学习 一、算法介绍 沿着某个方向,将点云分割为多层,每层点云使用不同颜色进行可视化显示,具体代码和不同方向的分层效果如下: 二、算法实现 1.代码 % Load point c…

【文档合集】软件类常用文档整理大全,软件工程,软件项目管理,技术标书方案,模

目的&#xff1a;规范系统开发流程&#xff0c;提高系统开发效率。 立项申请需求分析方案设计方案评审开发调整测试阶段系统培训试运行测试验收投入使用 所有文档过去进主页获取。 获取方式&#xff1a;本文末个人名片直接获取。 软件资料清单列表部分文档清单&#xff1a;工作…

【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch12 随机森林(Random Forest)

系列文章目录 监督学习&#xff1a;参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归&#xff08;SAheart.csv&#xff09; 【学习笔记】 陈强-机器学习-Python-…

(三)、软硬件全开源手表,具有Wi-Fi和蓝牙LE连接,并可连接互联网,超多表盘。(Watchy)

Watchy 是一款具有开源硬件和软件的 E-Ink watch。它采用准系统设计&#xff0c;利用 PCB 作为表身&#xff0c;可以原样佩戴&#xff0c;或进一步定制不同的 3D 打印表壳和表带。这是一款独特的设计&#xff0c;也是一个可穿戴开发平台&#xff0c;让用户可以创造自己的应用。…

【功能自动化】使用HTMLTestRunner生成测试报告

配置环境&#xff1a; 1.部署webtours网站 2.user.txt 3.HTMLTestRunner.py """ A TestRunner for use with the Python unit testing framework. It generates a HTML report to show the result at a glance.The simplest way to use this is to invoke it…

【论文阅读|cryoET】本周粗读汇总

论文1&#xff1a;CryoDRGN-ET&#xff1a;深度重建生成网络以可视化细胞内动态生物分子 Abstract 虽然冷冻电子断层扫描可以以分子分辨率揭示结构&#xff0c;但图像处理算法仍然是解决原位生物分子结构异质性的瓶颈。本文介绍CryoDRGN-ET用于cryoET断层图的异质重建。CryoD…

Figma 替代品 Penpot 安装和使用教程

在设计领域&#xff0c;Figma 无疑是一个巨人。它彻底改变了设计流程&#xff0c;将协作带到了一个全新的高度。然而&#xff0c;随着 Adobe 收购 Figma 的消息传出&#xff0c;许多设计师和开发者开始担心&#xff1a;Figma 未来会如何演变&#xff1f;那些好用的特性会不会被…

灵办AI:解锁办公新境界,让工作更智能、更高效!

在这个信息爆炸的时代&#xff0c;我们每个人都在寻找能够提升效率、简化工作流程的工具。如果您正在寻找一个能够全方位提升工作效率的AI助手&#xff0c;那么灵办AI绝对值得您的关注。 为什么选择灵办AI&#xff1f; 在众多AI工具中&#xff0c;灵办AI凭借其卓越的性能和独…

简单的C程序基础知识

C程序大致分为3种基本结构&#xff1a; 顺序结构、分支结构、循环结构 由这3种结构可以组成各式各样的复杂程序。 01--C语句 C语句分为以下几类&#xff1a; ①表达式语句 ②函数调用语句 ③控制语句 ④复合语句 ⑤空语句 1.表达式语句&#xff1a; 由表达式分号组成 表…

ArgoWorkflow教程(三)---使用 Artifacts 实现步骤间文件共享

上一篇我们分析了 Workflow、WorkflowTemplate、template 之间的关系。本篇主要分析如何在 argo-workflow 中使用 S3 存储 artifact 实现步骤之间的文件共享。 本文主要解决两个问题&#xff1a; 1&#xff09;artifact-repository 如何配置2&#xff09;Workflow 中如何使用 …

用AppleScript做macOS UI自动化

用AppleScript做macOS UI自动化 一、定位到System Setting → General → Login Items& Extensions 页面1. 获取页面锚点&#xff0c;以便直接滑动到锚点区域2. 滑动到Extensions 区域 二、根据名称找到元素&#xff0c;再点击元素的按钮三、获取元素位置并点击 一、定位到…