加州大学提出 PromptAgent 帮忙我们高效的使用 ChatGPT

2023-11-02 01:04

本文主要是介绍加州大学提出 PromptAgent 帮忙我们高效的使用 ChatGPT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本心、输入输出、结果

文章目录

  • 加州大学提出 PromptAgent 帮忙我们高效的使用 ChatGPT
    • 前言
      • 加州大学团队提出了可以自动优化 Prompt 的框架 —— PromptAgent
        • PromptAgent 原理
        • 论文
      • 实例介绍
      • PromptAgent 框架设计
      • PromptAgent 的策略优化过过程
      • PromptAgent 的结果是否具备普适性
      • 弘扬爱国精神

加州大学提出 PromptAgent 帮忙我们高效的使用 ChatGPT


编辑:简简单单 Online zuozuo
地址:https://blog.csdn.net/qq_15071263

在这里插入图片描述


如果觉得本文对你有帮助,欢迎点赞、收藏、评论

前言

要把大模型用好,必须得研究一下 Prompt 使用技巧,但有时候绞尽脑汁想的 Prompt 却无法获得期望的结果

所以,一个好的 Prompt 的重要性不言而喻,好的 Prompt 工程师新兴职业已经年薪达到了 30 万美元

在这里插入图片描述

加州大学团队提出了可以自动优化 Prompt 的框架 —— PromptAgent

PromptAgent 原理

通过结合大模型的自我反思特点与蒙特卡洛树搜索规划算法,自动迭代检查 Prompt ,发现不足,并根据反馈对其进行改进,寻找通往最优 Prompt 的路径

论文

在这里插入图片描述

论文下载地址

在这里插入图片描述

实例介绍

假设我们想要实现生物医学领域的命名实体识别任务,从句子中提取疾病等实体

Prompt :从句子中提取疾病或状况

使用 PromptAgent 进行优化

您的任务是提取疾病或疾病情况...请避免包含任何相关元素,如遗传模式(如常染色体显性)、基因或基因座(如PAH)、蛋白质或生物途径。...考虑具体的疾病和更广泛的类别,并记住疾病和情况也可以以常见的缩写或变体形式出现。以以下格式提供识别出的疾病或情况:{entity_1,entity_2,....}。...请注意,“locus”一词应被识别为基因组位置,而不是疾病名称。

在这里插入图片描述

在这里插入图片描述

PromptAgent 框架设计

PromptAgent 搜索策略使用的是著名的蒙特卡洛树搜索。整体框架如图

在这里插入图片描述

步骤说明

1、给定当前状态(也就是初始prompt),基本模型(gpt-3.5-turbo)从任务数据集获得初始输出,初始输出往往不如人意,需要进一步优化。
2、使用优化器模型(gpt-4)提供错误反馈并给出改进建议。
3、优化后的模型根据反馈更新prompt并过渡到下一个状态。

然后循环进行多次

在这里插入图片描述

PromptAgent 的策略优化过过程

蒙特卡洛树搜索(MCTS)通过逐步构建树状结构来实现策略搜索,其中每个节点表示一个状态,每条边表示状态转移的动作。MCTS执行选择、扩展、模拟和反向传播四步走来迭代搜索。迭代过程在达到预定义的迭代次数后结束,选择最高回报的路径作为最终的 Prompt

步骤

  • 选择
  • 扩展
  • 模拟
  • 反向传播

PromptAgent 使用预设的迭代次数执行上述四个操作,当达到迭代次数后,选择具有最高回报的最佳路径中的最佳节点(即 Prompt )进行最终评估

在这里插入图片描述

PromptAgent 的结果是否具备普适性

PromptAgent 输出的专家级 Prompt 优化,在性能低于 GPT3.5 的模型上,会导致显著的性能下降,作用是负面的,但是在性能高于 GPT3.5 的模型上执行时,可以获得更好的结果

弘扬爱国精神

在这里插入图片描述

这篇关于加州大学提出 PromptAgent 帮忙我们高效的使用 ChatGPT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/327034

相关文章

python中的flask_sqlalchemy的使用及示例详解

《python中的flask_sqlalchemy的使用及示例详解》文章主要介绍了在使用SQLAlchemy创建模型实例时,通过元类动态创建实例的方式,并说明了如何在实例化时执行__init__方法,... 目录@orm.reconstructorSQLAlchemy的回滚关联其他模型数据库基本操作将数据添

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Java使用Spire.Doc for Java实现Word自动化插入图片

《Java使用Spire.DocforJava实现Word自动化插入图片》在日常工作中,Word文档是不可或缺的工具,而图片作为信息传达的重要载体,其在文档中的插入与布局显得尤为关键,下面我们就来... 目录1. Spire.Doc for Java库介绍与安装2. 使用特定的环绕方式插入图片3. 在指定位

Springboot3 ResponseEntity 完全使用案例

《Springboot3ResponseEntity完全使用案例》ResponseEntity是SpringBoot中控制HTTP响应的核心工具——它能让你精准定义响应状态码、响应头、响应体,相比... 目录Spring Boot 3 ResponseEntity 完全使用教程前置准备1. 项目基础依赖(M

Java使用Spire.Barcode for Java实现条形码生成与识别

《Java使用Spire.BarcodeforJava实现条形码生成与识别》在现代商业和技术领域,条形码无处不在,本教程将引导您深入了解如何在您的Java项目中利用Spire.Barcodefor... 目录1. Spire.Barcode for Java 简介与环境配置2. 使用 Spire.Barco

Android使用java实现网络连通性检查详解

《Android使用java实现网络连通性检查详解》这篇文章主要为大家详细介绍了Android使用java实现网络连通性检查的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录NetCheck.Java(可直接拷贝)使用示例(Activity/Fragment 内)权限要求

C# 预处理指令(# 指令)的具体使用

《C#预处理指令(#指令)的具体使用》本文主要介绍了C#预处理指令(#指令)的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录1、预处理指令的本质2、条件编译指令2.1 #define 和 #undef2.2 #if, #el

C#中Trace.Assert的使用小结

《C#中Trace.Assert的使用小结》Trace.Assert是.NET中的运行时断言检查工具,用于验证代码中的关键条件,下面就来详细的介绍一下Trace.Assert的使用,具有一定的参考价值... 目录1、 什么是 Trace.Assert?1.1 最简单的比喻1.2 基本语法2、⚡ 工作原理3

C# IPAddress 和 IPEndPoint 类的使用小结

《C#IPAddress和IPEndPoint类的使用小结》本文主要介绍了C#IPAddress和IPEndPoint类的使用小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录一、核心作用网络编程基础类二、IPAddress 类详解三种初始化方式1. byte 数组初始化2. l

C语言逗号运算符和逗号表达式的使用小结

《C语言逗号运算符和逗号表达式的使用小结》本文详细介绍了C语言中的逗号运算符和逗号表达式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 在C语言中逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接其一般形式为:表达