最近,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: Leo
name: 旅游规划大师
description: 旅游规划大师
gptRound: single
failedRetries: 2
sysTask:
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