Prompt的技巧持续总结

Prompt 有很多网站已经收录了,比如:aimappro
在这里插入图片描述
有些直接抄上述网站的作业即可,不过也来看看,
有一些日常提问大概的咒语该怎么写。

1 三种微调下的提示写法

chatgpt时代的创新:LLM的应用模式比较
实际案例说明AI时代大语言模型三种微调技术的区别——Prompt-Tuning、Instruction-Tuning和Chain-of-Thought

三类:

  • In-context Learning(上下文学习)
  • Instruction Tuning(指令微调)
  • Chain of Thought(思维链)

1.1 In-context Learning(上下文学习)

In-context Learning接近小样本学习

举一个实际咒语的例子:

给你一个例子:
给出的句子是:值得去的地方,石头很奇特,景色优美,环境宜人,适合与朋友家人一起游玩!
你应该判断该句子的情感是什么,情感从['正面的', '负面的', '中性的']里选择。
输出列表:["正面的"]
如果不存在,回答:没有。
返回结果为输出列表。

现在,我给你一个句子,如"散热很好、低噪音、做工扎实、键盘舒适",你应该判断句子的情感倾向,并以列表的形式返回结果,如果不存在,则回答:没有。
{'sentence': '散热很好、低噪音、做工扎实、键盘舒适', 'type': '', 'access': '', 'task': 'SA', 'lang': 'chinese', 'result': ['正面的'], 'mess': [{'role': 'system', 'content': 'You are a helpful assistant.'}, {'role': 'user', 'content': '给你 一个例子:\n给出的句子是:值得去的地方,石头很奇特,景色优美,环境宜人,适合与朋友家人一起游玩!\n你应该判断该句子的情感是什么,情感从[\'正面的\', \'负面的\', \'中性的\']里选择。\n输出列表:["正面的"]\n如果不存在,回答:没有。\n返回结果为输出列表。\n\n现在,我给你一个句子,如"散热很好、低噪音、做工扎实、键盘舒适",你应该该句子的情感倾向,并以列表的形式返回结果,如果不存在,则回答:没有。'}]}

1.2 Instruction Tuning(指令微调)

Instruction通常是一种更详细的文本,用于指导模型执行特定操作或完成任务。Instruction可以是计算机程序或脚本,也可以是人类编写的指导性文本。Instruction的目的是告诉模型如何处理数据或执行某个操作,而不是简单地提供上下文或任务相关信息。
数据格式:

instruction: 指令
input: 输入(本数据集均为空)
output: 输出

就是指令,输入,输出,来看一个例子,加深提问的印象:
在这里插入图片描述

1.3 Chain of Thought(思维链)

使用 chain-of-thought,我们可以将问题分解成以下步骤:

将问题输入模型:“计算 3 * (4 + 5)”
模型输出第一步的结果:“计算 4 + 5”
将上一步的结果作为输入,再次输入模型:“计算 3 * 9”
模型输出最终结果:“结果是 27”

在这个例子中,我们可以看到模型是如何通过一系列连贯的思考链(步骤)来逐步解决问题的。
在Chain-of-thought训练中,将数据集中的输入分解为一系列任务是非常关键的一步。一般来说,这个过程需要根据特定的任务和数据集来进行定制。

一个例子:

在提示的时候,加上"Let’s think step by step" (让我们一步一步思考)或者类似的句子,会促使LLM花更多的token把“思考”的过程都表达出来。而更多的token -> 更多的“思考努力" -> 更好的结果。

2 提示词模版的要素拆解

参考:如何向ChatGPT问问题才能获得更高质量的答案?

一个好的提示词模版的要素:

在这里插入图片描述

看一个大概的例子:
在这里插入图片描述
其中,有没有【立角色】在有一些prompt过程中,会差异蛮大,最好都加上。
再来看一个例子:
在这里插入图片描述

生成效果:
在这里插入图片描述


3 GPT 保存对话框,保留历史信息

如果你有一类问题,可以一直在一个对话框询问,同时进行保存,这样就会记住历史消息,相当于一次【In-context Learning(上下文学习)】

在这里插入图片描述


4 其他Prompt一些小技巧

4.1 通过Prompt让llm反思

来自 “State of GPT” 理解+观后感

在LLM给出答案后,你可以给它一个反思的机会(比如说,问它一句“你确定吗”),这样如果它之前犯了错误,它就有一个纠正的机会。

4.2 明确告诉LLM你需要正确的答案

来自 “State of GPT” 理解+观后感
在这里插入图片描述
在提示里加上"Let’s make sure we have the right answer",否则LLM可能并不认为给出错误的答案是不好的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

将win上的文件传输到Ubuntu虚拟机

首先获取Ubuntu系统的ip地址,在Ubuntu的Terminal中输入ifconfig,可以看到Ubuntu的ip地址 可以看到我电脑的ip地址是10.0.2.15。更改虚拟机的网络连接 这里以VirtualBox为例,打开VirtualBox设置,选择网络,将连接方式改…

通付盾入围《2023年度中国数字安全能力图谱(行业版)》

近日,数世咨询发布《2023年度中国数字安全能力图谱(行业版)》。通付盾作为以分布式数字身份和大数据决策智能技术为核心的数字化高端软件与服务提供商,凭借在数字安全领域的实力和影响力,入选政府、互联网两大行业细分…

ElasticSearch的安装和访问

ElasticSearch的安装 前言: 本次下载是在Windows系统进行操作,版本为7.6.1,因为下周最新版本的8.1.2有问题 ElasticSearch基于Java开发,JDK最低1.8版本 ElasticSearch的版本要和之后引入的Maven的Jar包版本对应 1 下载ElasticSearch 官网:https://www.elastic.co/cn/ 产品…

【yocto1】利用yocto工具构建嵌入式Linux系统

文章目录 1.获取Yocto软件源码2.初始化Yocto构建目录2.1 imx-setup-release.sh脚本运行2.2 imx-setup-release.sh脚本解析2.2.1 setup-environment脚本解析 3.构建嵌入式Linux系统3.1 BitBake构建系统3.2 BitBake构建系统过程简要解析3.2.1 解析Metadata基本配置Metadatarecipe…

Spring Boot面试题

什么是 Spring Boot? Spring Boot 是一个简化 Spring 应用程序开发的框架,通过自动配置、起步依赖和简化的配置方式,使开发人员能够更快速、方便地创建和配置 Spring 应用程序,提高开发效率和开发体验。 Spring Boot 的设计目标…

如何做一份干净的git提交记录

背景 毕业工作有一些年头了,之前在写工作代码或者给开源项目贡献的时候,提交代码都不是很规范,甚至可以说十分的随意,想到什么就提交什么,根本没有管理提交记录的概念或者想法(当你身边的人都不怎么在意的…

基于 Wav2Lip-GFPGAN 深度学习模型的数字人Demo

写在前面 工作中遇到简单整理博文为 Wav2Lip-GFPGAN 环境搭建运行的 Demo理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是…

kubernetes operator解析

您是否想过站点可靠性工程 (SRE) 团队如何有效地成功管理复杂的应用程序? 在 Kubernetes 生态中,只有一个答案:Kubernetes Operators! 在本文中,我们将研究它们是什么以及它们是如何工作的。 Kubernetes Operator 概念…

RabbitMQ 能保证消息可靠性吗

系列文章目录 消息队列选型——为什么选择RabbitMQ RabbitMQ 五种消息模型 RabbitMQ 能保证消息可靠性吗 系列文章目录前言一、消息可靠性的定义二、几种不可靠的场景三、防意外丢失1. 消息持久化2. 队列持久化3. 发布确认3.1 简单发布确认3.2 批量发布确认3.3 异步发布确认 4…

miniconda 安装 windows+linux

虽然常用anaconda,但是有时候只需要管理环境的时候,用miniconda更方便 如果想安装anaconda,可以参考这篇:anaconda安装 一、linux下 1.下载 链接:miniconda文档 cd /usr/localwget https://repo.anaconda.com/mini…

简要介绍 | CUDA底层原理:加速高性能计算的关键技术

注1:本文系“简要介绍”系列之一,仅从概念上对CUDA的底层原理进行非常简要的介绍,不适合用于深入和详细的了解。 CUDA底层原理:加速高性能计算的关键技术 CUDA Refresher: The GPU Computing Ecosystem | NVIDIA Technical Blog 1…

python自动化办公——定制化读取Excel数据并写入到word表格

Python自动化办公——Excel写word表格 文章目录 Python自动化办公——Excel写word表格一、引言二、数据准备三、python代码1、方法一2、方法二3、方法三 一、引言 最近到了毕业设计答辩的时候,老师让我帮毕业生写一段毕业设计的功能就是提供一个学士学位授予申请表…

基于CST软件的对数周期天线设计

摘要: 对数周期天线存在多种形式,主要包括齿片形、齿线型和偶极型等。其中,1960年提出的对数周期偶极子天线(LPDA)是结构最简单、应用最广泛且性能优良的一类对数周期天线,广泛应用于 UHF、VHF、HF 频段的…

python中os库用法详解(总结)

os库主要是对文件和文件夹进行操作,在Python中对⽂件和⽂件夹的操作要借助os模块⾥⾯的相关功能。 具体步骤如下: 1. 导⼊os模块 import os 2. 使⽤ os 模块相关功能 os.函数名() 1、⽂件重命名 os.rename(⽬标⽂件名, 新⽂件名) 示例代码&#…

MySQL:七种 SQL JOINS 的实现(图文详解)

MySQL:7种SQL JOINS的实现 前言一、图示表示二、代码举例1、INNER JOIN(内连接)2、LEFT JOIN(左连接)3、RIGHT JOIN(右连接)4、OUTER JOIN(全连接)5、LEFT EXCLUDING JOI…

nbcio-vue中formdesigner的组件显示不正常的处理

今天看演示系统的formdesigner组件显示不正常,也不知道是什么时候开始的事情, 如下: 对组件的操作倒是正常,但看本地是正常的,如下: 开始也不知道是什么原因,看代码也是一样的,应该…

JavaScript 中内存泄漏的几种情况?

一、是什么 内存泄漏(Memory leak)是在计算机科学中,由于疏忽或错误造成程序未能释放已经不再使用的内存 并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,导致在释放该段内存之前就失…

Hidl编程实战(一)——定义HAL服务

1. 概述 hidl基本知识可以参考官网 安卓官网-hidl 也讲解了C和Java实现hidl 本文讲解CHal服务的创建 2. 文件的创建 aosp整编过的代码,可以直接choosecombo后使用hidl-gen工具。如果没有整编过,可以单编hidl-gen工具。 hidl-gen工具可以用来协助创建h…

Windows和Linux动态注入

摘要:最近对动态注入有一些兴趣因此搜索了些资料,简单整理了下相关的技术实现。本文只能够带你理解何如注入以及大概如何实现,对注入的方法描述的并不详细。   关键字:dll注入,hook,提权   读者须知&am…

基于Springboot+Vue的校园招聘系统(进阶版)

本项目是一年前写的一个项目的升级版,因为某些原因将它作了一个升级改进, 好多兄弟来问有没有演示,现在先来写个说明!!! 目录 一. 🦁 前言二. 🦁 开源代码与组件使用情况说明三. &am…