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

news2025/2/24 17:11:43

阅读顺序

  • 🌟前言
  • 🔔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为公共领域
  - common
  version: 0.1.0 #版本号

#Text类型的Prompt
text_prompt:
  dirname: text #目录名称, 默认为text

#Json类型的Prompt
json_prompt:
  dirname: json #目录名称,默认为json
  list:                  #支持多个json类型子工程
  - dependencies:   
      langchain: 0.0.266 #json解析依赖的三方库版本号,如langchain等
    name: example        #子工程名,对应生成工程目录名

#Yaml类型的prompt
yaml_prompt: 
  dirname: yaml #目录名称,默认为yaml
  list:					 #支持多个yaml类型子工程
  - dependencies:		
      langchain: 0.0.266 #yaml解析依赖的三方库版本号,如langchain等
    name: example		 #子工程名,对应生成工程目录名

#Python类型的Prompt
python_prompt:	#目录名称,默认为yaml
  dirname: python		 #目录名称,默认为yaml
  list: 				 #支持多个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.coloradmin.cn/o/982378.html

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

相关文章

智汇云舟出席全球制造业峰会并作主题分享

9月1日-5日&#xff0c;由中华人民共和国商务部、中华人民共和国国家发展和改革委员会、中华人民共和国科学技术部、中国国际贸易促进委员会、辽宁省人民政府共同主办的全球制造业峰会暨第二十一届中国&#xff08;沈阳&#xff09;国际装备制造业博览会在沈阳国际会展中心召开…

身份证二要素核验-实名认证API:数据隐私的守护先锋

前言 在当今数字化世界中&#xff0c;数据隐私和安全问题变得尤为重要。随着互联网的普及&#xff0c;个人信息的泄露已经成为潜在的威胁。为了应对这一挑战&#xff0c;身份证二要素核验-实名认证API成为了数据隐私的守护先锋&#xff0c;提供了一种强大的工具来确保个人信息…

前端面试的话术集锦第 8 篇:高频考点(JS性能优化 性能优化琐碎事)

这是记录前端面试的话术集锦第八篇博文——高频考点(JS性能优化 & 性能优化琐碎事),我会不断更新该博文。❗❗❗ 1. 从V8中看JS性能优化 注意:该知识点属于性能优化领域。 1.1 测试性能⼯具 Chrome已经提供了⼀个⼤⽽全的性能测试⼯具Audits。 点我们点击Audits后,可…

分享一个基于SpringBoot+Vue的招生宣传管理系统源码 招生计划管理系统代码

&#x1f495;&#x1f495;作者&#xff1a;计算机源码社 &#x1f495;&#x1f495;个人简介&#xff1a;本人七年开发经验&#xff0c;擅长Java、Python、PHP、.NET、微信小程序、爬虫、大数据等&#xff0c;大家有这一块的问题可以一起交流&#xff01; &#x1f495;&…

day-07 I/O 复用(select)- 多种 I/O 函数 - 多播和广播

一.I/O复用 &#xff08;一&#xff09;基于I/O复用的服务器端 1.多进程服务器 每次服务都需要创建一个进程&#xff0c;需要大量的运算和内存空间 2.复用 只需创建一个进程。 3.复用技术在服务器端的应用 &#xff08;二&#xff09;select函数实现服务器端 &#xff08;…

二维码智慧门牌管理系统:让城市管理更智能、便捷

文章目录 前言一、二维码智慧门牌管理系统的特点二、数据集约化与规范化三、管理智能化与长效化四、标识规范化与易维护五、服务多元化与便捷化 前言 随着城市化进程的加速&#xff0c;城市管理面临着越来越多的挑战。为了解决地名地址管理交织错综、地名地址支撑政府管理成效…

华为云云服务器评测| 之兼容性测试

文章目录 前言创建文本文件编写脚本赋予脚本执行权限及脚本运行结果解析结果说明 : 总结 前言 兼容性测试作为软件开发和系统维护中的关键环节&#xff0c;对于确保系统的可靠性和稳定性至关重要。随着云计算的兴起&#xff0c;越来越多的企业选择将应用程序和服务迁移到云平台…

集合结构体系

集合体系结构 collection单链集合&#xff1a;是单列集合的祖宗接口&#xff0c;他的功能是所有单列集合可以继承使用的 创建collection对象 Collection<String> collnew ArrayList<>();//学习阶段才创建的collection中的arraylist方法名称说明boolean add()集合中…

Unity 之预制体(Prefab)的解释以及用法

文章目录 详细解释代码举例 详细解释 Unity中的预制体&#xff08;Prefab&#xff09;是一种重要的资源类型&#xff0c;用于创建和管理游戏对象&#xff08;GameObject&#xff09;。预制体是一种可重用的模板&#xff0c;可以在游戏场景中多次实例化&#xff0c;使开发人员能…

【STM32学习】——SPI通信协议SPI时序W25Q64存储芯片软件SPI读写

目录 前言 一、SPI通信协议 1.概述​ 2.硬件电路 3.移位示意图 二、SPI时序 1.时序基本单元 2.完整时序波形 三、W25Q64存储芯片 1.芯片简介 2.硬件电路&引脚定义 3.芯片框图 4.Flash操作注意事项 四、软件SPI读写W25Q64 五、SPI通信外设 总结 前言 声明&…

城市公共交通概念新解

“城市&#xff0c;让生活更美好”&#xff0c;城市是公众多元需求最为集中体现之所在&#xff0c;亦是获得满足之场所。同时&#xff0c;它也是科技创新、文化融合、经济发展的基座与舞台。城市交通作为城市运行的重要系统&#xff0c;相当于城市有机体的血脉和经络&#xff0…

命令行git联网失败,但是实际可以联网

最近下载代码的时候发现总是告诉我连不上github的网页&#xff0c;但是我自己通过浏览器又可以上网&#xff0c;找了半天发现这个方法可以。 记录下这个代理 打开git bash 执行以下命令&#xff1a; git config --global http.proxy http://127.0.0.1:7890 git config --glob…

【运维日常】infinibang网络架构,容器间跨机器不同网段通信

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》&#xff1a;python零基础入门学习 《python运维脚本》&#xff1a; python运维脚本实践 《shell》&#xff1a;shell学习 《terraform》持续更新中&#xff1a;terraform_Aws学习零基础入门到最佳实战 《k8…

【JavaScript】在指定dom元素前面创建标签元素

一、基础操作过程 要在指定的DOM元素前面创建标签元素&#xff0c;有以下步骤&#xff1a; 获取指定的DOM元素&#xff1a;使用document.querySelector()或document.getElementById()等方法来获取指定的DOM元素。 const targetElement document.querySelector(#targetElement…

基于HBuilder X平台下的 驾校报名考试管理系统 uniapp 微信小程序3n9o5

本课题研究的是基于HBuilder X系统平台下的驾校管理系统&#xff0c;开发这款驾校管理系统主要是为了帮助学员可以不用约束时间与地点进行查看教练信息、考场信息等内容。本文详细讲述了驾校管理系统的界面设计及使用&#xff0c;主要包括界面的实现、控件的使用、界面的布局和…

Qt应用开发(基础篇)——复选按钮 QCheckBox 单选按钮 QRadioButton

一、前言 QCheckBox类与QRadioButton类继承于QAbstractButton&#xff0c;QCheckBox是一个带有文本标签的复选框&#xff0c;QRadioButton是一个带有文本标签的单选按钮。 按钮基类 QAbstractButton QCheckBox QCheckBox复选框是一个很常用的控件&#xff0c;拥有开关(选中和未…

微信小程序开发前准备

文章目录 一、注册微信小程序开发账号&#xff08;一&#xff09;访问微信公众号平台官网&#xff08;二&#xff09;进入注册页面 二、获取微信小程序AppID三、安装微信开发者工具四、创建微信小程序项目 在正式开发微信小程序前&#xff0c;需要先进行开发前的准备工作&#…

rhcsa学习3 文件

文件系统权限 有三种权限类别可应用&#xff1a;读取、写入和执行 查看文件和目录的权限及所有权 ls -l 显示有关权限和所有权的详细信息 长列表的第一个字符表示文件类型 - 表示常规文件、d 目录、l 软链接、其它字符代表硬件设备&#xff08;b和c&#xff09;或其他具有特殊用…

内推与面试:内部推荐如何影响面试结果

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

HHDBCS表管理简介

HHDBCS支持新增、打开、删除、级联删除、清空、级联清空、重命名、属性查看等操作。 1 新增 右键树形结构的表节点&#xff0c;在弹出菜单中选择“新增”&#xff0c;会弹出创建表的表单&#xff0c;可以输入表名称&#xff0c;注释&#xff0c;点击添加列&#xff0c;输入列…