以下是如何使用AIAPI 逻辑服务器在几分钟内创建完整的运行系统:

  1. 使用ChatGPT 实现架构自动化:从自然语言创建数据库架构。
  2. 使用开源API逻辑服务器:使用一个命令创建工作软件。
    • 应用自动化:多页面、多表管理应用。
    • API 自动化: JSON:API,每个表的增删改查,具有过滤、排序、乐观锁定和分页功能。
  3. 使用您的 IDE 自定义项目:
    • 使用规则的逻辑自动化:在 Python 中声明类似电子表格的规则,用于多表派生和约束 – 比代码简洁 40 倍
    • 使用 Python 和标准库(Flask、SQLAlchemy)并在 IDE 中进行调试。
  4. 迭代您的项目:
    • 修改您的数据库设计和逻辑。
    • 与 B2B 合作伙伴和内部系统集成

ChatGPT

此过程利用您现有的 IT 基础设施:您的 IDE、GitHub、云、数据库……开源。让我们看看如何。

1。人工智能:架构自动化

您可以使用现有数据库或使用  ChatGPT 创建新数据库 或您的数据库工具。

使用ChatGPT生成用于数据库创建的SQL命令:

纯文本

 

为客户、订单、项目和产品创建 sqlite 数据库 提示:使用自动编号键、允许空值、小数类型、外键、无检查约束。 包括订单注释字段。 仅创建几行客户和产品数据。 执行检查信用要求: 客户.余额 <= 信用限额 Customer.Balance = Sum(Order.AmountTotal,其中发货日期为空) 订单.金额总计 = Sum(项目.金额) 商品数量 = 数量 * 单价 将 Items.UnitPrice 存储为 Product.UnitPrice 的副本

请注意上面的提示。正如我们所听说的,“人工智能需要成人监督。” 需要提示才能获得所需的 SQL。

这将创建标准 SQL 像这样。将生成的 SQL 命令复制到文件中,例如 sample-ai.sql

然后,创建数据库:

 
sqlite3 Sample_ai.sqlite 

2。 API逻辑服务器:创建

给定一个数据库(无论它是否是从 AI 创建的),API Logic Server 会使用以下单个命令创建一个可执行的、可自定义的项目:

 
$ ApiLogicServer create --project_name=sample_ai --db_url=sqlite:///sample_ai.sqlite

这将创建一个可以使用 IDE 打开的项目,例如 VSCode(见下文)。该项目现已准备好运行;按 F5。它反映了 create 命令提供的自动化:

  • API 自动化:为 UI 开发人员准备的自助 API
  • 应用自动化:一个管理应用,可用于后台数据维护和业务用户协作。 应用程序和 API 自动化

让我们通过 create 命令探索应用程序和 API 自动化。

应用自动化

应用程序自动化意味着ApiLogicServer create自动创建多页面、多表管理应用程序。这由数百行复杂的 HTML 和 JavaScript 组成;这是一个简单的 yaml 文件,易于自定义。

订单

<块引用>

为业务用户协作做好准备,
后台数据维护......
只需几分钟。

API 自动化

App Automation 意味着 ApiLogicServer create 自动创建 JSON: API。您的 API 为每个表提供一个端点,包括相关的数据访问、分页、乐观锁定、过滤和排序。

<块引用>

使用框架创建这样的 API
需要几天到几个月的时间。

UI 应用程序开发人员可以使用 API 立即创建自定义应用程序,使用 Swagger 设计其 API 调用并将 URI 复制到其 JavaScript 代码中。因此,API 是自助式的:不需要服务器编码。

<块引用>

自定义应用程序开发已解锁:第一天。

自助服务

3。自定义

所以,我们在几分钟内就拥有了可以运行的软件。它正在运行,但我们确实无法部署它,直到我们拥有逻辑和安全性,这使我们可以进行定制。

项目是为定制而设计的,使用标准:Python、框架(例如 Flask、SQLAlchemy)以及用于代码编辑和调试的 IDE。

不仅是 Python 代码,还有规则

逻辑自动化

逻辑自动化意味着您可以使用 Python声明类似电子表格的规则。这种逻辑通过多表派生、约束和安全性来维护数据库完整性。规则比传统代码简洁 40 倍,并且可以使用 Python 进行扩展。

规则是可执行的设计。使用您的 IDE(代码完成等)将 280 行代码替换为下面五个类似电子表格的规则。请注意,它们完全映射到我们的自然语言设计:

1.调试

上面的屏幕截图显示了我们的逻辑声明以及我们如何调试它们:

  • 执行在调试器中的断点处暂停,我们可以在其中检查状态并逐步执行。
  • 注意插入 Item日志记录。每行代表一个规则触发并显示该行的完整状态。

2.链接:多表事务自动化

请注意,这是一个多表事务,如日志缩进所示。这是因为,就像电子表格一样,规则会自动链接,包括跨表。

3.简洁 40 倍

五个类似电子表格的规则代表了与 200 行代码相同的逻辑,此处显示。系统后端一半显着减少了 40 倍。

4.自动重用

上面的逻辑可能是为下订单而设计的,会自动应用于所有交易:删除订单、更改商品、将订单转移给新客户等。这减少了代码,并且提高质量(不遗漏极端情况)。

5.自动优化

通过修剪和消除昂贵的聚合查询,可以最大限度地减少 SQL 开销。这些可能会导致几个数量级的影响。

这是因为规则引擎不是基于 Rete 算法,而是针对事务处理进行了高度优化,并与 SQLAlchemy 集成ORM (对象关系管理器)。

6.透明

规则是可执行的设计。请注意,它们完全映射到业务用户可读的自然语言设计(如注释中所示)。这补充了运行屏幕以促进敏捷协作。

安全自动化

安全自动化意味着您激活登录访问安全性并声明授权(使用 Python)来控制用户角色的行访问。在这里,我们筛选出具有销售角色的用户的不太活跃的帐户:

 

Grant( on_entity = models.Customer,
        to_role = 角色.sales,
        过滤器 = lambda : models.Customer.CreditLimit > 3000,
filter_debug = "CreditLimit > 3000")

 

4。迭代:规则 + Python

这样,我们就完成了一日项目。工作屏幕和规则促进敏捷协作,从而导致敏捷迭代。 

自动化在这里也有帮助:不仅电子表格规则更加简洁 40 倍,而且它们有意义地简化了迭代和维护。让我们通过两个更改来探讨这一点:

要求 1:绿色折扣

纯文本

 

购买 10 件或以上碳中和产品可享受 10% 折扣。

要求 2:应用程序集成

纯文本

 

使用 Kafka 消息将新订单发送到 Shipping。 使 B2B 合作伙伴能够使用自定义 API 下订单。

 

修改数据模型

在此示例中,需要更改架构才能添加 Product.CarbonNeutral 列。这会影响 ORM 模型、API 等。因此,我们希望更新这些内容,但保留我们的自定义

使用 ApiLogicServerrebuild-from-database 命令支持此操作,将现有项目更新为修订后的架构,同时保留自定义设置。

迭代逻辑:添加 Python

这是我们修改后的逻辑,用于应用折扣并发送 Kafka消息:

扩展API

我们还可以使用标准 Python 和 Flask 为新的 B2BOrder 端点扩展 API

注意:本例中 Kafka 未激活。要探索与正在运行的 Kafka 集成应用程序的运行教程,请单击此处

迭代注意事项

这说明了逻辑如何支持迭代的一些重要方面。

维护自动化

除了文档之外,程序员最讨厌的任务之一就是维护。那是因为这不是写代码,而是考古;破译其他人编写的代码,这样您就可以添加四到五行,希望它们能够被调用并正常运行。

逻辑自动化通过维护自动化改变了这一点,这意味着:

  • 规则根据系统发现的依赖关系自动排序其执行(和优化)。
  • 规则会自动重用用于所有相关交易。

因此,要改变逻辑,您只需“将新规则放入桶中”,系统将确保以正确的顺序调用它重新使用涵盖所有相关用例。

可扩展性:使用 Python

第一种情况,我们需要做一些if/else测试,添加一点Python会更方便。虽然这是非常简单的Python 作为 4GL,但您拥有面向对象的 Python 及其许多库的全部功能。

例如,我们的扩展 API 利用 Flask 和开源库来处理 Kafka 消息。

重建:保留逻辑

回想一下,我们能够迭代架构并使用ApiLogicServerrebuild-from-database命令。这会更新现有项目,并保留自定义内容。

5。部署

API Logic Server 提供脚本来从您的项目创建 Docker 映像。您可以将它们部署到云端或本地服务器。

有关详细信息,请参阅此处。

摘要

Idea 和 ChatGPT

几分钟之内,您就已经使用 ChatGPT 和 API Logic Server 将想法转换为工作软件。它只需要 5 条规则和几十行 Python 代码。过程很简单:

  • 使用 ChatGPT 创建架构

  • 使用 ApiLogicServer 创建项目

    • 用于解锁 UI 开发人员的自助式 API:第一天
    • 用于业务用户协作的管理应用:第 1 天
  • 自定义项目。

    • 使用规则:比代码简洁 40 倍。
    • 使用Python:实现完全的灵活性。
  • 迭代 IDE 中的项目以实现新需求。

    • 保留之前的自定义设置。

这一切都可以使用标准工具:Python、您的 IDE 和基于容器的部署。

您可以通过详细教程执行本文中的步骤:点击此处。

Comments are closed.