当前位置: 首页 > news >正文

提示词工程入门-使用文心一言4.0-通义千问-GPT4-Claude3通用提示技巧测试

提示词工程基础🚀

       在了解完了大语模型的基本知识,例如API的使用多轮对话,流式输出,微调,知识向量库等知识之后,接下来需要进一步补足的一个大块就是提示词工程,学习和了解提示词工程除了基本的提示词类型之外,不同的大模型对于提示词工程润色之后的提示词的反应如何,也是比较值得关注的一点,因此本文使用文心一言4.0,通义千问,ChatGPT4, Claude3,四种模型来实验一下各类的提示词


文章目录

  • 提示词工程基础🚀
  • 1.什么是提示词工程
  • 2.提示词要素
  • 3.提示词的通用技巧
    • 3.1 在提示词中明确指令
      • 3.1.1 输入基础和改进之后的提示词模型的输出
      • 3.1.2 结果对比分析
    • 3.2 具体描述输出所要的格式
      • 3.2.1 输入基础和改进之后的提示词模型的输出
      • 3.2.2 结果对比分析
    • 3.3精确描述想要的内容不要概括
      • 3.3.1 输入基础和改进之后的提示词模型的输出
      • 3.3.2 结果对比分析
    • 3.4 以鼓励的方式向大模型提问
      • 3.4.1 输入基础和改进之后的提示词模型的输出
      • 3.4.2 结果对比分析
  • 4.整体结果分析
  • 结束


https://www.promptingguide.ai/zh
在这里插入图片描述
       首先分享一个网站这是我在谷歌上搜索到的,一个非常好的提示词学习网站,不但由简单到难的总结了提示词工程中的各种概念要素和提示词的各类技术,后面还包括了一些工具,笔记,还有一些提示词领域的优秀的论文,并不断的对论文进行更新,根据这个网站的逻辑,这篇文章首先测试一下其中的通用提示词技巧,最如果有什么错误或者不完善的非常欢迎沟通交流。

1.什么是提示词工程


这里先引用上面的提示词指南中对提示词工程的介绍:

提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域。 掌握了提示工程相关技能将有助于用户更好地了解大型语言模型的能力和局限性。

我个人的感觉的话就是针对不同类型的问题然后找出一些通用的提示结构从而让回答的正确率和质量更高。

2.提示词要素


这里我认为提示词指南网站里的解释非常好,我就直接给粘过来,然后补充点自己的理解。
在这里插入图片描述
提示词的四要素:

指令:想要模型执行的特定任务或指令。

上下文:包含外部信息或额外的上下文信息,引导语言模型更好地响应。

输入数据:用户输入的内容或问题。

输出指示:指定输出的类型或格式。

一般来说我们在使用大模型的时候,都是直接输入指令和数据,但是如果能有效的提供上下文和输出格式,则一般而言回答的质量会更高。

3.提示词的通用技巧


3.1 在提示词中明确指令

在这里插入图片描述
明确指令的过程中的要点如下:

  • 使用例如“写入”、“分类”、“总结”、“翻译”、“排序”等明确的提示词
  • 将“###指令###”放在开头

接下来我们分别测试三种

将“hello!”翻译成西班牙语
将以下文本翻译成西班牙语:
文本:“hello!”
### 指令 ###
将以下文本翻译成西班牙语:
文本:“hello!”

为了避免多轮对话的记忆,因此每次实验都新开一个会话


3.1.1 输入基础和改进之后的提示词模型的输出

文心一言

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


通义千问

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


ChatGPT4

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


Claude3

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.1.2 结果对比分析


       下面是我自我感受的一个测试结果,纯个人感受,文心一言的基础效果给差是因为,只有文心一言的基础结果输出时候,翻译出的西班牙语少了开头的一个符号(但我不知道重要不重要不太懂西班牙语),剩下的情况翻译的情况都基本是正确的,虽然额外的表示方式或是信息不同。

模型名称基础效果使用提示技巧效果特点相关任务推荐建议
文心一言4.0良好不是很推荐
通义千问良好良好只输出结果需要精简回答时推荐
GPT4良好良好结果前会铺垫一句描述对话场景推荐
Claude3良好良好会自动切换回答语言需自动切换语言时推荐

3.2 具体描述输出所要的格式

在这里插入图片描述
接下来测试两种文本:

提取以下文本中的地名。
输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。”
提取以下文本中的地名。
所需格式:
地点:<逗号分隔的公司名称列表>
输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。”

3.2.1 输入基础和改进之后的提示词模型的输出


文心一言

在这里插入图片描述在这里插入图片描述


通义千问

在这里插入图片描述
在这里插入图片描述


GPT4

在这里插入图片描述
在这里插入图片描述


Claude3

在这里插入图片描述
在这里插入图片描述

3.2.2 结果对比分析

       在通用提示词中明确指令前文测试结果,这里两个地名都识别出来了我认为是正确,然后识别出来一个的我就给了差。然后较好是有时候正确有时候错误我就给了较好。

模型名称基础效果使用提示技巧效果特点相关任务推荐建议
文心一言4.0不是很推荐
通义千问良好较好不改进提示词前正确,改进有时正确有时错误推荐不改进提示词使用
GPT4不是很推荐
Claude3良好不改进之前错误,改进之后正确推荐改进提示词之后使用

3.3精确描述想要的内容不要概括

在这里插入图片描述

向高中学生解释提示工程的概念。
使用 2-3 句话向高中学生解释提示工程的概念。

3.3.1 输入基础和改进之后的提示词模型的输出


文心一言

在这里插入图片描述

在这里插入图片描述


通义千问

在这里插入图片描述

在这里插入图片描述


ChatGPT4

在这里插入图片描述

在这里插入图片描述


Claude3

在这里插入图片描述

在这里插入图片描述

3.3.2 结果对比分析

然后由于这是一个开放性问题没有正确答案,大家总结的也都不错但是有个明显的区别。

  • 国内的两个模型文心一言和通义千文把提示工程认为是一种提示作用的行为然后讲述出来
  • 国外的两个模型把提示工程认为提示工程是大模型中的提示词工程而进行输出描述。

我个人认为在这方面国外的两个模型的表现要更好或者更符合当前科技背景一些。


3.4 以鼓励的方式向大模型提问

在这里插入图片描述
测试的两个文本如下

以下是向客户推荐电影的代理程序。不要询问兴趣。不要询问个人信息。客户:请根据我的兴趣推荐电影。
代理:
以下是向客户推荐电影的代理程序。代理负责从全球热门电影中推荐电影。它应该避免询问用户的偏好并避免询问个人信息。如果代理没有电影推荐,它应该回答“抱歉,今天找不到电影推荐。”
顾客:请根据我的兴趣推荐一部电影。
客服:

3.4.1 输入基础和改进之后的提示词模型的输出


文心一言

在这里插入图片描述
在这里插入图片描述


通义千问

在这里插入图片描述
在这里插入图片描述


ChatGPT4-以鼓励的方式向大模型提问

在这里插入图片描述
在这里插入图片描述


Claude3

在这里插入图片描述
在这里插入图片描述

3.4.2 结果对比分析

这里除了GPT4,其他模型都没有完成拒绝推荐的指令,因此GPT在理解复杂指令方面还是表现出了领先的优势。

4.整体结果分析


  • 随着大模型的发展,提示词工程的通用技巧之后的模型绝大多数情况下都好于改善了之前,但也有更差的情况,个人认为随着大模型的发展,提示词工程的作用在不断的降低。如果把上述四种提示词基础功能分别对应四种任务的话我粗略的给每个模型排个名仅供参考
模型名称明确指令任务中实体识别任务精确内容任务附加条件任务综合排名(求和)
文心一言4.043324
通义千问11323
GPT413111
Claude312121
  • GPT在中文实体识别任务中不如通义千问和Claude3其他任务中全处在最优水平,而且在理解复杂逻辑方面遥遥领先
  • Claude各方面能力相当均衡没有明显的短板
  • 国产模型在整体能力上距离世界领先水平还有一段空间,加油我们自己大模型一定会越来越好。

结束


这个对比就到这,毕竟花了好多钱开了这这些大模型,争取把能测试都测试一遍,后面从零样本提示开始做实验,进一步看一下各个模型在面对复杂情况下表现和提示词能起到的作用。

相关文章:

提示词工程入门-使用文心一言4.0-通义千问-GPT4-Claude3通用提示技巧测试

提示词工程基础&#x1f680; 在了解完了大语模型的基本知识&#xff0c;例如API的使用多轮对话&#xff0c;流式输出&#xff0c;微调&#xff0c;知识向量库等知识之后&#xff0c;接下来需要进一步补足的一个大块就是提示词工程&#xff0c;学习和了解提示词工程除了基本的提…...

损失函数详解

1.损失函数 是一种衡量模型与数据吻合程度的算法。损失函数测量实际测量值和预测值之间差距的一种方式。损失函数的值越高预测就越错误&#xff0c;损失函数值越低则预测越接近真实值。对每个单独的观测(数据点)计算损失函数。将所有损失函数&#xff08;loss function&#xf…...

算法提高之树的中心

算法提高之树的中心 核心思想&#xff1a;树形dp 换根dp 每个点作为根节点 找其子树的最大距离和父节点的最大距离 dfs1&#xff1a;求子树对于当前根节点的最大距离和次大距离 求次大距离原因&#xff1a;如果当前节点是其父节点子树的最大路径上的点&#xff0c;最大距离不…...

【Java基础】面向对象是什么

面向对象和面向过程的对比 类和对象 class Car{} 是描述对象&#xff08;车&#xff09;的类&#xff0c;属于引用数据类型用来描述对象具有的属性(变量)和行为(函数)&#xff0c;属于概念模型 Car baomanew Car(); 对象需要由类来创建对象具备了类中定义的属性和行为 对象…...

家用洗地机应该怎么选?哪个牌子好?市场上主流洗地机品牌推荐

洗地机的出现&#xff0c;让越来越多的家庭享受清洁的过程&#xff0c;给人们腾出来更多的时间陪伴家人和休息。但是在选购一台洗地机前&#xff0c;大家多多少少肯定有些疑问&#xff0c;洗地机到底实不实用&#xff1f;好不好用&#xff1f;能扫干净吗&#xff1f;还有哪些好…...

python Django REST framework允许你根据API的版本提供不同的行为或数据

在Django REST framework中,版本控制是一个重要的功能,它允许你根据API的版本提供不同的行为或数据。以下是如何在Django REST framework中设置API版本控制的几种方法: 1. 使用URL路径参数 你可以通过URL路径中的参数来指定API的版本。例如: python复制 # urls.py from …...

unity给物体添加可以包裹所有子物体的BoxCollider

代码如下可直接调用 MeshTool.SpawnCollider(mode);using UnityEngine;public class MeshTool {public static Bounds SpawnCollider(Transform target){Vector3 pMax Vector3.zero;Vector3 pMin Vector3.zero;Vector3 center Vector3.zero;Vector3 oldPos target.transfor…...

2024五一数学建模A题思路代码与论文分析

2024五一数学建模A题完整代码和成品论文获取↓↓↓↓↓ https://www.yuque.com/u42168770/qv6z0d/gyoz9ou5upvkv6nx?singleDoc# 2024五一数学建模A题钢板最优切割路径问题需要建立的模型和算法: 图论 最短路径算法(Dijkstra算法、Floyd算法等) 动态规划 网格化离散建模 …...

ICode国际青少年编程竞赛- Python-1级训练场-基础训练2

ICode国际青少年编程竞赛- Python-1级训练场-基础训练2 1、 a 4 # 变量a存储的数字是4 Dev.step(a) # 因为变量a的值是4&#xff0c;所以Dev.step(a)就相当于Dev.step(4)2、 a 1 # 变量a的值为1 for i in range(4):Dev.step(a)Dev.turnLeft()a a 1 # 变量a的值变为…...

科技控必看!让你轻松成为机器人领域达人

科技控们注意了&#xff01;你是不是经常对机器人技术充满无限的好奇&#xff0c;却又因为缺乏合适的渠道而难以深入了解和亲身体验呢&#xff1f;别担心&#xff0c;BFT机器人&#xff0c;正是你探索机器人世界的绝佳之地&#xff01; 在这里&#xff0c;你将发现一个充满惊喜…...

Linux进程——Linux下常见的进程状态

前言&#xff1a;在进程学习这一块&#xff0c;我们主要学习的就是PCB这个进程控制块&#xff0c;而PBC就是用来描述进程的结构体&#xff0c;而进程状态就是PCB结构体中的一个变量。 本篇主要内容&#xff1a; 操作系统中的进程状态Linux下的进程状态 在开始之前&#xff0c;我…...

TCP长连接短链接

1、短连接 短连接是指通讯双方有数据交互时&#xff0c;就建立一个连接&#xff0c;数据发送完成后&#xff0c;则断开此连接&#xff0c;即每次连接只完成一项业务的发送。 2、长连接 长连接是指在一个连接上可以连续发送多个数据包&#xff0c;在连接保持期间&#xff0c;…...

代码随想录35期Day33-Java

Day33题目 LeetCode1005:K 次取反后最大化的数组和 核心思想&#xff1a;每次取反都取反最小的。如果有负数&#xff0c;则一直取反最小的负数&#xff0c;如果没有就取反正数。取反次数只需要看是奇数还是偶数。偶数则正数序列不变&#xff0c;奇数则最小的变成负数 class …...

PMP考试没过怎么办?如何补考?(附复核流程)

最近刷小红书&#xff0c;看很多人都在晒PMP通过的成绩截图&#xff0c;一方面为大家开心&#xff0c;终于拿到了期盼已久的PMP&#xff0c;但同时也有宝子发挥失常没通过考试&#xff0c;所以这期针对没考过的宝子们&#xff0c;出一期复盘文章&#xff0c;无论结果如何&#…...

自主实现Telnet流量抓取

自主实现Telnet流量抓取 根据测试需求&#xff0c;需要抓取Telnet流量包&#xff0c;使用wireshark Python&#xff08;socket、telnetlib库&#xff09;实现 实现代码 主要此处有坑&#xff0c; 根据协议规则&#xff0c;wireshark 默认端口为23 的是Telnet协议&#xff0…...

以瓦片地图为底图添加图表,保留拖拽功能

1、问题1 在地图上覆盖一个容器层&#xff0c;容器层上的内容显示不出来如何解决&#xff1f; 原因&#xff1a;堆叠指数问题 解决方案&#xff1a;绝对定位后&#xff0c;提升其z-index值即可 2、问题2 在地图上覆盖一个容器层&#xff0c;影响了地图拖拽&#xff0c;如何…...

Windows cmd bat之特殊符号及变量

cmd 常用变量 bat批处理常用命令 %1~%9表示拖入文件&#xff08;%0以外的输入文件&#xff09;,%0表示批处理文件本身 %0~%1字母意思基本相同&#xff0c;不区分大小写 ::打印当前窗口地址 echo “%cd%” %0 获取当前文件路径 %~d0 …...

用python写个控制MicroSIP自动拨号和定时呼叫功能(可用在小型酒店叫醒服务)

首先直接上结果吧&#xff0c;MicroSIP 助手&#xff0c;控制MicroSIP自动拨号&#xff0c;定时呼叫的非常实用小工具&#xff01; 在使用MicroSIP 助手之前&#xff0c;我们需要了解MicroSIP是什么&#xff0c;MicroSIP是一个SIP拨号软件&#xff0c;支持注册任意SIP平台实现拨…...

axios 取消token 模糊搜索

import axios from ‘axios’; // 创建一个取消令牌源&#xff08;cancel token source&#xff09; const CancelToken axios.CancelToken; const source CancelToken.source(); // 下拉框搜索函数 function search() { // 获取输入值 const inputValue document.getElem…...

【OTS4WORD】“精简并行过程”——容易剪裁的“软件过程改进方法和规范”模板

附件资源是作者针对SPP采用模板重新格式化打包制作&#xff0c;原模板具有格式不受控的缺点&#xff0c;导致文档编制过程中引起不必要的排版麻烦。 附件资源适用于希望改进工作流程&#xff0c;适配CMMI质量管理体系的公司或个人使用&#xff0c;质量改进管理组织、项目管理组…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

EtherNet/IP转DeviceNet协议网关详解

一&#xff0c;设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络&#xff0c;本网关连接到EtherNet/IP总线中做为从站使用&#xff0c;连接到DeviceNet总线中做为从站使用。 在自动…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...