Vision: foundations
Vision — foundations RFC
Status
*ccepted*— ratificada 20260509 (mesmo dia da abertura) como parte da onda piloto de bootstrap servicesai. Implementação iniciada em `servicesaivision; tickets em servicesaivisionbacklogpending/{001..005}`.
Summary
Foundation service para análise de imagem e VLM (visionlanguage models) — OCR serverside, image captioning, object detection, document layout, e roteamento pra modelos multimodais (ClaudeGeminiGPT-4V) via gateway.
Motivation
Modelos flagship em 2026 são todos multimodais. Koder Stack tem foundation só pra áudio (voice/); vision está espalhada (kode/app OCR, eye ondevice OCR, document analysis adhoc no kode). Sem service-foundation, cada produto reinventa a roda.
Scope
In
- Server-side OCR
- Image captioning
- Object detection
- Doc layout (PDF + tabelas)
- Proxy pra VLMs externos via gateway
- Kit Dart/JS no SDK
Out (yet)
- Image generation (vai pra
imaging) - Video (vai pra
video) - 3D (vai pra
scene3d) - Eye
style ondevice (já existe emproducts/dev/eye)
Initial design
Surfaces
backend/— Go API service exposto via gatewayapp/— não aplicável v1 (consumido via SDK)
Key APIs
POST /v1/vision/ocr— extrai texto de imagem/PDFPOST /v1/vision/caption— gera descrição textual de imagemPOST /v1/vision/detect— bounding boxes + labelsPOST /v1/vision/layout— estrutura de documento (heading, body, table, figure)
Dependencies
services/ai/gateway— provider routing pra VLMs externosservices/ai/runtime— modelos locais (Florence-2, CLIP)infra/data/kdb-blob— armazenamento de imagens/resultados
Relation to existing sectors
- Complementa
voice/(audio) cobrindo a outra metade da modalidade humana - Sobrepõe parcialmente com
products/dev/eye(ondevice); este service cobre casos serveronly
Selfhostedfirst analysis (5 gates)
- *1 Feature parity* zero impl
- *2 Performance* N/A (não há baseline self-hosted)
- *3 Stability* N/A
- *4 Capability* cobertura inicial OCR + caption viável local (Tesseract + Florence-2)
- *5 Critical-path readiness* bloqueia kodeagentseye unification
Open questions
- Q1: Quais modelos VLM rodar self-hosted vs apenas proxy?
- Q2: Sobreposição com
products/dev/eye(ondevice) — service serve casos serveronly?
Next steps
- Ratificar esta RFC (1 round de comments).
- Criar sector dir
services/ai/vision/comkoder.toml,README.md, skeleton. - Abrir tickets de implementação em
services/ai/vision/backlog/pending/. - Registrar em
meta/docs/stack/registries/self-hosted-pairs.mdse substituir externo.