提示工程实战案例

如果你在 2023 年听说过生成式人工智能(Generative AI),你一定也听说过提示工程(Prompt Engineering)。

通过快速的互联网搜索或质疑 GenAI 本身,人们可以轻松找到相关的定义、提示技术,例如 零样本、少样本、思维链、后退等。最简单的提示工程也可以是对 GenAI 进行深思熟虑的相关语言输入,以获得更好的结果。 然而,当我们谈论为企业注入 GenAI 并考虑收入、效率、生产力和声誉因素的生产应用场景时,它很快就会变得复杂。

在这里,我将分享它在现实中的样子(在弄脏我的手之后)以及我们为什么这样做。让咱们进入正题吧。

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包

1、单输入场景

我决定将提示工程应用于 Web 分类测试目的,其中流程使用大型语言模型 (LLM) 来总结 Web URL 的内容,并将 URL 分类为相关类别,例如应用程序、学术、游戏、无、频道。 请注意,所有这一切都发生在实际应用程序部署之前 - 这是该案例中提示工程的全部要点。

图1

图 1 显示了在给定上下文中实现预期结果所需的所有流程。 让我详细解释一下。

提供的输入字符串是一个网址。 我使用 IBM Consulting Public Web URL,如下所示:

Python 文件 Fetch_text_content_from_url.py 包含从给定 Web URL 获取内容的代码。

然后我在流程中选择了LLM(已知的模式之一)。 在这里, summary_text_content(通过其 jinja 文件)做了两件事。 它带来了与所选LLM的联系。 在这里,我还提供了系统提示 “summarize the following text in one paragraph. Within 100 words. Do not add any information that is not in the text”

它的输出如下所示:

Python 代码的进一步步骤 ( prepare_examples.py) 提供了一些 Web URL、内容、类别和证据的示例,用于建立 LLM 理解的关系。

然后,对于流程的下一步,我选择了相同的 LLM 进行分类步骤。  Classify_with_llm 步骤(通过其 jinja 文件)是生成 Web URL、持续时间和用于生成分类输出的标记的分类。 其输出如下所示:

此流程的最后一步是仅以文字形式生成分类输出。 这里的 Python 代码 ( convert_to_dict.py) 完成了所需的工作。 其输出如下所示:

结论:它准确地总结了 URL 内容,准确地提供了其分类为“无”(来自定义的类别)。 它提供的执行持续时间(性能)为 0.40682 秒,生成的令牌总数为 692。

2、多输入场景)

好的,如果手动执行,这就是事情变得复杂的地方。 如果我必须部署一个应用程序来汇总和分类(并预先测试)数百、数千或数万个 Web URL(甚至更多),该怎么办? 我们可能需要几个月的时间,对吗? 不对 !

这就是批量运行发挥作用的地方。

在此示例中,我构建了一个包含 84 个 Web URL 的数据集。 我配置了相同的提示流程,但使用“使用我的数据批量运行”。

好奇看看,流运转是什么样子的? 我知道那是什么感觉。 它看起来如下:

图2

很酷,耶!

好吧,但是我们为什么这么做呢? 还记得原理吗? 我们说过——准确性、性能(持续时间)和令牌数量。

这样,批量运行就成功完成了。 它生成了我需要的所有指标。 我可以在执行过程中实时监控它。 成功完成后,它创建了所需的输出、日志、指标、跟踪和代码快照(用于下载)。

输出:

它产生的输出如下所示。 它显示每个 URL 分析的状态(几页并且可以导出)。

日志:

它还生成如下所示的日志。 可以仔细检查上面输出中检测到的任何故障,以进行故障排除。 它可以很容易地下载。

痕迹:

它为每个被分析的 URL 生成每个步骤的跟踪(输出几个页面,可以轻松下载)。

评估指标:

它产生了我热切等待的指标,即准确性、性能(持续时间)和令牌计数,如下所示。

-> 准确度 = 0.58(越接近 1,越好)。

-> 性能(持续时间)= 12 分钟 6.39 秒(84 个网址)

-> 代币数量= 95010(与LLM平台成本有关)

作为下一步,我可以通过重新运行来优化数据集以实现更高的准确性(因为我分析了日志中的几个步骤失败),或者我可以尝试与选择的另一个 LLM 进行相同的操作,或者我可以克隆此提示,或者我可以 将此提示(或批处理作业)部署为端点,或者我可以通过重新运行相同的提示来进一步执行定制的评估。


原文链接:提示工程实战案例 - BimAnt

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

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

相关文章

机器学习---半监督学习简单示例(标签传播算法)

1. 使用半监督学习方法 Label Spreading 在一个生成的二维数据集上进行标签传播 import numpy as np import matplotlib.pyplot as plt from sklearn.semi_supervised import label_propagation from sklearn.datasets import make_circles# generate ring with inner box n_s…

Apache Zeppelin 整合 Spark 和 Hudi

一 环境信息 1.1 组件版本 组件版本Spark3.2.3Hudi0.14.0Zeppelin0.11.0-SNAPSHOT 1.2 环境准备 Zeppelin 整合 Spark 参考:Apache Zeppelin 一文打尽Hudi0.14.0编译参考:Hudi0.14.0 最新编译 二 整合 Spark 和 Hudi 2.1 配置 %spark.confSPARK_H…

tee漏洞学习-翻译-2:探索 Qualcomm TrustZone的实现

原文:http://bits-please.blogspot.com/2015/08/exploring-qualcomms-trustzone.html 获取 TrustZone image 从两个不同的位置提取image 从手机设备本身从google factory image 已经root的Nexus 5设备,image存储在eMMC芯片上,并且eMMC芯片…

分享65个节日PPT,总有一款适合您

分享65个节日PPT,总有一款适合您 65个节日PPT下载链接:https://pan.baidu.com/s/1hc1M5gfYK8eDxQVsK8O9xQ?pwd8888 提取码:8888 Python采集代码下载链接:采集代码.zip - 蓝奏云 学习知识费力气,收集整理更不易。知…

SQLite database实现加密

注意:以下操作以VS2022为开发工具,以C#为开发语言。 数据加密原因 软件在使用的各个场景,很多都需要数据具有保密性,于是对于数据库就需要加密。特别是在某些特定领域或存储敏感数据尤其如此。 SQLite加密实现 SQLite加密有两种…

Go语言每日一练——链表篇(五)

传送门 牛客面试笔试必刷101题 ----------------合并k个已排序的链表 题目以及解析 题目 解题代码及解析 解析 这一道题与昨天的合并链表题目类似,但是由于有K个且时间复杂度要求控制在O(nlogn),这里主要有两种解法:一种是依旧使用归并来…

Arduino 串口绘图仪简单使用

1、工具所在位置 串口绘图仪实际上是从预设的串口获取值并将其绘制在xy轴图每获取到一组数据向左滑动一个单位,读取数据的速度起快,滑动就越快。 Y轴代表来自串口的值,可以是单个也可以是一组 。在读取串口数据时遇到"\n"&#xf…

正点原子-STM32通用定时器学习笔记(1)

1. 通用定时器简介(F1为例) F1系列通用定时器有4个,TIM2/TIM3/TIM4/TIM5 主要特性: 16位递增、递减、中心对齐计数器(计数值:0~65535); 16位预分频器(分频系数&#xff…

RP2040 SPI

SPI 的库文件是arduino开源库,在程序中include。 SPI IIC都是通信协议【模块】,需要硬件支持,MCU都会集成相应的模块。arduino都集成在了内核中,直接用API函数调用即可。其他单片机的架构也是相同的。 SPI的库和函数及其相关说明…

GUI编程..

1.GUI(Graphical User Interface 图形用户界面) 所谓GUI 指的是在计算机中采用图形方式展示用户的界面 在GUI之前采用的是字符界面 有了GUI之后 采用的则是图形界面 2.Java的GUI编程方案 常见的有四种 3.Swing 1.实现一个窗口 public class Main{public static void ma…

眼动追踪系统体验实验(脑与认知期末考核)

实验名称:眼动追踪系统体验实验 实验目的: 本实验旨在通过体验脑与认知眼动追踪系统,了解该技术在心理学、认知科学等领域的应用,理解它是怎样工作的,探究眼动追踪技术如何揭示人类认知过程的奥秘。 实验环境&#…

155基于matlab 的形态学权重自适应图像去噪

基于matlab 的形态学权重自适应图像去噪;通过串并联的滤波降噪对比图,说明并联降噪的优越性。输出降噪前后图像和不同方法的降噪情况的信噪比。程序已调通,可直接运行。 155matlab 自适应图像降噪 串并联降噪 (xiaohongshu.com)

一些参数(仅供个人理解)

1.mAP: 数据集的平均准确率 mAP50-95:mAP阈值为50到mAP阈值为95,间隔5%,取得10个mAP值,然后对这十个值取平均。 目标检测评估指标mAP:从Precision,Recall,到AP50-95【未完待续】_map50和map50-95-CSDN博客 2.IoU&a…

使用VASPKIT生成非整数倍扩胞结构

在计算某些任务时需要根据原胞进行非对称或者根号倍扩胞,使用vaspkit可以构建一个扩胞倍数矩阵,这样可以获得特定方向非整数倍的扩胞结构。 这里使用的命令为vaspkit的400模块 注意400的命令会让你连续输入三行,每行都需要三个数值&#xff0…

智能优化算法 | Matlab实现飞蛾扑火(MFO)(内含完整源码)

文章目录 效果一览文章概述源码设计参考资料效果一览 文章概述 智能优化算法 | Matlab实现飞蛾扑火(MFO)(内含完整源码) 源码设计 %%%% clear all clc SearchAgents_no=100; % Number of search ag

使用zip4j解压zip时文件名乱码解决最好的方案

zip4j解压zip时,出现中文乱码,看了下,zip4j解压时支持设置文件编码,我们只需要识别文件是不是utf-8编码,如果不是utf-8就使用gbk解压,但是这个判断没有100%准确的方式,我试过通过字节流的bom标记…

《动手学深度学习(PyTorch版)》笔记7.5

注:书中对代码的讲解并不详细,本文对很多细节做了详细注释。另外,书上的源代码是在Jupyter Notebook上运行的,较为分散,本文将代码集中起来,并加以完善,全部用vscode在python 3.9.18下测试通过&…

聚观早报 | iOS 17.4正式版将上线;魅族21 Pro或下月发布

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 2月5日消息 iOS 17.4正式版将上线 魅族21 Pro或下月发布 小米MIX Flip细节曝光 OPPO Find X7 Ultra卫星通信版 …

BUUCTF-Real-[ThinkPHP]IN SQL INJECTION

目录 漏洞描述 漏洞分析 漏洞复现 漏洞描述 漏洞发现时间&#xff1a; 2018-09-04 CVE 参考&#xff1a;CVE-2018-16385 最高严重级别&#xff1a;低风险 受影响的系统&#xff1a;ThinkPHP < 5.1.23 漏洞描述&#xff1a; ThinkPHP是一款快速、兼容、简单的轻量级国产P…

Java实现用户画像活动推荐系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 兴趣标签模块2.3 活动档案模块2.4 活动报名模块2.5 活动留言模块 三、系统设计3.1 用例设计3.2 业务流程设计3.3 数据流程设计3.4 E-R图设计 四、系统展示五、核心代码5.1 查询兴趣标签5.2 查询活动推荐…