Un ORM basado en OpenAI que traduce el lenguaje humano simple en consultas SQL y las ejecuta en una base de datos.
Actualmente admite dialectos de la base de datos: MySQL, PostgreSQL y SQLite.
Idiomas apoyados: inglés, alemán, francés, español, polaco, italiano, holandés, portugués, ucraniano, árabe, chino, japonés, coreano, turco y muchos más.
ormgpt.query( " give me post with id 1, all comments for this post and user information about author " ) ;Consulta generada:
SELECT
p . id AS post_id,
p . title ,
p . body ,
c . id AS comment_id,
c . body AS comment_body,
u . username AS author_username,
u . email AS author_email
FROM
posts p
JOIN comments c ON p . id = c . post_id
JOIN users u ON u . id = p . user_id
WHERE
p . id = 1 ;Respuesta:
[
{
post_id : 1 ,
title : 'Hello world!' ,
body : 'This is my first post!' ,
comment_id : 1 ,
comment_body : 'Hello world!' ,
author_username : 'test' ,
author_email : '[email protected]'
}
] 
npm install ormgpt
# or
yarn add ormgpt
# or
pnpm add ormgpt Prepare un archivo de esquema de base de datos, por ejemplo, schema.sql . Este archivo se utilizará para generar consultas.
const client = await createConnection ( {
host : 'localhost' ,
port : 3306 ,
database : 'ormgpt' ,
user : 'root' ,
password : 'mysecretpassword' ,
} ) ;
const mysqlAdapter = new MysqlAdapter ( {
client
} ) ;
const ormgpt = new ormGPT ( {
apiKey : "OPENAI_API_KEY" ,
schemaFilePath : "./example/schema.sql" ,
dialect : "postgres" ,
dbEngineAdapter : mysqlAdapter ,
} ) ;
await ormgpt . query (
"add new user with username 'test' and email '[email protected]'" ,
) ;
const users = await ormgpt . query ( "get all users" ) ;
console . log ( users ) ;Mysql
const client = await createConnection ( {
host : 'localhost' ,
port : 3306 ,
database : 'ormgpt' ,
user : 'root' ,
password : 'mysecretpassword' ,
} ) ;
const mysqlAdapter = new MysqlAdapter ( {
client
} ) ;Post -put
const client = new Client ( {
host : 'localhost' ,
port : 5432 ,
database : 'ormgpt' ,
user : 'mysecretuser' ,
password : 'mysecretpassword' ,
} ) ;
client . connect ( ) ;
const postgresAdapter = new PostgresAdapter ( {
client
} ) ;Sqlite
const sqliteAdapter = new SqliteAdapter ( {
dbFilePath : "./example/db.sqlite" ,
} ) ;En los últimos dos años, encontré que Orms era nuevo "días desde el último marco de JavaScript" en el ecosistema JavaScript. Y dado que la IA es una palabra de moda caliente, decidí experimentar un poco para combinar ambos y crear un ORM que usa OpenAI para generar consultas SQL. No use esto en producción.
MIT