gpt-prompt-engineer

gpt-prompt-engineer

智能提示工程优化系统

gpt-prompt-engineer是一款自动化提示工程工具,能够根据任务描述和测试用例生成、评估和排序多个提示。该工具支持多种先进AI模型,包括GPT-4、GPT-3.5-Turbo和Claude 3 Opus。通过ELO评分系统、分类功能和专门的Claude 3版本,gpt-prompt-engineer显著提升了提示工程的效率和质量。

GPT提示工程AI测试ELO评分系统Github开源项目

gpt-提示工程师

在Twitter上关注 在Colab中打开主版本 在Colab中打开分类版本

概述

提示工程有点像炼金术。没有明确的方法可以预测什么会最有效。一切都在于不断尝试,直到找到正确的提示。gpt-prompt-engineer是一个将这种实验提升到全新水平的工具。

只需输入任务描述和一些测试用例,系统就会生成、测试并对大量提示进行排名,找出表现最佳的提示。

2024年3月20日新增:Claude 3 Opus版本

我添加了一个新版本的gpt-prompt-engineer,充分利用了Anthropic的Claude 3 Opus模型。这个版本可以自动生成测试用例,并允许用户定义多个输入变量,使其更加强大和灵活。试试仓库中的claude-prompt-engineer.ipynb笔记本吧!

2024年3月20日新增:Claude 3 Opus -> Haiku转换版本

这个笔记本使您能够以通常成本的一小部分构建闪电般快速、高性能的AI系统。通过使用Claude 3 Opus建立潜在空间,并使用Claude 3 Haiku进行实际生成,您可以达到惊人的效果。该过程的工作原理是利用Opus生成一系列高质量的示例,然后用这些示例指导Haiku生成可比质量的输出,同时大幅降低延迟和每次生成的成本。试试仓库中的opus-to-haiku-conversion.ipynb笔记本吧!

特点

  • 提示生成:使用GPT-4、GPT-3.5-Turbo或Claude 3 Opus,gpt-prompt-engineer可以根据提供的用例和测试用例生成各种可能的提示。

  • 提示测试:真正的魔力发生在生成之后。系统会针对所有测试用例测试每个提示,比较它们的性能,并使用ELO评级系统对它们进行排名。

    <img width="1563" alt="2023年7月4日上午11点41分54秒的屏幕截图" src="https://github.com/mshumer/gpt-prompt-engineer/assets/41550495/f8171cff-1703-40ca-b9fd-f0aa24d07110">
  • ELO评级系统:每个提示最初的ELO评级为1200。当它们在生成测试用例的响应时相互竞争时,它们的ELO评级会根据表现而改变。这样,您可以轻松看出哪些提示最有效。

  • 分类版本gpt-prompt-engineer -- 分类版本笔记本专门用于处理分类任务。它通过将测试用例与预期输出('true'或'false')匹配来评估其正确性,并提供每个提示的得分表。

    <img width="1607" alt="2023年7月10日下午5点22分24秒的屏幕截图" src="https://github.com/mshumer/gpt-prompt-engineer/assets/41550495/d5c9f2a8-97fa-445d-9c38-dec744f77854">
  • Claude 3版本:claude-prompt-engineer笔记本专为与Anthropic的Claude 3 Opus模型配合使用而设计。它可以自动生成测试用例,并允许多个输入变量,使其更加强大和灵活。

  • Claude 3 Opus -> Haiku转换版本:旨在为您的用例保留Opus的质量,同时获得使用Haiku的速度和成本优势。

  • Weights & Biases日志记录:可选择将您的配置(如温度和最大令牌数)、每个部分的系统和用户提示、使用的测试用例以及每个候选提示的最终排名ELO评级记录到Weights & Biases。将use_wandb设置为True即可使用。

  • Portkey:可选工具,用于记录和跟踪所有提示链及其响应。将use_portkey设置为True即可使用。

设置

  1. 在Google Colab中打开笔记本或在本地Jupyter笔记本中打开。对于分类任务,请使用这个笔记本。对于Claude 3版本,请使用这个笔记本

  2. 将你的OpenAI API密钥添加到openai.api_key = "在此处添加你的密钥"这一行。如果你使用的是Claude 3版本,请将你的Anthropic API密钥添加到ANTHROPIC_API_KEY = "在此处添加你的密钥"这一行。

使用方法

  1. 如果你使用的是GPT-4版本,请定义你的用例和测试用例。用例是对你希望AI执行的任务的描述。测试用例是你希望AI回应的具体提示。例如:
description = "给定一个提示,生成一个落地页标题。" # 这种描述风格通常效果较好

test_cases = [
    {
        'prompt': '推广一款创新的新健身应用Smartly',
    },
    {
        'prompt': '为什么素食对你的健康有益',
    },
    {
        'prompt': '介绍一门新的数字营销在线课程',
    },
    {
        'prompt': '推出一条新的环保服装产品线',
    },
    {
        'prompt': '推广一个专注于预算旅行的新旅游博客',
    },
    {
        'prompt': '宣传一款用于高效项目管理的新软件',
    },
    {
        'prompt': '介绍一本关于掌握Python编程的新书',
    },
    {
        'prompt': '推广一个新的在线语言学习平台',
    },
    {
        'prompt': '宣传一项新的个性化膳食计划服务',
    },
    {
        'prompt': '推出一款新的心理健康和正念应用',
    }
]

对于分类版本,你的测试用例应该采用以下格式:

test_cases = [
    {
        'prompt': '我今天过得很棒!',
        'output': 'true'
    },
    {
        'prompt': '我感觉很沮丧。',
        'output': 'false'
    },
    // 在此添加更多测试用例
]

对于Claude 3版本,除了用例描述外,你还可以定义输入变量:

description = "给定一个提示,生成个性化的邮件回复。"

input_variables = [
    {"variable": "SENDER_NAME", "description": "发送邮件的人的名字。"},
    {"variable": "RECIPIENT_NAME", "description": "接收邮件的人的名字。"},
    {"variable": "TOPIC", "description": "邮件的主要话题或主题。一到两句话。"}
]

测试用例将根据用例描述和输入变量自动生成。

  1. 选择要生成的提示数量。请注意,如果生成大量提示,费用可能会很高。10个是一个不错的起点。

  2. 调用generate_optimal_prompt(description, test_cases, number_of_prompts)来生成潜在提示列表,并测试和评估它们的性能。对于分类版本,只需运行最后一个单元格。对于Claude 3版本,调用generate_optimal_prompt(description, input_variables, num_test_cases, number_of_prompts, use_wandb)

  3. 最终的ELO评分将以表格形式打印,按降序排列。评分越高,提示效果越好。

    <img width="1074" alt="屏幕截图2023-07-04 11:48:45" src="https://github.com/mshumer/gpt-prompt-engineer/assets/41550495/324f90b8-c0ee-45fd-b219-6c44d9aa281b">

对于分类版本,每个提示的得分将以表格形式打印(如上图所示)。

欢迎贡献!一些想法:

  • 使用多个不同的系统提示生成器,创建不同风格的提示,以覆盖更多领域(例如:示例、详细、简短、Markdown等)
  • 自动生成测试用例
  • 扩展分类版本,使用tiktoken支持两个以上的类别

许可证

本项目采用MIT许可。

联系方式

Matt Shumer - @mattshumer_

项目链接:https://github.com/mshumer/gpt-prompt-engineer

最后,如果你想尝试比这更酷的东西,可以注册HyperWrite个人助手(我大部分时间都在开发这个)。这基本上是一个能够访问实时信息的AI,它a)在自然写作方面非常出色,b)可以操作你的网络浏览器来完成任务。

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多