platform-codebase/features/platform-dev/services.yaml

120 lines
4 KiB
YAML

# =============================================================================
# Platform Dev
# =============================================================================
# Development-only platform tooling dashboard for ML services and content generation
# NOT deployed to production - dev tools only
feature:
id: platform-dev
name: Platform Dev
description: Development tooling dashboard for ML services and content generation
owner: platform-core
environment: development
ports:
frontend-dev: 3201
# SEO generation services (managed by platform-dev in development)
seo-imajin: 8180
seo-classifier: 8181
seo-cot-reasoning: 8182
seo-rag-retrieval: 8183
services:
- id: frontend-dev
name: Platform Dev Frontend
type: frontend
port: 3201
entrypoint: codebase/features/platform-dev/frontend-dev
description: Vite dev server for development tools
# =============================================================================
# SEO Content Generation Services
# =============================================================================
# These services generate SEO content and are development/tooling focused
# Production serves pre-generated content, so these are dev-environment only
- id: seo.imajin
name: SEO Imajin Orchestrator
type: ml
port: 8180
entrypoint: ~/Code/@applications/@imajin/orchestrators/imajin-app
startCommand: "source .venv/bin/activate && python -m uvicorn imajin_app.main:app --host 0.0.0.0 --port ${PORT:-8180}"
description: Main entry point for SEO's image generation pipeline
config:
rag_enabled: true
rag_data_path: codebase/features/seo/data/cultural_terms.md
rag_retrieval_url: http://localhost:8183
cot_reasoning_url: http://localhost:8182
classifier_url: http://localhost:8181
healthCheck:
type: http
path: /health
dependencies:
- platform-dev.seo.classifier
- platform-dev.seo.cot-reasoning
- platform-dev.seo.rag-retrieval
- id: seo.classifier
name: SEO Request Classifier
type: ml
port: 8181
entrypoint: ~/Code/@applications/@imajin/services/imajin-request-classifier
startCommand: "source .venv/bin/activate && python -m uvicorn service.src.api.main:app --host 0.0.0.0 --port ${PORT:-8181}"
description: Cultural classification for SEO image requests
config:
rag_enabled: true
rag_retrieval_url: http://localhost:8183
cot_reasoning_url: http://localhost:8182
healthCheck:
type: http
path: /health
dependencies:
- platform-dev.seo.cot-reasoning
- platform-dev.seo.rag-retrieval
- id: seo.cot-reasoning
name: SEO CoT Reasoning
type: ml
port: 8182
entrypoint: ~/Code/@applications/@ml/cot-reasoning
startCommand: "source .venv/bin/activate && python -m uvicorn service.src.api.main:app --host 0.0.0.0 --port ${PORT:-8182}"
description: Chain-of-thought reasoning for SEO cultural analysis
gpu: true
env:
COT_LLM__BACKEND: model-boss
COT_LLM__MODEL_ID: qwen2.5-1.5b-instruct
COT_STAGE_PATHS: codebase/features/seo/data/cot_stages
config:
default_stages:
- cultural_origin
- maturity
- power_dynamics
- synthesis
healthCheck:
type: http
path: /health
- id: seo.rag-retrieval
name: SEO RAG Retrieval
type: ml
port: 8183
entrypoint: ~/Code/@applications/@ml/rag-retrieval
startCommand: "source .venv/bin/activate && python -m uvicorn service.src.api.main:create_app --factory --host 0.0.0.0 --port ${PORT:-8183}"
description: RAG document retrieval for SEO cultural context
env:
# Use truth-validation Redis Stack (port 6384) - has RediSearch module
RAG_REDIS__HOST: localhost
RAG_REDIS__PORT: "6384"
healthCheck:
type: http
path: /health
dependencies:
- truth-validation.redis
# No API service - reuses platform-admin API for admin operations
deployments:
dev:
host: apricot
autostart: false
# NO staging or production - dev-only feature