Prompt Playground: 一个简易的提示词调试工具

将LLM引入到日常的开发工作中后,会面临大量的提示词调试的工作,由于LLM不确定性,这个工作会变得非常的繁琐,需要不断的调整,甚至需要大量的重试来确保输出结果的稳定性,以确保提示词的有效性。

通常情况下可能会使用OpenAI(Azure OpenAI) 提供的Playground 或者其他的一些工具例如 Semantic Kernel Tool进行调试。

但是不免还是会有一些不便,例如无法批量调用,无法快速的对比输出结果的差异等等。

于是我就写了一个小工具,方便进行提示词的调试工作,这就是 Prompt Playground.

功能介绍

目前Prompt Playground 处于早期开发阶段,已经支持了以下功能:

  1. 多模型支持: Azure Chat Completions(gpt-35,gpt-4)、 Baidu ERNIE Bot Turbo
  2. 批量结果生成: 可以一次性生成多个模型的结果,方便对比
  3. Semantic Kernel 提示词导入和保存: 支持skprompt.txt 格式的提示词文件导入和导出,方便进行提示词的调试和保存
  4. Semantic Kernel 提示词配置文件修改: 支持 skprompt.txt 对应 config.json 文件的加载和修改
  5. Semantic Kernel 提示词参数填充

界面介绍

界面相对简洁直观,主要分为三个部分:

菜单栏: 提供了一些基本的功能,例如模型接口的配置,skprompt.txt 文件导入

功能区: 包含提示词和config.json 文件的编辑区域,以及一些基本的操作按钮

结果区: 用于展示模型的输出结果和一些状态信息

使用方法

首次使用的时候需要先点击菜单栏的配置按钮,进行模型接口的配置,配置完成后,关闭即可。

Max Generate Results 指最大生成结果数量,默认为3。

完成配置之后,就可以在主界面直接输入提示词,点击生成(Ctrl + G)按钮,即可生成结果。

如果有使用 Semantic Kernel的项目,可以点击打开(Ctrl + O)菜单,打开skprompt.txt 文件,文件内容会自动填充到编辑框中.

此时也可以看到多了一个config.json的Tab,点击编辑框右侧的Tab即可切换到 config.json 的编辑界面,可以对config.json 进行修改。

修改完成之后,点击保存(Ctrl + S)按钮,即可保存修改后的skprompt.txt 和 config.json 文件。

构建与贡献

该项目目前在Github上开源,使用.NET 7 + AvaloniaUI 进行开发,支持跨平台,目前提供了 Windows 的构建版本。

有兴趣的同学或者有跨平台需要的同学可以自行构建。

如果有任何问题或者建议,也欢迎提issue或者PR。


本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。


WE WANT YOU!

Prompt Playground: 一个简易的提示词调试工具的更多相关文章

  1. 免费Midjourney AI绘画Prompt提示词平台合集

    Midjourney AI绘图最关键的地方在于Prompt提示词写的好,一个好的提示词可以让AI模型创造出更优质的绘图,以下是8个免费的Midjourney Prompt提示词辅助平台. ​ 编辑切换 ...

  2. AI绘画提示词创作指南:DALL·E 2、Midjourney和 Stable Diffusion最全大比拼 ⛵

    作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 自然语言处理实战系列:https://www.showmeai.tech ...

  3. Semantic Kernel 入门系列:🥑突破提示词的限制

    无尽的上下文 LLM的语言理解和掌握能力在知识内容的解读和总结方面提供了强大的能力. 但是由于训练数据本身来自于公共领域,也就注定了无法在一些小众或者私有的领域能够足够的好的应答. 因此如何给LLM ...

  4. Midjourney 提示词工具(10 个国内外最好最推荐的)

    Midjourney,是一个革命性的基于人工智能的艺术生成器,可以从被称为提示的简单文本描述中生成令人惊叹的图像.Midjourney已经迅速成为艺术家.设计师和营销人员的首选工具(包括像我这样根本不 ...

  5. 使用Phalcon框架开发一个简易的博客系统

    使用Phalcon PHP框架开发一个简易的博客系统(类似于CMS) 最近在做Phalcon(Phalcon在英文中指的是鸟类中飞得最快的那一个物种,由于是高性能框架,借用了这个词)相关的项目,由于刚 ...

  6. 实验楼 MySQL 基础课程 挑战:搭建一个简易的成绩管理系统的数据库

    传送门:https://www.shiyanlou.com/courses/running 介绍 现需要构建一个简易的成绩管理系统的数据库,来记录几门课程的学生成绩.数据库中有三张表分别用于记录学生信 ...

  7. Spring Security和 JWT两大利器来打造一个简易的权限系统。

    写在前面 关于 Spring Security Web系统的认证和权限模块也算是一个系统的基础设施了,几乎任何的互联网服务都会涉及到这方面的要求.在Java EE领域,成熟的安全框架解决方案一般有 A ...

  8. android开发学习---开发一个简易的短信发送器

    一.需求: 开发一个简易的短信发送器,输入:对方手机号码,短信内容,点击发送按钮,短信发送成功,对方手机成功收到短信. 其中要求短信内容过长时可以自动拆分,长度英文是160个英文,中文是70个,中英混 ...

  9. 从零实现一个简易的jQuery框架之二—核心思路详解

    如何读源码 jQuery整体框架甚是复杂,也不易读懂.但是若想要在前端的路上走得更远.更好,研究分析前端的框架无疑是进阶路上必经之路.但是庞大的源码往往让我们不知道从何处开始下手.在很长的时间里我也被 ...

  10. javascript基础修炼(12)——手把手教你造一个简易的require.js

    目录 一. 概述 二. require.js 2.1 基本用法 2.2 细说API设计 三. 造轮子 3.1 模块加载执行的步骤 3.2 代码框架 3.3 关键函数的代码实现 示例代码托管在我的代码仓 ...

随机推荐

  1. 快速重拾 Tmux

    Tmux 是一个 Linux (Mac OS也支持)下的终端复用器,相较于 Screen 更为强大,但快捷键和操作逻辑也更复杂,一段时间不用,就很容易忘记相关的命令和快捷键.本文旨在通过一个简单的场景 ...

  2. Redis 数据类型 String

    Redis 数据类型 String Redis主要支持的数据类型有5种:String ,Hash ,List ,Set ,和 Sorted Set Redis 常用命令,思维导图 >>&g ...

  3. 【实践篇】基于CAS的单点登录实践之路

    作者:京东物流 赵勇萍 前言 上个月我负责的系统SSO升级,对接京东ERP系统,这也让我想起了之前我做过一个单点登录的项目.想来单点登录有很多实现方案,不过最主流的还是基于CAS的方案,所以我也就分享 ...

  4. 循序渐进的掌握uni-app,两个小时完成一个简单项目——新闻App、新闻小程序

    效果图 一.创建项目 uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.Web(响应式).以及各种小程序(微信/支付宝/百度/头条/ ...

  5. Go语言实现分布式对象存储系统

    实现一个可扩展的,简易的,分布式对象存储系统 存储系统介绍 先谈谈传统的网络存储,传统的网络存储主要分为两类: NAS,即Newtwork Attached Storage,是一个提供了存储功能和文件 ...

  6. SpringBoot应用集成微服务组件Nacos

    目录 springboot与微服务组件nacos Nacos服务快速启动 STS4 开发工具 Maven 环境配置 STS4开发工具引入Maven配置 Maven Repo配置阿里云镜像源 Sprin ...

  7. 基于django+ansible+webssh运维自动化管理系统

    基于django+ansible+webssh运维自动化管理系统   前言 最初开发这个基于Django ansible运维自动化管理系统的想法其实从大学时候就已经有了,但是苦于技术原因和没有线上环境 ...

  8. python-SSTI模板注入

    一.python_SSTI模板注入介绍 ssti漏洞成因 ssti服务端模板注入,ssti主要为python的一些框架 jinja2 mako tornado django,PHP框架smarty t ...

  9. https 原理与实践

    https 原理与实践 经典三问,是什么,为什么,怎么做? 是什么 是一种http的安全协议,在tcp ip网络模型里,http应用层是在tcp 传输层之上的,https协议规定了在tcp传输层之上还 ...

  10. mysql 有关账号登录和重新设置密码操作

    #进入mysql客户端$mysqlmysql> select user(); #查看当前用户mysql> exit # 也可以用\q quit退出 # 默认用户登陆之后并没有实际操作的权限 ...