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

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

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

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

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

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

3. App 实例

3.1. 旅游规划大师

App 代码:

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

3.2. 智能图像生成器

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

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

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

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

3.3. 多语言翻译

APP 代码:

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

成功将中文翻译成英文

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)成员。

真低代码,首个基于 ChatGPT 的自然语言开发框架 PromptAppGPT:全自动编译、运行、界面生成-风君雪科技博客

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

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

参考资料:

  • https://github.com/mleoking/PromptAppGPT

本文来自微信公众号:新智元 (ID:AI_era)