You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Sample-AI.md
+8-7Lines changed: 8 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -2,13 +2,13 @@
2
2
3
3
Creating an API and an admin app using a framework takes too long, and is far too complex. AI and automation can create systems in minutes rather than weeks or months, dramatically simpler, and fully customizable with tools and approaches you already know.
4
4
5
-
In this demo, we'll show how to create a complete system using VS Code, Copilot, and API Logic Server (open source). We'll then add business logic with rules, and use Python to add a custom endpoint and Kafka integration.
5
+
In this demo, we'll show how to create a complete system using VS Code, Copilot, and API Logic Server. We'll then add business logic with rules, and use Python to add a custom endpoint and Kafka integration.
6
6
7
7
# Overview
8
8
9
9
As shown below, you can submit a Natural Language description of a database to Copilot. This creates a Python data model (SQLAlchemy classes).
10
10
11
-
You then use API Logic Server CLI to create an executable project from the model. Alternatively, you can create a project by identifying an existing database.
11
+
You then use API Logic Server CLI to create an executable project from the model. Alternatively, you can create a project by identifying an existing database (pre-installed).
12
12
13
13
* The project is ***executable,*** providing an API and an admin app, enabling agile collaboration and unblocking custom app dev.
14
14
@@ -67,7 +67,7 @@ $ als create --project-name=sample_ai --from-model=sample_ai.py --db-url=sqlite
67
67
68
68
69
69
70
-
If you are **not using Copilot...**,
70
+
**Or,** if you are **not using Copilot...**,
71
71
72
72
Use the pre-installed database to create your project in the terminal window:
73
73
@@ -127,7 +127,7 @@ So, we have working software, in minutes. It's running, but we really can't *de
127
127
128
128
API Logic Server contains a rule engine. You can declare rules in Python, using IDE code completion services.
129
129
130
-
It also provides value: spreadsheet-like rules reduce logic code (half the app) by 40X.
130
+
It provides signficant value: spreadsheet-like rules reduce logic code (half the app) by 40X.
131
131
132
132
But, we can have much more fun. As shown below, we can ask Copilot to create these rules for us, and paste them into a pre-created file:
133
133
@@ -139,7 +139,7 @@ But, we can have much more fun. As shown below, we can ask Copilot to create th
139
139
140
140
Projects are designed for customization, using standards: Python, frameworks (e.g., Flask, SQLAlchemy), and your IDE for code editing and debugging. Not only Python *code*, but also ***Rules***.
141
141
142
-
To explore, let's customize this project. To speed things up, instead of the normal procedure of declaring rules in your IDE, follow this procedure:
142
+
To explore, let's customize this project. To speed things up, instead of the normal procedure of declaring rules and entering Python code in your IDE, follow this procedure:
143
143
144
144
1. Stop the Server
145
145
@@ -158,9 +158,10 @@ This applies customized logic and security, which we examine below.
158
158
159
159
Logic Automation means that you can ***declare spreadsheet-like rules*** using Python. Such logic maintains database integrity with multi-table derivations and constraints, and security. Rules are 40X more concise than traditional code, and can be extended with Python.
160
160
161
-
Below we implement the **Check Credit** requirement - see the comments at top. Their implementation follows: 5 rules, instead of 200 lines of Python.
161
+
Below we implement the **Check Credit** requirement - see the comments at top. Their implementation follows: 5 rules, instead of 200 lines of Python. It's ready to test:
162
162
163
-
1. Use the Admin App to add an Item for 1000 Widgets, observe how the constraint prevents the transaction
163
+
1. Restart the Server (F5)
164
+
2. Use the Admin App to add an Item for 1000 Widgets, observe how the constraint prevents the transaction
164
165
165
166
Rules are an executable design. Note they map exactly to our natural language design:
And, for systems requiring highly customized interfaces for Business Intelligence, API Logic Server works with Low Code.
95
95
96
+
97
+
98
+
**AI Powered**
99
+
100
+
This automation technology is further simplified with exciting technology such as Copilot:
101
+
102
+
* Use Natural Language to create databases
103
+
* Use Natural Language to declare rules
104
+
96
105
</details>
97
106
---
98
107
@@ -309,9 +318,9 @@ API and Logic Automation begins with a database. But what if it's a new project
309
318
310
319
You can certainly use your SQL tools. But we all know that SQL can be... tiresome.
311
320
312
-
AI provides a solution: ***Schema Automation***. You can use ChatGPT to create the SQL DDL like this:
321
+
AI provides a solution: ***Schema Automation***. You can use Copilot to create the SQL DDL like this:
313
322
314
-
!!! pied-piper "Create database definitions from ChatGPT"
323
+
!!! pied-piper "Create database definitions from Copilot"
315
324
316
325
Create a sqlite database for customers, orders, items and product
317
326
@@ -388,13 +397,13 @@ Type:
388
397
389
398
| Project | Notes | Type |
390
399
:-------|:-----------|:-------|
391
-
|[**AI Sample**](Sample-AI.md){:target="_blank" rel="noopener"} | 1. Use ChatGPT to create new databases from natural language<br>2. Illustrate a very rapid create / customize / iterate cycle<br>3. Introduce Integration | Demo |
400
+
|[**AI Sample**](Sample-AI.md){:target="_blank" rel="noopener"} | 1. Use Copilot to create new databases from natural language<br>2. Illustrate a very rapid create / customize / iterate cycle<br>3. Introduce Integration | Demo |
392
401
|[**Tutorial**](Tutorial.md){:target="_blank" rel="noopener"} | 1. How to Use the Key Features<br>2. Key code samples for adapting into your project | Tutorial |
393
402
||||
394
403
|[App Integration](Sample-Integration.md){:target="_blank" rel="noopener"} | Illustrates *running* Kafka messaging, self-serve and customized APIs, choreographed with rules and Python | Tutorial |
395
404
|[Deployment](Tutorial-Deployment.md){:target="_blank" rel="noopener"} | Containerize and deploy your applications | Tutorial |
396
405
|[Agile](Tech-Agile.md){:target="_blank" rel="noopener"} | Behavior Driven Design and testing, using Behave | Tutorial |
397
-
|[AI Drives Agile Vision](Tech-AI.md){:target="_blank" rel="noopener"} | Use ChatGPT to create new databases from natural language, to bootstrap an agile create / deploy and collaborate / iterate cycle | Demo |
406
+
|[AI Drives Agile Vision](Tech-AI.md){:target="_blank" rel="noopener"} | Use Copilot to create new databases from natural language, to bootstrap an agile create / deploy and collaborate / iterate cycle | Demo |
398
407
|[Basic Demo](Sample-Basic-Demo.md){:target="_blank" rel="noopener"} | Focused use of API, Admin App and Rules on small customer/orders database | Demo |
399
408
|[Allocation](Logic-Allocation.md){:target="_blank" rel="noopener"} |*Power Rule* to allocate a payment to a set of outstanding orders | Sample |
400
409
|[MySQL Docker](Database-Connectivity.md){:target="_blank" rel="noopener"} | Create projects from sample databases: *chinook* (albums and artists), and *classicmodels* (customers and orders) | Sample |
@@ -637,7 +646,7 @@ Or, you can use [the beta version on codespaces](https://github.com/ApiLogicServ
637
646
:-------|:-----------|
638
647
| Microservice Automation | One-command API / App Projects |
639
648
|[Application Integration](Sample-Integration.md){:target="_blank" rel="noopener"} | Automation with APIs and Kafka Messages |
640
-
|[AI-Driven Automation](Sample-AI.md){:target="_blank" rel="noopener"} | Use ChatGPT to automate database creation |
649
+
|[AI-Driven Automation](Sample-AI.md){:target="_blank" rel="noopener"} | Use Copilot to automate database creation |
0 commit comments