真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成
- 新智元
2023-06-09 14:39
首个自研全开源自然语言低代码 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
本文来自微信公众号:新智元 (ID:AI_era)
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。