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.mzph.cn/news/70914.shtml

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

相关文章

12.redis 持久化

redis 持久化 redis 持久化redis持久化策略RDB > Redis DataBase 定期备份rdb 文件处理rdb 优缺点 AOF > Append Only File 实时备份AOF 工作流程AOF 缓冲区刷新策略AOF 重写机制AOF 重写流程 混合持久化持久化流程总结 redis 持久化 redis 是一个内存数据库&#xff0c…

【大数据模型】让chatgpt为开发增速(开发专用提示词)

汝之观览&#xff0c;吾之幸也&#xff01;本文主要聊聊怎样才能更好的使用提示词&#xff0c;给开发提速&#xff0c;大大缩减我们的开发时间&#xff0c;比如在开发中使用生成表结构脚本的提示词&#xff0c;生成代码的提示词等等。 一、准备 本文主要根据Claude进行演示&am…

【产线故障】线上接口请求过慢如何排查?

文章目录 前言一、内存使用过高导致CPU满载案例代码分析思路 二、出现了类似死循环导致cpu负载案例代码分析思路 三、死锁案例代码分析思路 前言 首先线上接口变慢&#xff0c;原因可能有很多&#xff0c;有可能是网络&#xff0c;有可能是慢 SQL&#xff0c;有可能是服务本身…

【Linux】- 一文秒懂shell编程

shell编程 1.1 Shell 是什么1.2 Shell 脚本的执行方式1.3 编写第一个 Shell 脚本2.1 Shell 的变量2.2 shell 变量的定义2.3 设置环境变量3.1 位置参数变量3.2 预定义变量4.1 运算符4.2 条件判断5.1 流程控制5.2 case 语句5.3 for 循环5.4 while 循环5.5 read基本语法6.1函数6.2…

Nginx 本地部署服务

nginx 部署服务 一、下载二、解压三、文件替换四、浏览器中输入五、离线部署瓦片服务 一、下载 可以到官网下载&#xff0c;官方网址&#xff1a;https://nginx.org/也可以用我发的包 二、解压 三、文件替换 解压打开后文件&#xff0c;双击 nginx.exe 浏览器输入 localhost…

springboot之一:配置文件(内外部配置优先顺序+properties、xml、yaml基础语法+profile动态切换配置、激活方式)

配置的概念&#xff1a; Spring Boot是基于约定的&#xff0c;所以很多配置都有默认值&#xff0c;但如果想使用自己的配置替换默认配置的话&#xff0c;就可以使用application.properties或者application.yml(application.yaml)进行配置。 注意配置文件的命名必须是applicat…

【LeetCode每日一题合集】2023.8.28-2023.9.3(到家的最少跳跃次数)

文章目录 57. 插入区间823. 带因子的二叉树解法——递推 1654. 到家的最少跳跃次数(BFS&#xff0c;&#x1f6b9;最远距离上界的证明)1761. 一个图中连通三元组的最小度数2240. 买钢笔和铅笔的方案数解法1——完全背包解法2——枚举买了几支钢笔&#xff08;推荐解法&#xff…

LGFormer:LOCAL TO GLOBAL TRANSFORMER FOR VIDEO BASED 3D HUMAN POSE ESTIMATION

基于视频的三维人体姿态估计的局部到全局Transformer 作者&#xff1a;马海峰 *&#xff0c;陆克 * †&#xff0c;薛健 *&#xff0c;牛泽海 *&#xff0c;高鹏程† * 中国科学院大学工程学院&#xff0c;北京100049 鹏程实验室&#xff0c;深圳518055 来源&#xff1a;202…

这可能是最全面的Python入门手册了!

无论是学习任何一门语言&#xff0c;基础知识一定要扎实&#xff0c;基础功非常的重要&#xff0c;找到一个合适的学习方法和资料会让你少走很多弯路&#xff0c; 你的进步速度也会快很多&#xff0c;无论我们学习的目的是什么&#xff0c;不得不说Python真的是一门值得付出时间…

代码泄漏无感知?代码安全审计构筑企业核心资产安全防线

目录 一个不眠之夜 源代码托管&#xff1a;最容易被从内部攻破的堡垒 审计事件&#xff0c;构建源代码安全防护的“最后一道防线” 源代码托管审计事件三要素 源代码托管审计事件的价值 极狐GitLab 审计事件功能 极狐GitLab 审计事件功能特点 极狐GitLab 审计事件功能使…

Support for password authentication was removed on August 13, 2021 解决方案

打开你的github&#xff0c;Setting 点击Developer settings。 点击generate new token 按照需要选择scope 生成token&#xff0c;以后复制下来。 给git设置token样式的remote url git remote set-url origin https://你的tokengithub.com/你的git用户名/仓库名称.git然后就可…

Docker 搭建Redis 集群之路

前言 搞技术就是动手&#xff0c;动手再动手&#xff0c;实践出真知&#xff0c;毕竟最终是要解决问题的呢&#xff0c;废话不多讲&#xff0c;开搞&#xff0c;主要是为了记录一下&#xff0c;毕竟过程还是有点艰辛呢需求&#xff08;target&#xff09; Windows 电脑 装一个…

python 笔记(1)——基础和常用部分

目录 1、print 输出不换行 2、格式化输出字符串 3、浮点数的处理 4、进制转换和ASCII与字符间的转换 5、随机数 6、字符串截取和内置方法 6-1&#xff09;字符串截取 6-2&#xff09;字符串内置方法 7、元组、列表&#xff0c;及其遍历方式 7-1&#xff09;列表常用内…

为什么5G 要分离 CU 和DU?(4G分离RRU 和BBU)

在 Blog 一文中&#xff0c;5G--BBU RRU 如何演化到 CU DU&#xff1f;_5g rru_qq_38480311的博客-CSDN博客 解释了4G的RRU BBU 以及 5G CU DU AAU&#xff0c;主要是讲了它们分别是什么。但是没有讲清楚 为什么&#xff0c;此篇主要回答why。 4G 为什么分离基站为 RRU 和 BBU…

Windows下搜索文件内容的关键字用什么命令

Windows下搜索文件内容的关键字用什么命令 findstr /s /n /i "keyword" file_path其中&#xff0c;/s 表示递归检索子文件夹&#xff0c;/n 表示显示搜索结果所在行号&#xff0c;/i 表示忽略大小写&#xff0c;“keyword” 是要搜索的关键字&#xff0c;file_path 是…

【LeetCode-中等题】17. 电话号码的字母组合

文章目录 题目方法一&#xff1a;递归回溯 题目 方法一&#xff1a;递归回溯 参考讲解&#xff1a;还得用回溯算法&#xff01;| LeetCode&#xff1a;17.电话号码的字母组合 首先可以画出树图&#xff1a; 先将数字对应的字符集合 加入到一个map集合 这里需要一个index来控…

PPT怎么转换为PDF格式,收藏这两个在线工具。

PPT是一种常用的演示文稿格式&#xff0c;它可以包含丰富的动画效果和超链接&#xff0c;让你的内容更加生动和有趣。但是&#xff0c;如果你想将PPT分享给别人&#xff0c;或者在不同的设备上查看&#xff0c;你可能会遇到一些问题&#xff0c;比如&#xff1a; PPT文件太大&a…

使用Python实现二维应力云图

要画应力分布云图&#xff0c;可以使用Python中的科学计算和可视化库来实现 import numpy as np import matplotlib.pyplot as plt# 生成示例数据 x np.linspace(0, 10, 100) # X轴数据范围 y np.linspace(0, 5, 50) # Y轴数据范围 X, Y np.meshgrid(x, y) # 生成网…

Linux命令行

目录 CLI GUI 命令行界面 图形界面 命令行提示符 # $ ​编辑 命令一般由三个部分组成 历史命令&#xff0c;使用上下键&#xff0c;或者使用history&#xff0c;ctrlr搜索历史命令 通配符 *,? 切换用户 su 作业管理 &&#xff0c;jobs,bg,fg CLI GUI 命令行界面 …

内网穿透的应用-不再依赖iCloud!利用群晖生态,自己掌控本地SSD的云存储!

文章目录 前言本教程解决的问题是&#xff1a;按照本教程方法操作后&#xff0c;达到的效果是想使用群晖生态软件&#xff0c;就必须要在服务端安装群晖系统&#xff0c;具体如何安装群晖虚拟机请参考&#xff1a; 1. 安装并配置synology drive1.1 安装群辉drive套件1.2 在局域…