Files
project-lyra/core/PROJECT_SUMMARY.md
2025-11-16 03:17:32 -05:00

72 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Lyra Core — Project Summary
## v0.4 (2025-10-03)
### 🧠 High-Level Architecture
- **Lyra Core (v0.3.1)** — Orchestration layer.
- Accepts chat requests (`/v1/chat/completions`).
- Routes through Cortex for subconscious annotation.
- Stores everything in Mem0 (no discard).
- Fetches persona + relevant memories.
- Injects context back into LLM.
- **Cortex (v0.3.0)** — Subconscious annotator.
- Runs locally via `llama.cpp` (Phi-3.5-mini Q4_K_M).
- Strict JSON schema:
```json
{
"sentiment": "positive" | "neutral" | "negative",
"novelty": 0.01.0,
"tags": ["keyword", "keyword"],
"notes": "short string"
}
```
- Normalizes keys (lowercase).
- Strips Markdown fences before parsing.
- Configurable via `.env` (`CORTEX_ENABLED=true|false`).
- Currently generates annotations, but not yet persisted into Mem0 payloads (stored as empty `{cortex:{}}`).
- **Mem0 (v0.4.0)** — Persistent memory layer.
- Handles embeddings, graph storage, and retrieval.
- Dual embedder support:
- **OpenAI Cloud** (`text-embedding-3-small`, 1536-dim).
- **HuggingFace TEI** (gte-Qwen2-1.5B-instruct, 1536-dim, hosted on 3090).
- Environment toggle for provider (`.env.openai` vs `.env.3090`).
- Memory persistence in Postgres (`payload` JSON).
- CSV export pipeline confirmed (id, user_id, data, created_at).
- **Persona Sidecar**
- Provides personality, style, and protocol instructions.
- Injected at runtime into Core prompt building.
---
### 🚀 Recent Changes
- **Mem0**
- Added HuggingFace TEI integration (local 3090 embedder).
- Enabled dual-mode environment switch (OpenAI cloud ↔ local TEI).
- Fixed `.env` line ending mismatch (CRLF vs LF).
- Added memory dump/export commands for Postgres.
- **Core/Relay**
- No major changes since v0.3.1 (still routing input → Cortex → Mem0).
- **Cortex**
- Still outputs annotations, but not yet persisted into Mem0 payloads.
---
### 📈 Versioning
- **Lyra Core** → v0.3.1
- **Cortex** → v0.3.0
- **Mem0** → v0.4.0
---
### 📋 Next Steps
- [ ] Wire Cortex annotations into Mem0 payloads (`cortex` object).
- [ ] Add “export all memories” script to standard workflow.
- [ ] Consider async embedding for faster `mem.add`.
- [ ] Build visual diagram of data flow (Core ↔ Cortex ↔ Mem0 ↔ Persona).
- [ ] Explore larger LLMs for Cortex (Qwen2-7B, etc.) for richer subconscious annotation.