ssprompt:一个LLM Prompt分发管理工具

阅读顺序

  • 🌟前言
  • 🔔ssprompt介绍
      • 命令介绍
      • Metafile介绍
        • 版本依赖规则
    • 🌊 PromptHub
        • GitHub Token
    • 🚀 Quick Install
      • 系统依赖
      • pip安装
      • Linux, macOS, Windows (WSL)
      • Windows (Powershell)
    • 🚩 Roadmap
    • 🌏 项目交流讨论

🌟前言

自从OpenAI掀起了一轮新的AI革命,国内外众多玩家入场接受时代洗礼,一时间LLM相关技术井喷,而提示工程( prompt engineering )就在其中。
它就像是为大语言模型(LLM)设计的"语言游戏"。通过这个"游戏",我们可以更有效地引导 LLM 来处理问题。在真正的通用智能到来前,基于当前的LLM范式,要充分发挥LLM的优势,Prompt设计越来越复杂化,进一步Prompt的代码化,模块化会越发明显,同时写prompt将会成为AI时代人的基本技能。
基于此,我构思创作了ssprompt,希望每个人都能利用Prompt,享受AI时代红利

🔔ssprompt介绍

ssprompt是一个Prompt分发管理工具,定义了一套Prompt分发规则
支持创建Prompt工程和拉取Prompt Hub上对应Prompt的工程文件到本地工程

image.png

注:以下为 0.1.0 第一版ssprompt的内容介绍,项目还在持续完善,如有疏漏或不足之处请包涵了解,谢谢~

ssprompt show

命令介绍

  • ssprompt new -> 新建一个新的Prompt工程,指定工程目录,Prompt类型等参数
  • ssprompt init -> 基于当前目录,引导创建一个Prompt工程
  • ssprompt add -> 添加一个不同Prompt类型和相关依赖到metafile,并生成相应的Prompt工程目录(工程配置文件)
  • ssprompt show -> 展示本地Prompt工程的基本信息(metafile)或拉取PromptHub上对应工程的信息
  • ssprompt pull -> 拉取远端工程到本地项目中,相关工程可以引用Prompt文件或代码
  • ssprompt list -> 展示当前版本ssprompt支持的命令
  • ssprompt about -> 展示ssprompt的介绍和版本信息
  • ssprompt version -> 展示ssprompt的版本信息

更多命令参数详情,请使用ssprompt [command] -h进一步了解

Metafile介绍

ssprompt通过定义prompt工程的Meta文件来约束管理Prompt分发规则和内容
ssprompt关于prompt定义了四种类型的Prompt

  • Text
  • Json
  • Yaml
  • Python

可以按需生成对应的Prompt上传到PromptHub进行分发
metafile以Prompt工程名称命名,如prompt_project.yaml ,是ssprompt管理Prompt分发的关键

注:上述类型结合参考了langchain和haystack

#Prompt工程基础信息
meta:name: open #工程名称author: - ptonlix <baird0917@163.com>description: ''license: MIT #Prompt工程遵循的协议llm:    #Prompt支持的LLM模型- gpt-3.5-turbo readme_format: md #Readme文件格式tag:  #Prompt工程相关类型领域,如question-generation common为公共领域- commonversion: 0.1.0 #版本号#Text类型的Prompt
text_prompt:dirname: text #目录名称, 默认为text#Json类型的Prompt
json_prompt:dirname: json #目录名称,默认为jsonlist:                  #支持多个json类型子工程- dependencies:   langchain: 0.0.266 #json解析依赖的三方库版本号,如langchain等name: example        #子工程名,对应生成工程目录名#Yaml类型的prompt
yaml_prompt: dirname: yaml #目录名称,默认为yamllist:					 #支持多个yaml类型子工程- dependencies:		langchain: 0.0.266 #yaml解析依赖的三方库版本号,如langchain等name: example		 #子工程名,对应生成工程目录名#Python类型的Prompt
python_prompt:	#目录名称,默认为yamldirname: python		 #目录名称,默认为yamllist: 				 #支持多个yaml类型子工程- dependencies:langchain: 0.0.266 #Python库引用的三方库版本号,如langchain等name: example		 #子工程名,对应生成工程目录名

版本依赖规则

当前版本支持三种版本依赖规则

  • Caret requirements

    • ^1.2.3
  • Tilde requirements

    • ~1.2.3
  • Wildcard requirements

    • 1.2.*
  • laster

    • 支持最新版本

🌊 PromptHub

目前ssprompt生成的Prompt工程,依赖Git管理,通过Git将Prompt工程上传到Git仓库以便ssprompt拉取引用

当前默认PromptHub托管在GitHub ptonlix/PromptHub

目前PromptHub的Prompt工程还在持续建设中 🕜

后续会陆续收集和建设更多Prompt工程发布到我们PromptHub ☁️

🍗 欢迎大家上传自己的Prompt到PromptHub,共建一个开源的Prompt生态

GitHub Token

由于目前GitHub API请求访问限制,不采用authentication访问,会限制一个小时只能访问60次,导致使用ssprompt频繁拉取工程时存在403限制请求

推荐在使用ssprompt时,设置GitHub Personal access tokens到环境变量

export GITHUB_ACCESS_KEY=`Your GitHub Token`

🚀 Quick Install

系统依赖

Ssprompt requires Python 3.10+

✨支持多平台使用,满足广大Prompt Engineer💻

pip安装

pip install ssprompt

Linux, macOS, Windows (WSL)

curl -sSL https://raw.githubusercontent.com/ptonlix/ssprompt/main/install.py | python3 -

Windows (Powershell)

(Invoke-WebRequest -Uri https://raw.githubusercontent.com/ptonlix/ssprompt/main/install.py -UseBasicParsing).Conte

🚩 Roadmap

  • 搭建ssprompt初步框架,完善基本功能
  • 完善ssprompt命令
    1. pull命令支持拉取特定类型Prompt工程到本地
    2. show命令支持展示更多PromptHub信息
  • 搭建和完善PromptHub
    1. 收集全网优秀的Prompt案例,使用ssprompt 构建工程并上传到PromptHub
  • ssprompt网站与文档建设
    1. ssprompt 说明文档
    2. PromptHub 网站建设

🌏 项目交流讨论

🔗 项目地址 ptonlix/ssprompt

😊 如果你也对本项目感兴趣,欢迎联系作者,加入ssprompt项目群参与讨论交流。

💥 欢迎大家贡献力量,一起共建ssprompt,您可以做任何有益事情

  • 报告错误
  • 建议改进
  • 文档贡献
  • 代码贡献

    👏👏👏

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

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

相关文章

Android手机防沉迷软件的基本原理

(现在手机游戏、短视频等不仅对小孩子负面影响巨大&#xff0c;连很多成年人都沉迷其中难以自拔&#xff0c;影响工作、生活、学习。这已经造成全社会性的巨大影响&#xff0c;长此以往&#xff0c;国将不国。本人仅在此以自己掌握的些许技术略尽绵薄之力&#xff0c;希望能抛砖…

一、了解[mysql]索引底层结构和算法

目录 一、索引1.索引的本质2.mysql的索引结构 二、存储引擎1.MyISAM2.InnoDB3.为什么建议InnoDB表要建立主键并且推荐int类型自增&#xff1f;4.innodb的主键索引和非主键索引&#xff08;二级索引&#xff09;区别5.联合索引 一、索引 1.索引的本质 索引:帮助mysql高效获取数…

ClickHouse 存算分离改造:小红书自研云原生数据仓库实践

ClickHouse 作为业界性能最强大的 OLAP 系统&#xff0c;在小红书内部被广泛应用于广告、社区、直播和电商等多个业务领域。然而&#xff0c;原生 ClickHouse 的 MPP 架构在运维成本、弹性扩展和故障恢复方面存在较大局限性。为应对挑战&#xff0c;小红书数据流团队基于开源 C…

Vue + Element UI 前端篇(八):管理应用状态

使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的&#xff0c;但是因为组件封装的原因&#xff0c;隐藏按钮在头部组件&#xff0c;而导航菜单在导航菜单组件&#xff0c;这样就涉及到了组件收缩状态的共享问题。收缩展开按钮触发收缩状态的修改…

MT9700 80mΩ,可调快速响应限流配电开关芯片

MT9700 80mΩ&#xff0c;可调快速响应限流配电开关芯片 特征 符合USB规范 集成80mΩ电源MOSFET 低电源电流 15μA典型开启状态 1μA典型关闭状态 宽输入电压Range&#xff1a;2.4V到5.5V 快速瞬态响应&#xff1a;<2μs 反向电流流阻塞 热关机保护 热插件应…

JAVA 比较两个区间是否存在交集

最近遇到一个开发问题&#xff0c;判断两个价格的大小&#xff0c;听着很简单&#xff0c;但其实价格是浮动的&#xff0c;也就是说价格是一个范围&#xff0c;比如物品A的价格是5&#xff5e;10&#xff0c;现在我们通过筛选条件&#xff0c;把价格符合在8&#xff5e;20之前的…

2023 年高教社杯全国大学生数学建模竞赛题目 A 题 定日镜场的优化设计

A 题 定日镜场的优化设计 构建以新能源为主体的新型电力系统&#xff0c;是我国实现“碳达峰”“碳中和”目标的一项重要措施。塔式太阳能光热发电是一种低碳环保的新型清洁能源技术[1]。 定日镜是塔式太阳能光热发电站&#xff08;以下简称塔式电站&#xff09;收集太阳能的基…

【力扣周赛】第 357 场周赛(⭐反悔贪心)

文章目录 竞赛链接Q1&#xff1a;6925. 故障键盘解法1——直接模拟解法2——双端队列 Q2&#xff1a;6953. 判断是否能拆分数组&#xff08;贪心&#xff09;Q3&#xff1a;2812. 找出最安全路径⭐解法1——多源BFS瓶颈路模型&#xff1f;解法2——多源BFS 倒序枚举答案 并查…

Java 基于SpringBoot+Vue的社区医院管理系统的实现

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 文章目录 1、效果演示2、 前言介绍3. 技术栈4系统设计4.1数据库设计4.2系统整体设计4.2.1 系统设计思想4.2.…

Win10如何找回图片查看器

近期有小伙伴反映在将Win10升级之后发现电脑自带的图片查看器没有了&#xff0c;这是怎么回事&#xff0c;该怎么找回呢&#xff0c;下面小编就给大家详细介绍一下Win10找回图片查看器的方法&#xff0c;有需要的小伙伴快来和小编一起阅读看看吧。 win10找回windows照片查看器…

降噪音频转录 Krisp: v1.40.7 Crack

主打人工智能降噪服务的初创公司「Krisp」近期宣布推出音频转录功能&#xff0c;能对电话和视频会议进行实时设备转录。该软件还整合的ChatGPT&#xff0c;以便快速总结内容&#xff0c;开放测试版于今天上线。 随着线上会议越来越频繁&#xff0c;会议转录已成为团队工作的重…

Python 实现单例模式的五种写法!

单例模式&#xff08;Singleton Pattern&#xff09; 是一种常用的软件设计模式&#xff0c;该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中&#xff0c;某个类只能出现一个实例时&#xff0c;单例对象就能派上用场。 比如&#xff0c;某个服务器程序的…

数据集学习笔记(六):目标检测和图像分割标注软件介绍和使用,并转换成YOLO系列可使用的数据集格式

文章目录 一、目标检测1.1 labelImg1.2 介绍1.3 安装1.4 使用1.5 转换1.6 验证 二、图像分割2.1 labelme2.2 介绍2.3 安装2.4 使用2.5 转换2.6 验证 一、目标检测 1.1 labelImg 1.2 介绍 labelImg是一个开源的图像标注工具&#xff0c;用于创建图像标注数据集。它提供了一个…

OSI与TCP IP各层的结构与功能,都有哪些协议

分析&回答 OSI七层模型 层功能TCP/IP协议族应用层文件传输&#xff0c;电子邮件&#xff0c;文件服务&#xff0c;虚拟终端TFTP&#xff0c;HTTP&#xff0c;SNMP&#xff0c;FTP&#xff0c;SMTP&#xff0c;DNS&#xff0c;Telnet表示层数据格式化&#xff0c;代码转换…

数学建模--Seaborn库绘图基础的Python实现

目录 1.绘图数据导入 2. sns.scatterplot绘制散点图 3.sns.barplot绘制条形图 4.sns.lineplot绘制线性图 5.sns.heatmap绘制热力图 6.sns.distplot绘制直方图 7.sns.pairplot绘制散图 8.sns.catplot绘制直方图 9.sns.countplot绘制直方图 10.sns.lmplot绘回归图 1.绘图数…

在外SSH远程连接macOS服务器【cpolar内网穿透】

文章目录 前言1. macOS打开远程登录2. 局域网内测试ssh远程3. 公网ssh远程连接macOS3.1 macOS安装配置cpolar3.2 获取ssh隧道公网地址3.3 测试公网ssh远程连接macOS 4. 配置公网固定TCP地址4.1 保留一个固定TCP端口地址4.2 配置固定TCP端口地址 5. 使用固定TCP端口地址ssh远程 …

2023高教社杯 国赛数学建模C题思路 - 蔬菜类商品的自动定价与补货决策

1 赛题 在生鲜商超中&#xff0c;一般蔬菜类商品的保鲜期都比较短&#xff0c;且品相随销售时间的增加而变差&#xff0c; 大部分品种如当日未售出&#xff0c;隔日就无法再售。因此&#xff0c; 商超通常会根据各商品的历史销售和需 求情况每天进行补货。 由于商超销售的蔬菜…

git branch 分支

分支的定义 一个分支是git一个可移动的指针&#xff0c;指向某次提交。每次提交后&#xff0c;当前分支指针就往前挪一个&#xff0c;挪到最新的提交上。 HEAD 指向当前活动的分支 master 默认分支名 &#xff08;git init命令 默认创建它&#xff09; 常见分支指令 创建一个…

企业架构LNMP学习笔记9

nginx配置文件定义php-fpm服务&#xff1a; 编写测试文件&#xff1a; vim /usr/local/nginx/html/index.php 内容&#xff1a; <?phpphpinfo(); 在nginx的配置文件中配置&#xff1a; 修改配置文件&#xff0c;告知nginx如果收到.php结尾的请求&#xff0c;交由给php-…

[论文笔记]SiameseNet

引言 这是Learning Text Similarity with Siamese Recurrent Networks的论文笔记。 论文标题意思是利用孪生循环神经网络学习文本相似性。 什么是孪生神经网络呢?满足以下两个条件即可: 输入是成对的网络结构和参数共享(即同一个网络)如下图所示: 看到这种图要知道可能代…