Loading repository data…
Loading repository data…
Jucema89 / repository
Aitrain-API es un backend que usando LangChain, Qdrant Y Postgres permite crear un Sistema RAG que ingesta multiples tipos de archivos con el proposito de generar los archivos de FineTunning necesarios para Entrenar un modelo de IA
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
El objetivo principal es crear los archivos .jsonl en el schema exigido por OpenAI para Finetuning, en esta imagen vemos en macro el flujo de los datos y las transformaciones.
graph LR
Z[Aitrain] --> A
A[Documentos] -- LangChain Embedding --> B((OpenAI))
Z --Las Q&A se formatean en files validos--> Y
Y[Files .jsonl] --> D
B --> C(Genera Q&A para .jsonl)
C -- Q&A para creación de Files --> Z
B --> D(Hacer Finetuning de Modelo)
Necesitaras las versión de Node 20 o superior, se usa Langchain.js y al ser una implementacion de esta libreria original de Python requerira Python tambien. Ademas usa utilidades como Make o G++, por esto se recomienda correrlo en local dentro de una maquina Linux o en un WSL2 en Windows para facilitar estas instalaciones.
Aitrain API usa Postgres como base de datos y a Prisma como ORM de comunicacion y manejo de Schemas. Se recomienda usar una Imagen de Docker de Postgres y crear un contenedor.
Para instalar el proyecto deberas contar con git en tu maquina, abres una consola y ejecutar estos comandos:
git clone git@github.com:Jucema89/aitrain-API.gitnpm inpx prisma generatenpm run devRecuerda crear el archivo en la raiz del proyecto, necesitaras estas variables de entorno. Las de AWS no son requeridas.
.envENVIRONMENT='develop'
PORT_EXPRESS=3900
BACK_NODE_URL='http://localhost:3900'
DATABASE_URL="postgresql://usuario-postgres:pass-user@localhost:6432/aitrain"
AWS_ACCESS_KEY_ID=ABCDEFG
AWS_SECRET_ACCESS_KEY=XXXXxxxXXxXXXx
AWS_BUCKET=my-bucket
AWS_BUCKET_REGION=us-east-2
Copia el docker compose y ejecutalo: Con el archivo se bajara la ultima imagen de aitrain-backend y se crearan dos servicios: uno con la base de datos de Postgres y la otra con el backend de Node, por defecto corre en el puerto 3900. Te diriges a la web de Aitrain app y en la sección de configuración colocas la url de backend y la Api Key que generas en OpenAi ya con eso puedes generar los documentos .jsonl para entrenamiento y luego con ellos entrenar la IA de OpenAI.
Nota: De momento solo GPT-3.5 y sus versiones son las habilitadas para Finetuning.
##docker-compose.yml
version: '3.8'
services:
db:
image: postgres
environment:
POSTGRES_DB: aitrain
POSTGRES_USER: postgres
POSTGRES_PASSWORD: aitrainPass
ports:
- "6432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
app:
image: juliodaza/aitrain-backend:latest
ports:
- "3900:3900"
environment:
DATABASE_URL: "postgresql://postgres:aitrainPass@db:5432/aitrain"
depends_on:
- db
volumes:
postgres_data: