Phase 3: AI integration with Ollama via Python sidecar
- sidecar: FastAPI app with /embed, /generate, /rerank hitting Ollama - sidecar: Dockerfile, env var config (EMBED_MODEL, GEN_MODEL, RERANK_MODEL) - aibridge: reqwest HTTP client with typed request/response structs - aibridge: Axum proxy endpoints (POST /ai/embed, /ai/generate, /ai/rerank) - gateway: wires AiClient with SIDECAR_URL env var - e2e verified: nomic-embed-text returns 768d vectors, qwen2.5 generates text Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+6
-6
@@ -31,13 +31,13 @@
|
||||
**Gate: PASSED** — SELECT *, WHERE/ORDER BY, COUNT/AVG all return correct results via catalog.
|
||||
|
||||
## Phase 3: AI Integration
|
||||
- [ ] 3.1 — Python sidecar: FastAPI + Ollama (embed/generate/rerank)
|
||||
- [ ] 3.2 — Dockerfile for sidecar
|
||||
- [ ] 3.3 — aibridge/client.rs: HTTP client to sidecar
|
||||
- [ ] 3.4 — aibridge service: Axum proxy endpoints
|
||||
- [ ] 3.5 — Model config via env vars
|
||||
- [x] 3.1 — Python sidecar: FastAPI + Ollama (embed/generate/rerank) — real models, no mocks
|
||||
- [x] 3.2 — Dockerfile for sidecar
|
||||
- [x] 3.3 — aibridge/client.rs: reqwest HTTP client with 120s timeout
|
||||
- [x] 3.4 — aibridge service: Axum proxy endpoints (POST /ai/embed, /ai/generate, /ai/rerank)
|
||||
- [x] 3.5 — Model config via env vars (EMBED_MODEL, GEN_MODEL, RERANK_MODEL, SIDECAR_URL)
|
||||
|
||||
**Gate:** Rust → Python → Ollama → real embeddings return.
|
||||
**Gate: PASSED** — Gateway → aibridge → sidecar → Ollama → real 768d embeddings + generation.
|
||||
|
||||
## Phase 4: Frontend
|
||||
- [ ] 4.1 — Dioxus scaffold, WASM build
|
||||
|
||||
Reference in New Issue
Block a user