Plataforma enterprise para forjar, gerenciar e treinar modelos de IA proprietários VR
VRForge é a plataforma oficial da VR Automatize para criação, gerenciamento e treinamento de modelos de IA proprietários, suportando múltiplos domínios de negócio e diferentes casos de uso.
O VRForge é a plataforma oficial da VR Automatize para forjar modelos de IA proprietários VR, suportando múltiplos domínios de negócio e diferentes casos de uso:
- VR Chat - IA conversacional geral
- VR Code - Assistente de código
- VR Data - Análise de dados e SQL
- VR Lex - Jurídico + RAG
- VR Agent Brain - Orquestrador inteligente
- Modelos rápidos (Phi-3 Mini, Qwen small)
- Python 3.11
- FastAPI - Framework web assíncrono
- PostgreSQL - Banco de dados
- SQLAlchemy - ORM assíncrono
- Alembic - Migrações de banco
- AWS S3 - Armazenamento de arquivos
- Docker - Containerização
- Pydantic - Validação de dados
- Structlog - Logging estruturado
/app
├── api/ # Endpoints da API REST
│ └── v1/ # Versão 1 da API
├── core/ # Configuração e utilitários core
├── db/ # Configuração do banco de dados
├── models/ # Modelos SQLAlchemy (11 modelos)
├── schemas/ # Schemas Pydantic para validação
├── services/ # Lógica de negócio (9 services)
├── integrations/ # Integrações externas
│ ├── s3_client.py
│ ├── llm_providers/ # OpenAI, Gemini, Together
│ └── text_extractors/ # PDF, DOCX, TXT
└── main.py # Entry point FastAPI
/alembic/ # Migrações do banco de dados
/tests/ # Testes automatizados
- Python 3.11+
- PostgreSQL 15+
- Docker (opcional)
# 1. Clone o repositório
git clone https://github.com/seu-usuario/backend-vr-forge.git
cd backend-vr-forge
# 2. Crie e ative ambiente virtual
python -m venv venv
source venv/bin/activate # Linux/Mac
# ou
venv\Scripts\activate # Windows
# 3. Instale dependências
pip install -r requirements.txt
# 4. Configure variáveis de ambiente
cp .env.example .env
# Edite .env com suas credenciais
# 5. Execute migrações
alembic upgrade head
# 6. Inicie o servidor
uvicorn app.main:app --reload# Build e start
docker-compose up --build
# Executar migrações
docker-compose exec api alembic upgrade headA API estará disponível em:
- Produção/Desenvolvimento:
https://forge-server.grupo-vr.com - Local:
http://localhost:8000(se rodando localmente)
Nota: O servidor está atrás de um proxy reverso, então não é necessário especificar a porta na URL pública.
Após iniciar o servidor, acesse:
- Swagger UI:
https://forge-server.grupo-vr.com/docs - ReDoc:
https://forge-server.grupo-vr.com/redoc - Health Check:
https://forge-server.grupo-vr.com/health
POST /api/v1/domains- Criar domínioGET /api/v1/domains- Listar domíniosGET /api/v1/domains/{id}- Obter domínioPUT /api/v1/domains/{id}- Atualizar domínio
POST /api/v1/documents/upload- Upload documentoGET /api/v1/documents- Listar documentosGET /api/v1/documents/{id}- Obter documentoPOST /api/v1/documents/{id}/process- Processar documento
GET /api/v1/segments- Listar segmentos (com filtros)GET /api/v1/segments/{id}- Obter segmento
POST /api/v1/templates- Criar template de geraçãoGET /api/v1/templates- Listar templatesGET /api/v1/templates/{id}- Obter template
POST /api/v1/datasets- Criar datasetGET /api/v1/datasets- Listar datasetsGET /api/v1/datasets/{id}- Obter datasetPOST /api/v1/datasets/generate- Gerar items sintéticos
GET /api/v1/dataset/review/pending- Listar items pendentesPOST /api/v1/dataset/review/{id}/approve- Aprovar itemPOST /api/v1/dataset/review/{id}/reject- Rejeitar itemPOST /api/v1/dataset/review/{id}/edit- Editar itemGET /api/v1/dataset/review/{id}/history- Histórico de revisões
POST /api/v1/datasets/{id}/export- Exportar JSONL (formato Together)GET /api/v1/datasets/{id}/exports- Listar exportsGET /api/v1/exports/{id}/download- URL de download
GET /api/v1/models- Listar modelosPOST /api/v1/models- Registrar modeloGET /api/v1/training-jobs- Listar jobs de treinamentoPOST /api/v1/training-jobs- Criar job de treinamento
- domains - Domínios de negócio (VR Chat, VR Code, etc.)
- documents - Documentos uploadados
- document_versions - Versões processadas dos documentos
- segments - Segmentos de texto extraídos
- generation_templates - Templates para geração de datasets
- datasets - Datasets de treinamento
- dataset_items - Items individuais do dataset
- dataset_exports - Histórico de exports
- dataset_reviews - Revisões humanas
- models - Modelos de IA registrados
- training_jobs - Jobs de treinamento
- system_logs - Logs do sistema
# Criar nova migração
alembic revision --autogenerate -m "descrição da mudança"
# Aplicar migrações
alembic upgrade head
# Reverter migração
alembic downgrade -1# Executar todos os testes
pytest
# Com coverage
pytest --cov=app
# Testes específicos
pytest tests/test_domains.pyVeja .env.example para todas as variáveis necessárias:
# Database
DATABASE_URL=postgresql+asyncpg://user:pass@localhost:5432/vrforge
# AWS S3
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_S3_BUCKET_NAME=vrforge-storage
AWS_S3_REGION=us-east-1
# LLM Providers
OPENAI_API_KEY=sk-...
GOOGLE_GEMINI_API_KEY=...
TOGETHER_API_KEY=...O projeto está preparado para deploy no EasyPanel:
- Conecte o repositório GitHub
- Configure as variáveis de ambiente
- O build automático via Dockerfile será executado
- Health check disponível em
/health
O Dockerfile usa multi-stage build para otimizar o tamanho da imagem:
- Build stage: Compila dependências
- Runtime stage: Imagem final otimizada
- Healthcheck configurado
- Usuário não-root para segurança
- Upload de Documentos → Upload para S3
- Processamento → Extração de texto e segmentação
- Geração de Dataset → Criação sintética usando LLMs
- Revisão Humana → Aprovação/rejeição de items
- Export → Geração de JSONL para fine-tuning
- Treinamento → Registro de jobs de treinamento
- Fork o projeto
- Crie uma branch (
git checkout -b feature/nova-feature) - Commit suas mudanças (
git commit -m 'Adiciona nova feature') - Push para a branch (
git push origin feature/nova-feature) - Abra um Pull Request
Este projeto é proprietário da VR Automatize.
Para questões e suporte, abra uma issue no GitHub.
VRForge - Forjando o futuro da IA VR 🚀