摘要

最近,CCF理论计算机科学技术委员会委员张长旺,开发了一个基于低代码提示语的快速应用开发框架PromptAppGPT,可以实现基于GPT的自然语言快速应用开发。...

首个自研全开源自然语言低代码GPT应用快速开发框架——PromptAppGPT来了!

最近,CCF理论计算机科学技术委员会委员张长旺,开发了一个基于低代码提示语的快速应用开发框架PromptAppGPT,可以实现基于GPT的自然语言快速应用开发。



PromptAppGPT包含的功能有:低代码提示语(Prompt)应用开发、GPT文本生成、DALL-E图像生成、在线代码编辑器+编译器+运行器、自动用户界面生成、支持插件扩展等。



项目网站:https://promptappgpt.wangzhishi.net/



项目代码:https://github.com/mleoking/PromptAppGPT



PromptAppGPT提供多任务条件触发、结果验证和失败重试能力,可以让原本需要多步骤的手动生成任务变成自动完成。



同时,用户不再需要自己记忆和输入繁琐的Prompt咒语,只输入任务核心必要信息就可以轻松完成任务。



1. 项目特点



  • 低代码提示语(Prompt)快速应用开发

  • 支持GPT3/4执行器用于文本生成

  • 支持用于图像生成的Dalle执行器



  • 支持使用执行器(插件)扩展



  • 内置在线代码编辑器、编译器和运行器



  • 自动生成用户界面



  • 英文和中文双语用户界面



2. 快速入门



2.1. 获取OpenAI的API密钥。



2.2. 访问网站PromptAppGPT网站,选择网络启动或下载程序:



https://promptappgpt.wangzhishi.net/



2.3. 设置OpenAI密钥/OpenAI Api Proxy/OpenAI GPT模型。



OpenAI密钥:从OpenAI获得的API密钥。



OpenAI Api Proxy:可以访问OpenAI API的代理网站,比如国内可以使用https://api.openai-proxy.com,最好有自己搭建的代理网站。



OpenAI GPT模型:gpt-4/gpt-3.5-turbo



2.4. 选择并运行一个应用程序。



2.5. 编辑并编译该应用程序。



3. APP实例



3.1. 旅游规划大师



APP代码:



自动生成的APP界面和运行结果:



成功生成一份详细的海南旅游计划



3.2. 智能图像生成器



APP代码:(包含使用GPT生成画图Prompt和使用Dalle画图两个步骤)



使用PromptAppGPT可以让原本需要两个步骤的手动图像生成任务变成自动完成。同时不需要用户自己输入繁琐的Prompt咒语,用户只要输入自己关心的画图描述就可以了。



自动生成的APP界面和运行结果:



App首先使用GPT生成画图Prompt图片。



然后App自动调用Dalle基于GPT输出的画图Prompt生成图片图片。



下图显示最终图片生成结果图片。



GPT帮助把原本的简单描述「一只大熊猫」扩充了很多英文细节描述,比如熊猫坐在竹叶上,在森林里面,熊猫有圆耳朵等等。



这些扩充的描述让后续DALL-E画图包含更多细节,更加生动。



3.3. 多语言翻译



APP代码:



自动生成的APP界面和运行结果:



成功将中文翻译成英文



4. 应用开发



PromptAppGPT应用基于YAML格式进行低代码开发。



下面是一个示例应用代码:



---author: Leoname: 旅游规划大师description: 旅游规划大师gptRound: singlefailedRetries: 2sysTask:userTask:   - executor: gpt    prompt: |      我想去 [$i{旅游目的地:@input}] 玩,请你以专业导游的身份,帮我做一份为期 [$i{旅游天数:@select#1/2/3/4/5/6/7}] 天的旅游攻略。      另外,我希望整个流程不用太紧凑,我更偏向于安静的地方,可以简单的游玩逛逛。      我的预算在 [$i{旅游预算(元):@select#1000/2000/3000/4000/5000/6000/7000}] 元左右。extra:



author部分是作者的名字;name部分是应用的名字;description部分是应用的描述;gptRound部分决定了是使用gpt进行单轮(single)还是多轮(multiple)对话,对于大多数应用来说,其值应该是single;failedRetries部分设置了失败时的重试次数或输出无效。



sysTask部分是一个用-分隔的任务集合,设置执行者(gpt)的行为。对于许多应用程序,这个字段可以留空。



userTask部分包含用户定义的任务,用-分隔。每个任务必须定义prompt和executor属性,而trigger、outputer和validator的属性是可选的。该应用程序有序地循环浏览用户任务,使用前一个任务的输出来匹配每个任务的trigger,第一个通过trigger匹配的任务是当前运行的任务。



作者介绍



张长旺,高级研究员,CCF理论计算机科学技术委员会委员。 曾担任第37届AAAI人工智能会议(AAAI-23)的高级程序委员会(SPC)成员。



他分别于2011年和2015年获得伦敦大学学院(UCL)的硕士和博士学位。2016年至2017年在阿里巴巴从事LBS数据挖掘,2018年至2022年在腾讯从事广告推荐和用户画像。



目前的研究方向是信息检索(搜推广)、自然语言处理、大数据挖掘的研究与应用。



参考资料:



https://github.com/mleoking/PromptAppGPT




华人教育信息订阅号二维码