Prompt的万能公式和优化技巧

news2024/10/6 4:14:04

文章目录

  • 前言
  • 一、万能公式
  • 二、优化技巧
    • 1.设定角色
    • 2.设定目标和动机
    • 3.引导主观回答
    • 4.预设条件
    • 5.做强调
    • 6.思维链(COT)
    • 7.巧用定界符


前言

    随着LLM的发展,能给我们带来很多方便,但是又引出了一个新的问题就是我们该如何使用他们,我们怎么才能得到我们想到的信息。


一、万能公式

    本篇文章将带你系统了解一个好的Prompt的结构是什么样子,优质的Prompt有什么标准。在大多数的场景中,Prompt有一个万能公式,通过这个公式,可以保证你Prompt输出效果满足底线标准。
    你可能在网络上看到过很多这个万能公式的不同版本,每个公式的细节都不相同,但是这不重要,当你掌握了通用方法,自然可以根据不同的角色、场景等信息,设计出适合自己的万能公式。

Prompt = 角色 + 任务 + 要求 + 细节【步骤拆解、范例说明,技巧点拨等】

    这个公式用大白话解释就是你要告诉大模型:你是谁?要做什么?怎么做?
    举个例子,现在你告诉大模型:生成一篇小红书风格的口红种草文案,字数不少于100字,风格要俏皮一些。
    下面我们来拆解这个公式,看每个元素都代表什么意思。

  • 角色:就是你要生成这段信息的主体对象,比如“生成一篇小红书风格的口红种草文案”,“口红”就是角色。
  • 任务:就是需要大模型完成的任务类型,比如生成一张海报,在这个案例中就是生成一篇种草文案。
  • 要求:就是你希望模型完成某一项具体的要求,不少于100字就是具体的要求。
  • 细节:如果你想丰富模型最终生成的结果,可以增加一些细节,比如文案的风格等。
        接下来,我们来用文心一言的【新媒体文章创作】这个智能体来试一下这个万能公式的效果,下图中是我没有用万能公式,随便写的一个问题需求,相信很多人给大模型提问都是这样的风格,可以看到,模型给到的回答非常的冗余,内容分不清主次。

在这里插入图片描述
    但是如果我们用了万能公式来输出Prompt,效果明显提升了一个台阶,如下图所示,模型给到的回答更像是一个具体的人,且极具小红书的风格,你可以直接拿来去用,而不是冰冷的机器回答的文案。
在这里插入图片描述
优质Prompt标准:
    虽然不同的应用场景下对优质的Prompt定义有所区别,但是我们依然可以找到一些共性的特点。具体来说,一条优质的Prompt一般满足以下特点:

  • 明确和具体:提示词应当清晰明了,具体说明你希望获得的信息或答案。避免模糊和含糊不清的表达方式。
  • 简洁明了:保持简洁,避免使用冗长或复杂的句子。简单直接的表达方式更容易理解。
  • 具有上下文:在你的提示中包含相关的上下文信息,以便大模型更好地理解你的问题或需求。提供关键信息,而不是依赖于模糊的问题。
  • 避免歧义:在同类任务中,更换主题词后,Prompt依然可以取得好的效果,避免使用容易引起歧义的词语或短语。
  • 使用关键词:强调关键词,这有助于指导大模型需要关注的重点有哪些,可以通过加粗、斜体或其他方式来实现。

    这么讲可能还不够具象,下面我举几个例子来带你看一下优质的Prompt都长什么样子。

1.优质的Prompt对话题有足够的背景信息:
        优质: 请提供有关可控核聚变的最新研究进展和技术趋势的详细信息。
        反例: 可控核聚变是什么?
2. 具体的指令:
        优质: 以500字的篇幅解释人工智能在医学诊断中的应用,并列举相关的成功案例。
        反例: 写点关于人工智能的东西。
3. 引导性强,具体指明期望的回答形式:
        优质: 以比较分析的方式说明区时序数据库和传统关系型数据库的优劣,并指出在哪些场景下使用时序数据库更有优势。
        反例: 写点关于数据库相关的东西。

        来测试下第一个案例,通过下面截图我们可以看到,当你输入一条有足够背景信息的Prompt时,你可以从实验装置的进步、高温超导技术的突破、数值模拟和人工智能的应用、核聚变能源商业化等多个方面对可控核聚变有一个全面的认识。
在这里插入图片描述

二、优化技巧

1.设定角色

    设定角色可以是一种有趣且有效的方法,通过这种方式,你可以引导大模型生成更具特定性和一致性的回答,在提示词中你可以清晰地定义所设定的角色特征,包括身份、职业、背景等。这有助于大模型更好地理解并在回答中表现出相应的角色特性。

2.设定目标和动机

    除了设定角色以外,你还可以通过设定目标和动机的方式丰富角色的形象,以帮助智能体理解在回答中应该关注的方面。

3.引导主观回答

    如果你希望模型提供主观性的回答,可以通过提示中的角色设定来引导。表明你期望从设定的角色角度获取意见和观点。

4.预设条件

    在Prompt提示中可以清晰地定义你的预设条件,包括任何特定的环境、情境或约束。这可以帮助大模型理解问题的上下文,并生成更符合你期望的回答。比如当我们希望了解人工智能在医疗领域的应用时,模型的答案往往具有科幻色彩,但如果加入现代科技这个前提,模型给到的回答就靠谱了很多。
同时,你还可以在提示中加入约束条件,这样可以限定模型的回答范围,使其在特定框架内生成回答。

    在预算有限的情况下,建议如何开展一项科学研究项目,强调资源的有效利用。

    当然,你还可以通过引入预设条件,可以引导大模型进行比较与对比。明确提出你希望模型探讨的不同条件下的影响或差异。

    比较在自然环境和人工环境中培养植物的影响,考虑生长速度、生态系统互动等方面的不同。

    除此之外,你甚至可以通过假设条件来减少大模型回复不准确的概率,比如你可以告诉大模型,如果你的数据存在问题,例如数据不准确、缺乏时效性等,那么可以给出否定答复,例如:对不起,目前没有相关数据可供参考。

5.做强调

    大模型训练的预料长度不是固定字数,所以往往越往后的需求描述权重越低,对模型的输出结果造成影响。这个时候,除了将对应需求靠前排外,还可以通过增加强调词,告诉模型自己非常看中的内容,比如增加“非常”、”强调”、“必须”等词汇。你还可以通过加粗、斜体或其他方式使关键词更为明显。

6.思维链(COT)

    思维链是一种将思考过程分解为一系列逻辑步骤或关键点的方法,有助于大模型更系统地处理复杂任务。在撰写复杂任务的提示时,通过构建清晰的思维链,拆解复杂任务步骤,可以帮助大模型明确任务的要求、限制和目标。

例如大语言模型在数学推理方面的表现不是太好,但是如果你在提问的时候,加入思维链的关键词,比如告诉模型,你需要逐步进行计算,或者一步一步进行计算等关键词,或者给出实现的步骤和逻辑,这往往可以极大的提高模型答案的准确率。比如,我们使用灵境矩阵平台的智能体【数学解题助手】来测试一道常见的小学数学题。

这组数中的奇数加起来是多少:4、8、9、15、12、2、1

7.巧用定界符

    在Prompt提示词中,定界符是用来标记或定义文本边界的一种特殊符号或格式。它们用于告诉模型或系统在哪里开始和结束生成文本,定界可以使用任何符号,例如:、‘’‘’‘’、< >等。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

明星代言方式8种助力品牌占领市场-华媒舍

1. 明星代言的重要性和市场价值 明星代言是一种常见的品牌推广方式&#xff0c;通过联系知名度高的明星来推广产品或服务&#xff0c;从而提升品牌的知名度和美誉度。明星代言能够借助明星的影响力和粉丝基础&#xff0c;将品牌信息传达给更广泛的受众&#xff0c;从而提高销量…

【数据结构】建堆的时间复杂度

一.向下调整建堆 1.二叉树层数与总节点个数关系 层数一定时&#xff0c;在二叉树节点个数最大的情况下&#xff0c;二叉树为满二叉树&#xff0c;如下图所示&#xff0c;可以清晰地看到在满二叉树中第h层有2^(h-1)个节点&#xff0c;总节点N就等于一个等比数列的求和&#xf…

【Python机器学习】模型评估与改进——在模型选择中使用评估指标

我们通常希望&#xff0c;在使用GridSearchCV或cross_val_score进行模型选择时能够使用AUC等指标。scikit-learn提供了一种非常简单的实现方法&#xff0c;那就是scoring参数&#xff0c;它可以同时用于GridSearchCV和cross_val_score。你只需要提供一个字符串&#xff0c;用于…

RabbitMQ入门教程(精细版二带图)

目录 六 RabbitMQ工作模式 6.1Hello World简单模式 6.1.1 什么是简单模式 6.1.2 RabbitMQ管理界面操作 6.1.3 生产者代码 6.1.4 消费者代码 6.2 Work queues工作队列模式 6.2.1 什么是工作队列模式 6.2.2 RabbitMQ管理界面操作 6.2.3 生产者代码 6.2.4 消费者代码 …

谷粒商城学习-06-使用vagrant快速创建linux虚拟机

这一节的内容是在Windows上安装虚拟机。 为什么要按照虚拟机呢&#xff1f; 原因是很多软件只能在Linux下运行&#xff0c;有的虽然也可以在Windows上运行&#xff0c;但从安装到运行会遇到很多问题&#xff0c;为这些解决这些问题花时间对于大多数人特别是初学者是没有什么价…

WPS操作技巧:制作可以打对勾的方框,只需简单几步!沈阳wps办公软件培训

日常工作中&#xff0c;我们经常需要在表格中添加复选框&#xff0c;比如【性别选择】、【任务完成状态】等等&#xff0c;通过打对勾来确定状态。今天就分别从WPS的Excel表格和Word文档2种场景&#xff0c;介绍制作可以打对勾的复选框的方法技巧&#xff0c;掌握技巧&#xff…

k8s-第十节-Ingress

Ingress 介绍 Ingress 为外部访问集群提供了一个 统一 入口,避免了对外暴露集群端口;功能类似 Nginx,可以根据域名、路径把请求转发到不同的 Service。可以配置 https跟 LoadBalancer 有什么区别? `LoadBalancer`` 需要对外暴露端口,不安全;无法根据域名、路径转发流量到…

Linux之文本三剑客

Linux之三剑客 Linux的三个命令,主要是用来处理文本,grep,sed,awk,处理日志的时候使用的非常多 1 grep 对文本的内容进行查找 1) 基础用法 语法 grep 选项 内容|正则表达式 文件选项: -i 不区分大小写 -v 排除,反选 -n 显示行号 -c 统计个数查看文件里包含有的内容 [roo…

rtsp地址 + 测试网站 + java(免环境、免插件、零编码转换http播放)

目录 1、创建rtsp网站 2、测试rtsp网站 3、Java实现rtsp播放 ①maven添加依赖 ②访问http地址即可展示视频内容 1、创建rtsp网站 填写邮箱即可获得两个可用的rtsp网站&#xff08;每月可免费用2G&#xff09;&#xff1a; https://rtsp.stream/ 2、测试rtsp网站 测试网络…

k8s kubectl top pod报错error Metrics API not available

文章目录 1、场景2、解决方法1、确认Metrics Server是否已经在集群中安装2、安装metric-server组件2.1、组件地址2.2、组件与K8S集群版本对应关系2.3、apply资源清单文件2.4、验证Metrics Server正常工作 1、场景 在使用kubectl top pod 命令时遇到了error: Metrics API not a…

人力资源中的人工智能:你应该知道的一切

人工智能已经成为行业讨论更广泛的突出话题。人力资源(HR)对于人力资源专业人士来说&#xff0c;了解这门课程也是如此。除了简要介绍什么是人工智能&#xff0c;以及你可能遇到的主要人工智能类型(或者你可能很快就会遇到它&#xff01;)此外&#xff0c;本文还将探讨人工智能…

工业智能网关在现代工业生产中的重要性-天拓四方

工业智能网关是一款具备挖掘工业设备数据并接入到自主开发的云平台的智能嵌入式网络设备。它具备数据采集、协议解析、边缘计算&#xff0c;以及4G/5G/WiFi数据传输等功能&#xff0c;并能接入工业云平台。这种网关不仅支持采集PLC、传感器、仪器仪表和各种控制器&#xff0c;还…

公用对象池

什么是对象池&#xff1f; 对象池顾名思义就是存放对象的池子&#xff0c;主要是为了重复利用对象。将不用的对象扔进池子里&#xff0c;需要用的时候再从池子中取出来。这样的一套机制我们称为对象池。 为什么用对象池&#xff1f; 其实从定义我们就可以看出来&#xff0c;…

基于矩阵分解算法的评分预测实现---信息检索课设以及所涉及的深度学习原理

一、实验环境 Windows,Python 3 Python作为主要编程语言,使用Python的Pandas、NumPy、Matplotlib等库 二、实验内容 主要任务 查阅相关资料,了解矩阵分解算法的基本概念、应用场景及其难点。重点了解SVD(Singular Value Decomposition,奇异值分解)系列方法。掌握Pyth…

2023年的Facebook营销:超级完整指南

Facebook营销不是可选的&#xff0c;是必须的。Facebook是世界上使用最多的社交平台&#xff0c;每天吸引22.9亿活跃用户。 它也不全是度假照片和虚张声势。对于53.2% 的 16-24 岁互联网用户&#xff0c;社交媒体是他们进行品牌研究的主要来源。而且&#xff0c;66% 的 Facebo…

红黑树插入删除流程(流程图)

红黑树插入删除流程&#xff08;流程图&#xff09; 红黑树性质 左根右(二叉树&#xff09;根叶黑&#xff08;根节点是黑色的&#xff09;不红红&#xff08;不存在相邻两个红色节点&#xff09;黑路同&#xff08;对于每个节点&#xff0c;从该节点出发到任一空叶节点所经过…

学会python——用python制作一个登录和注册窗口(python实例十八)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.登录和注册窗口 3.1 代码构思 3.2 代码实例 3.3 运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读…

tapd 与国内外主流的8大项目管理软件大对比

对比Tapd与8大项目管理工具&#xff1a;PingCode、Worktile、Redmine、Teambition、广联达、Jira、禅道、飞书。 Tapd 是腾讯推出的一款敏捷开发管理工具&#xff0c;特别适合那些需要高效协作和快速迭代的敏捷开发团队。它支持多种敏捷方法论&#xff0c;包括Scrum和Kanban&am…

二轴机器人装箱机:重塑物流效率,精准灵活,引领未来装箱新潮流

在现代化物流领域&#xff0c;高效、精准与灵活性无疑是各大企业追求的核心目标。而在这个日益追求自动化的时代&#xff0c;二轴机器人装箱机凭借其较佳的性能和出色的表现&#xff0c;正逐渐成为装箱作业的得力助手&#xff0c;引领着未来装箱新潮流。 一、高效&#xff1a;重…

字节码编程ASM之生成变量并sout

写在前面 本文看下如何通过asm生成变量并sout。 1&#xff1a;代码 直接看代码吧&#xff0c;注释很详细&#xff0c;有不懂的&#xff0c;留言告诉我&#xff1a; package com.dahuyuo.asmtest;import org.objectweb.asm.*; import org.objectweb.asm.commons.AdviceAdapt…