LangGPT:高质量提示词框架

题目:LangGPT: Rethinking Structured Reusable Prompt Design Framework for LLMs from the Programming Language
作者: Ming Wang; Yuanzhong Liu; Xiaoming Zhang; Songlian Li; Yijie Huang; Chi Zhang; Daling Wang; Shi Feng; Jigang Li
DOI: 10.48550/arXiv.2402.16929
摘要: LLMs have demonstrated commendable performance across diverse domains. Nevertheless, formulating high-quality prompts to effectively instruct LLMs poses a challenge for non-AI experts. Existing research in prompt engineering suggests somewhat fragmented optimization principles and designs empirically dependent prompt optimizers. Unfortunately, these endeavors lack a structured design template, incurring high learning costs and resulting in low reusability. Inspired by structured reusable programming languages, we propose LangGPT, a dual-layer prompt design framework as the programming language for LLMs. LangGPT has an easy-to-learn normative structure and provides an extended structure for migration and reuse. Experiments illustrate that LangGPT significantly enhances the capacity of LLMs to produce responses of superior quality compared to baselines. Moreover, LangGPT has proven effective in guiding LLMs to generate high-quality prompts. We have built a community on LangGPT to facilitate the tuition and sharing of prompt design. We also analyzed the ease of use and reusability of LangGPT through a community user survey.
GitHub: 2024/6/28 21:04:26

📜 研究核心

⚙️ 内容

img

研究团队开发了一种名为LangGPT的框架,旨在为大型语言模型(LLMs)提供结构化且可重用的提示设计方法。LangGPT的设计灵感来源于编程语言的结构化特性,以解决非AI专家在为LLMs设计高效指令时面临的挑战。该框架通过定义一套标准模块和基本元素,以及扩展模块和自定义元素,提升了提示设计的通用性和复用性。

💡 创新点

  • 结构化双层设计:LangGPT引入了一个类似面向对象编程的结构化双层框架,便于非专业用户学习和应用。

  • 扩展模块与自定义元素:允许用户根据特定应用场景需求,灵活添加新的模块或元素,从而提升框架的适应性和灵活性。

  • 社区支持:建立了LangGPT社区,促进提示设计的交流和共享,增强了框架的实用性和生态建设。

  • 实验验证:通过在写作和角色扮演场景下与用户构建的任务助手对比实验,证明了LangGPT能显著提高LLMs生成高质量响应的能力。

🧩 不足

  • 泛化能力:对于未涵盖的应用场景,其效果可能受限,需要更多领域知识和模块定制。

  • 学习成本:虽然设计为易学,但新用户仍需时间掌握如何有效利用扩展模块和自定义元素。

  • 优化空间:未来可进一步减少Token消耗,并增加对第三方工具的支持,提升效率和兼容性。

🔁 研究内容

💧 数据

实验数据来源于用户在LangGPT社区构建并分享的五种任务助手,涉及写作和角色扮演两大类应用场景。这些数据反映了真实世界的使用情况,增强了实验的有效性和普适性。

👩🏻‍💻 方法

  • 基础模块设计:定义了如Profile(角色设定)、Goal(目标)、Constraint(约束条件)、Workflow(工作流程)、Style(风格)等模块。

  • 扩展机制:允许用户根据需求自定义模块和元素,以适应更广泛的应用场景。

  • 设计流程:提供了设计模板和流程图,帮助用户快速分析需求,高效创建高质量提示。

🔬 实验

本文介绍了作者进行的两个方面的实验:任务执行能力和语言模型(LLM)的可用性。在每个场景中,选择了五个由用户构建并共享的任务特定助手。为了比较,选择了两种基线方法:仅包含指令的提示和基于CRISPE框架的设计规则。结果表明,这些方法都存在一些缺陷,因此设计了LangGPT。此外,还需要验证提示诱导LLM的能力,这是提示设计最重要的目的。

在大型语言模型方面,使用了不同的模型进行了实验,并给出了它们的大小。对于评价指标,由于任务场景的复杂性,缺乏客观的评价指标。因此,通过人类评价和LLM评价来评估LLM执行任务的能力。为确保评价的合理性,为两个场景定义了评价标准。对于写作任务,评估者将评估LLM在执行任务方面的有效性,从三个维度进行评估:文本连贯性、格式规范性和内容丰富度。对于角色扮演任务,也设计了三个维度的评价指标:语言风格、特征相关性和主题一致性。

结果表明,LangGPT比其他方法更好地诱导LLM执行任务。此外,还发现某些具有严格安全限制的LLM会在回答有关自夸和狂妄的问题时拒绝回答。LangGPT可以使这些LLM意识到这只是说话的方式而不是真正有害的行为,并引导他们回答。而其他两种基线方法则无法做到这一点。

为了评估LangGPT的易用性,作者在一个在线社区中进行了用户调查。问卷包括关于LangGPT体验的完整问题,以确保答案的质量。问卷中还包括一个关于易用性的评分问题。结果显示,87.81%的用户给了3分或更高的分数,这表明用户对LangGPT的易用性表示认可。此外,LangGPT在用户调查中的整体满意度得分为8.48分(满分10分)。

最后,为了更直观地展示LangGPT的效果,作者从实验中筛选出了一些具体案例。除了直接效果比较外,还尝试使用LangGPT指导LLM生成高质量的提示。例如,在MBTI评估提示的生成中,如果直接询问LLM,可能会被拒绝。但是,LangGPT可以指导LLM生成无害且高质量的提示。

test1
test2

📜 结论

实验表明,LangGPT能够显著增强LLMs产生高质量响应的能力,同时提升了提示设计的效率和可复用性。社区用户的反馈证实了其易用性和复用价值。未来研究将致力于框架的进一步优化和扩展。

🤔 个人总结

LangGPT的提出是一个重要的进步,它通过结构化的提示设计框架降低了LLMs使用的门槛,尤其对非专业人士来说。然而,如何更好地引导用户理解和应用扩展模块,以及如何确保框架在不断变化的应用需求中保持先进性和适用性,是未来可以深入探索的方向。此外,考虑跨语言和文化的适应性,以及如何集成更多的自动化优化工具,也是潜在的改进方向。

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

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

相关文章

阿里云 CosyVoice 语音合成大模型 API 实践

前言 最近大模型这么火,就想着玩一下,作为非 AI 从业者,最好的方式就是调用云服务的 API 来构建自己的 AI 应用。首选当然是国外的 ChatGPT API,但是说实话那个玩意有点贵,而且最近国内也被封禁不让调用了&#xff0c…

docker-本地部署-后端

前置条件 后端文件 这边是一个简单项目的后端文件目录 docker服务 镜像文件打包 #命令行 docker build -t author/chatgpt-ai-app:1.0 -f ./Dockerfile .红框是docker所在文件夹 author:docker用户名chatgpt-ai-app:打包的镜像文件名字:1.0 &#…

事务的特性-原子性(Atomicity)、一致性(Consistency)、隔离性(Asolation)、持久性(Durability)

一、引言 1、数据库管理系统DBMS为保证定义的事务是一个逻辑工作单元,达到引入事务的目的,实现的事务机制要保证事务具有原子性、一致性、隔离性和持久性,事务的这四个特性也统称为事务的ACID特性 2、当事务保持了ACID特性,才能…

2, 搭建springCloud 项目 测试demo

上篇文章 新建了父依赖服务,这篇文章就建两个demo测试服务。 因为后面需要做服务间的通讯测试,所以至少需要建两个服务 建个子模块 同样的方式建连个demo服务 给java 和resources目录添加属性 在resources目录下建一个applications.yml文件,…

中小企业数字化转型如何选择适合自己的MES系统?

随着信息技术的飞速发展,数字化转型已成为中小企业提升竞争力、实现可持续发展的关键途径。在数字化转型过程中,制造执行系统(MES)作为连接企业资源计划(ERP)与车间现场管理的桥梁,扮演着至关重…

mac压缩解压工具:Keka for Mac 中文版下载

Keka是一个压缩软件,适用于macOS操作系统。它的界面友好,功能强大,可以帮助用户轻松地压缩和解压文件。以下是Keka的一些特点: 界面简洁:Keka的设计风格与macOS系统保持一致,操作界面简洁明了,…

【内网安全】组策略同步-不出网隧道上线-TCP转ICMP

目录 域控-防火墙-组策略对象同步演示1、打开组策略管理,新建一个GPO连接 取名fhq(防火墙)2、编辑fhq并设置防火墙状态3、命令:gpupdate/force 更新策略4、域控主机新增规则5、域内用户主机更新规则 域控-防火墙-组策略不出网上线演示 ICMP协议上线&…

任意密码重置漏洞

文章目录 1. 任意密码重置漏洞原理2. 任意密码重置漏洞产生原因3. 任意密码重置漏洞场景3.1 验证码爆破3.2 验证凭证回传3.3 验证凭证未绑是用户3.4 跳过验证步骤3.5 凭证可预测3.6 同时向多个账户发送凭证 4. 任意密码重置经典案例4.1 中国人寿某重要系统任意账户密码重置4.2 …

命令行中关于windows hash md5 , mac hash md5 , linux hash md5 文件校验方式

md5, sha-1 ,sha256. windows certutil -hashfile filename md5certutil -hashfile filename sha1certutil -hashfile filename sha256macos 平台 md5 filenameshasum -a 1 filenameshasum -a 256 filenamelinux 平台 md5sum filenameshasum -a 1 fil…

Windows平台使用S3Browser连接兼容的对象存储

本文记录了在Windows平台使用S3Browser连接兼容的对象存储的过程 一、安装S3Browser 1、下载 S3Browser官网:https://s3browser.com/ 直接下载:https://s3browser.com/download/s3browser-11-6-7.exe 2、安装 3、同意授权后确定安装目录 4、勾选立即…

VsCode:配置TypeScript开发环境

一、前提 电脑已经安装了npm 何如安装npm,请点击查看Node.js、npm常用命令、安装多个node版本 提醒:下文讲解操作是在mac 系统进行的,TypeScript简称:ts 二、安装TypeScript 在终端里执行命令:npm install -g typescr…

uni-appx使用form表单页面初始化报错

因为UniFormSubmitEvent的类型时 e-->detail-->value,然后没有了具体值。所以页面初始化的时候 不能直接从value取值,会报错找不到 所以form表单里的数据我们要设置成一个对象来存放 这个问题的关键在于第22行代码 取值: 不能按照点的方式取值 …

【CT】LeetCode手撕—300. 最长递增子序列

目录 题目1- 思路2- 实现⭐300. 最长递增子序列——题解思路 3- ACM 实现 题目 原题连接&#xff1a;300. 最长递增子序列 1- 思路 模式识别&#xff1a;最长递增子序列——> 利用动规五部曲 解决 ——> 借助 i 和 j 指针&#xff0c;其中 j < i 动规五部曲 1.定义…

Ubuntu安装、更新和删除软件

Ubuntu安装、更新和删除软件 问题命令行直接安装、更新和删除软件命令行直接安装软件命令行直接更新软件命令行直接删除软件 手动下载后命令行安装、更新和删除软件手动下载后命令行安装软件手动下载后命令行更新软件手动下载后命令行删除软件 手动下载后在桌面环境下安装、更新…

grpc学习golang版( 八、双向流示例 )

系列文章目录 第一章 grpc基本概念与安装 第二章 grpc入门示例 第三章 proto文件数据类型 第四章 多服务示例 第五章 多proto文件示例 第六章 服务器流式传输 第七章 客户端流式传输 第八章 双向流示例 文章目录 一、前言二、定义proto文件三、编写server服务端四、编写client客…

压缩pdf在线工具,压缩pdf大小的软件

如何有效地压缩PDF文件大小却是个问题&#xff0c;为了获得最佳的压缩效果&#xff0c;我们必须依赖专业的压缩工具&#xff0c;采用错误的方法可能会对文件内容产生负面影响&#xff0c;甚至导致文件无法打开&#xff0c;今天&#xff0c;我将分享一些独特的压缩技巧&#xff…

【语言模型】深入探索语言模型中的神经网络算法:原理、特点与应用

随着人工智能技术的飞速发展&#xff0c;神经网络算法在语言模型中的应用日益广泛&#xff0c;为自然语言处理领域带来了革命性的变革。本文将深入探讨当前语言模型中常用的几种神经网络算法&#xff0c;包括全连接神经网络、卷积神经网络、循环神经网络、长短期记忆网络、门控…

ffmpeg使用png编码器把rgb24编码为png图像

version #define LIBAVUTIL_VERSION_MAJOR 58 #define LIBAVUTIL_VERSION_MINOR 12 #define LIBAVUTIL_VERSION_MICRO 100 note 不使用AVOutputFormat code void CFfmpegOps::EncodeRGB24ToPNG(const char *infile, const char *width_str, const char *height_str, c…

【学习笔记】爱立信SPO 1400 CRAFT软件基础知识4——图形用户界面之通知列表和状态栏

一、前期准备 提示&#xff1a;下面所有学习内容都是基于以下条件完成的 条件1.已经正确安装并正常运行SPO 1400 CRAFT软件&#xff08;以下简称LCT&#xff09; 条件2.确认已正确使用爱立信SPO 1400 CRAFT软件通过网络登录设备&#xff08;以下简称NE&#xff09; 具体登录…

嵌入式应用开发屏幕教程8080并口通信

目录 #8080相关概念介绍 #8080并行通信硬件连接部分 #并行通信硬件电路连接图 #并行通信读数据规定 #并行通信写数据规定 #8080相关概念介绍 通信协议分为串行通信协议&#xff0c;并行通信协议&#xff0c;而本章所讲的8080是一种并行通信协议&#xff0c;并行通信协议 Pa…