Plataforma de entrevistas automatizadas basada en microservicios que utiliza IA para realizar y evaluar entrevistas en tiempo real.
- API Gateway: Punto de entrada único, maneja autenticación y enrutamiento.
- Core: Gestión de usuarios, roles, invitaciones y entrevistas.
- Speech: Provee servicios de STT y TTS en tiempo real.
- Evaluation & Reporting: Evaluación y generación de reportes.
- Redis: Streams, Cache y almacenamiento de invitaciones
- PostgreSQL: Usuarios, roles y metadatos
- Docker y Docker Compose
- Claves de API (OpenAI/Anthropic/etc)
- ~20GB de espacio en disco
- Clonar el repositorio:
git clone https://github.com/your-org/ia-interviews.git
cd ia-interviews- Configurar variables de entorno:
cp .env.example .env
# Editar .env con tus claves y configuraciones- Generar claves JWT:
# Crear directorio para claves
mkdir keys
# Generar par de claves RSA
openssl genrsa -out keys/private.pem 2048
openssl rsa -in keys/private.pem -pubout -out keys/public.pem# Construir e iniciar todos los servicios
docker compose up -d --build
# Ver logs
docker compose logs -f
# Detener servicios
docker compose down# Verificar estado de los servicios
docker compose ps
# Verificar logs de un servicio específico
docker compose logs -f service_name- Gateway: http://localhost:8080
- Core: http://localhost:8001
- Speech: http://localhost:8003
- Evaluation: http://localhost:8005
Cada servicio expone endpoints de healthcheck y métricas:
# Healthcheck
curl http://localhost:8080/healthz
# Métricas
curl http://localhost:8080/metrics.
├── gateway/ # API Gateway + WAF
├── services/
│ ├── core/ # Auth, Users, RBAC
│ ├── speech/ # STT/TTS Services
│ └── evaluation/ # Scoring & Reports
├── infra/ # DB init scripts
# Instalar shared lib en modo desarrollo
pip install -e ./shared-
Error de conexión a bases de datos
- Verificar credenciales en .env
- Confirmar que los servicios están corriendo
- Revisar logs específicos
-
Problemas con GPU
- Verificar instalación de NVIDIA Container Toolkit
- Confirmar drivers actualizados
- Revisar logs de speech service
-
Errores de JWT
- Verificar existencia de keys/
- Confirmar permisos de archivos
- Validar configuración en .env
- Fork el repositorio
- Crear branch (
git checkout -b feature/amazing-feature) - Commit cambios (
git commit -m 'Add amazing feature') - Push al branch (
git push origin feature/amazing-feature) - Abrir Pull Request