Spaces:
Running
title: Soma
emoji: π§
colorFrom: blue
colorTo: indigo
sdk: docker
pinned: false
π§ SOMA: Cognitive Architecture for AI
π Introduction
Soma is a state-of-the-art, brain-inspired cognitive system designed to simulate human-like mental processes through a multi-layered, interactive memory architecture. Engineered with a premium Neural Gloss aesthetic and a pure-black deep workspace layout, it maps conversation streams directly into physical concepts, associations, and permanent memory.
Unlike naive RAG systems, Soma acts like a child's brain learning about the world from scratch: it extracts clean, singular concept nodes and verb-style associations rather than plain raw chat text, assembling a growing semantic web of ideas that shapes how it responds to you.
ποΈ The 4 Cognitive Memory Layers
Soma's intelligence is organized into four distinct biological-style memory sectors:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β HUMAN INPUT / SENSORY β
βββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 1. SENSORY & EPISODIC LAYER (ChromaDB & SQLite) β
β Stores raw logs, chat context, and temporal events β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2. SEMANTIC CORTEX LAYER (Neo4j Graph Database) β
β Child-like mind map of simple concept relationships β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 3. CONSOLIDATION ENGINE (Sleep Cycle Processor) β
β Refines patterns, prunes facts, strengthens links β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- Sensory & Working Memory (Vector RAG): Utilizing ChromaDB, this layer indexes conversational streams to perform instant, high-dimensional semantic search.
- Semantic Memory (Graph RAG): Powered by Neo4j and structured Groq LLM (Llama 3.1 8B) extraction, this acts as the "concept map." It ignores conversational padding and stores simple, clean node-to-node links (e.g.,
KOMAL --LIKES--> CRICKET). - Episodic Memory (Relational): Maintains the timeline and context order of recent user exchanges inside a local SQLite (or scalable Supabase Postgres) database.
- Active working context: Feeds real-time vital stats to the UI and tracks the system's active reasoning state.
π€ The Sleep Cycle (Cognitive Consolidation)
To maintain an organized mind, Soma features an automated Sleep Engine. When triggered:
- Pattern Consolidation: Recent episodic experiences are summarized into long-term memories.
- Semantic Reinforcement: High-importance concepts and relationship connections are merged into the Neo4j knowledge graph.
- Episodic Pruning: Obsolete logs and redundant facts are cleaned, ensuring high processing speed.
β¨ Features
- Sci-Fi Neural Console: Premium pure-black visual design featuring neon-accented borders, micro-animations, glowing diagnostic widgets, and customizable dark/light theme options.
- Child-like Association Engine: Sturdy 3-layer extraction guard ensuring zero chat-log clutter. Validates concepts for short lengths (1-3 words), blocks meta-talk, and filters punctuation.
- Interactive 3D Neocortex Visualizer: Real-time rendering of your active cognitive state, memory graph, and system trace levels.
- Robust SSE (Server-Sent Events) Stream: Live system telemetries sent from backend to frontend for transparent reasoning.
- Seamless Dockerized Environment: Completely containerized Node.js frontend and Python FastAPI backend for rapid environment deployment.
π οΈ Technology Stack
Backend
- Core Framework: FastAPI (Python 3.10+)
- AI & Graph Orchestration: LangChain, LangGraph
- LLM Engine: Groq (Llama 3.1 8B) & OpenAI API
- Dependencies:
pydantic-settings,uvicorn,langchain-groq
Frontend
- Core Framework: React (Vite, JS)
- Design & Styling: Pure CSS (Neural Gloss Theme)
- Visualization: Custom interactive Network Graph views and CSS 3D elements
Databases
- Vector Store: ChromaDB (Vector RAG)
- Knowledge Graph: Neo4j Cloud / Local
- Episodic Sessions: SQLite / PostgreSQL
π Quick Start
1. Environment Set Up
Create a .env file in the root directory:
GROQ_API_KEY=gsk_your_groq_key_here
NEO4J_URI=neo4j+ssc://your-aura-db-uri.databases.neo4j.io
NEO4J_USER=neo4j
NEO4J_PASSWORD=your_password_here
NEO4J_DATABASE=neo4j
2. Run Local Environment (Docker Compose)
To compile and launch the entire cognitive stack:
docker-compose up --build
- Frontend console:
http://localhost:80 - FastAPI documentation:
http://localhost:8000/docs
3. Run Manually (Local Development)
Backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
Frontend
cd frontend
npm install
npm run dev
π Project Anatomy
.
βββ app/ # FastAPI Backend Core
β βββ api/ # API Routers & Communication endpoints
β βββ core/ # Configurations, Keys & Environmental Variables
β βββ db/ # Neo4j connections & Session drivers
β βββ services/ # Cognitive engine (Neocortex, Memory, Sleep processors)
βββ frontend/ # React Frontend Client (Vite)
β βββ src/
β β βββ components/ # UI elements (ChatPanel, KnowledgeGraph, Welcome pages)
β β βββ App.jsx # Main client state & proxy router controller
βββ scratch/ # Diagnostic scripts & model testing grounds
βββ Dockerfile # Root multi-stage Docker build config
βββ docker-compose.yml # Multi-container local orchestrator
βββ requirements.txt # Python environments manifest
π§ͺ Testing System
Run the system pipeline suite to verify semantic cortex extraction, database connections, and sleep cycle algorithms:
$env:PYTHONPATH="."; pytest tests/
Designed at the intersection of biological mind mechanics and clean digital intelligence.