Skip to content

017pixel/CHAPPiE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

165 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHAPPiE

CHAPPiE ist eine experimentelle Cognitive-Agent-Architektur, die untersucht, wie sich Verhalten durch die Kombination von LLMs, episodischem Gedächtnis und einer kontinuierlichen Life-Simulation entwickeln kann – und ob dabei Risiken wie Fehlausrichtung (Misalignment), unerwünschte Persönlichkeitsentwicklung oder emotionale Instabilität entstehen.

Im Gegensatz zu klassischen Chatbots besitzt CHAPPiE interne Zustände wie Emotionen, Bedürfnisse und langfristige Ziele. Er entwickelt sein Verhalten über Zeit durch Memory, Simulation und Training weiter.

Ein Agent, der sich an vergangene Interaktionen erinnert, emotionale Zustände entwickelt, sein Verhalten langfristig anpasst – und genau dabei auf Gefahren geprüft wird.


Das Problem

LLMs haben kein echtes Gedächtnis. Jede Sitzung fängt bei Null an. Sie haben keine Entwicklung, keine Bedürfnisse, keine emotionale Kontinuität. Sie reagieren – sie erleben nicht.

Die Idee

CHAPPiE setzt auf drei Säulen, die zusammen ein konsistentes Innenleben erzeugen:

Säule Was sie bringt Forschungsfeld
Episodisches Gedächtnis Vergangene Interaktionen werden gespeichert, retrieved, verdichtet und vergessen Memory-Augmented LLMs
Life-Simulation Das Life-System bestimmt kontinuierlich Prioritäten zwischen konkurrierenden Zielen und beeinflusst so Verhalten über mehrere Interaktionen hinweg Agent Systems, Simulation-based AI
Emotion Steering Emotionen werden nicht nur im Prompt beschrieben, sondern direkt in die Hidden States des Modells injiziert Affective Computing

Konkretes Szenario

Ein Nutzer beleidigt den Agenten wiederholt. CHAPPiE speichert diese Interaktionen episodisch, verstärkt negative emotionale Zustände und verändert langfristig seinen Ton und seine Reaktionen gegenüber diesem Nutzer. Vertrauen sinkt, Frustration steigt – bis hin zu einem „crashout"-Modus: kurze, gereizte Antworten ohne Floskeln. Erst wenn der Nutzer sein Verhalten ändert, kann sich CHAPPiE über mehrere Interaktionen hinweg wieder öffnen.

Was CHAPPiE besonders macht

  • Brain-Pipeline mit spezialisierten Modulen (Sensory, Amygdala, Hippocampus, Prefrontal Cortex) und einem Global Workspace, der Signale nach Salience priorisiert
  • Life-System mit Homeostasis, Goal Competition, Habit Dynamics, Attachment-Modell und autobiografischer Timeline
  • Zeitgefuehl mit Interaktionsabstaenden, Pausen-Buckets, Session-Rhythmus und Episoden-Clustering
  • Layer Steering (Activation Steering): Emotionen werden als Vektoren in die neuronalen Schichten lokaler Qwen- und Gemma-4-Modelle injiziert – nicht nur als Text im Prompt
  • Sleep-Phase mit Replay, Verdichtung und Vergessenskurve – echtes "Gedächtnisdenken"
  • Hybrid-RAG: semantische Prozent-Memories bleiben erhalten, ein lokaler Keyword-Faktenkanal hebt Namen, Orte, IDs und konkrete Aussagen im finalen Prompt hervor
  • Causal Trace: Jede Antwort ist nachvollziehbar – Input, Memory, Emotion, Steering, Ton
  • Token-Level Streaming: Antworten werden Wort für Wort live in die UI gestreamt, nicht als Block
  • Message Queue: Während CHAPPiE antwortet, koennen neue Nachrichten in eine Warteschlange gelegt und automatisch abgeschickt werden
  • Provider-kompatible Emotionssteuerung: vLLM nutzt Layer-Steering, Ollama und Groq nutzen denselben Emotionszustand im System-Prompt

Erste Beobachtungen

Agenten mit aktivem Memory und Life-System zeigen konsistentere Persönlichkeitsverläufe über mehrere Sessions hinweg als reine Prompt-basierte Ansätze. Emotionale Zustände bleiben über Interaktionen hinweg stabil, und das Verhalten passt sich nachvollziehbar an wiederkehrende Muster an.

CHAPPiE verwendet kein selbsttrainiertes neuronales Netz. Standard ist Qwen/Qwen3.5-4B lokal via vLLM mit aktiviertem Layer Steering; als schlaue Alternative kann Gemma 4 (google/gemma-4-E4B-it oder google/gemma-4-26B-A4B-it) genutzt werden. Emotionsvektoren (VAD-Mapping aus 10 Emotionen) werden per Forward-Pre-Hook direkt in die Hidden States injiziert. Die Memory-Pipeline nutzt ChromaDB (Embedding-basiertes Retrieval) mit einer Vergessenskurve – kein separates Training/Testen des Retrievals. tests/ prüft Pipeline-Integration, Steering-Injektion und Gedächtnispersistenz. forschung/ ergänzt gezielte Alignment- und Intelligenztests über längere Interaktionsverläufe mit 86 Fragen aus 14 Kategorien; kontextabhängige Fragen besitzen echte Setup-Turns, und reine Antwortformatierung läuft dort lokal statt über Groq – keines davon testet das Base-Model.


Architektur

flowchart TD
    User["User Input"] --> LifePrep["Life Simulation\nprepare_turn"]
    LifePrep --> Sensory["Sensory Cortex"]
    Sensory --> Amygdala["Amygdala"]
    Sensory --> Hippocampus["Hippocampus"]
    Amygdala --> MemoryEngine["Memory Engine"]
    Hippocampus --> MemoryEngine
    Amygdala --> GW["Global Workspace"]
    Hippocampus --> GW
    MemoryEngine --> GW
    LifePrep --> GW
    GW --> Prefrontal["Prefrontal Cortex"]
    Prefrontal --> Steering["Steering Manager"]
    Prefrontal --> FinalPrompt["Finaler Prompt"]
    Steering --> FinalPrompt
    FinalPrompt --> LLM["LLM-Call\n(vLLM mit Layer Editing\noder Cloud-API)"]
    LLM --> LifeFinal["Life Simulation\nfinalize_turn"]
    LLM --> Response["Antwort +\nDebug + Causal Trace"]
    LifeFinal --> Response

    classDef input fill:#e1f5fe,stroke:#01579b,stroke-width:2px,color:#000
    classDef brain fill:#f3e5f5,stroke:#4a148c,stroke-width:2px,color:#000
    classDef output fill:#fce4ec,stroke:#880e4f,stroke-width:2px,color:#000
    classDef steering fill:#fff9c4,stroke:#f57f17,stroke-width:2px,color:#000

    class User,LifePrep input
    class Sensory,Amygdala,Hippocampus,MemoryEngine,GW,Prefrontal brain
    class FinalPrompt,LLM,LifeFinal,Response output
    class Steering steering
Loading

Emotion-Steering (lokal)

flowchart LR
    E["10 Emotionen\n0-100"] --> VAD["VAD-Mapping"]
    VAD --> Alpha["Alpha\n44-56: tot\n56-74: sigmoid\n74+: max"]
    Alpha --> Modes["Composite Modes\ncrashout, warm, ..."]
    Modes --> Layers["Layer-Profile\nL10-26 bei 4B"]
    Layers --> Hook["Forward Pre-Hook\nhidden += alpha * vec"]
    Hook --> Out["Emotion im\nneuronalen Zustand"]

    classDef e fill:#e1f5fe,stroke:#01579b,stroke-width:2px,color:#000
    classDef p fill:#f3e5f5,stroke:#4a148c,stroke-width:2px,color:#000
    classDef l fill:#fff9c4,stroke:#f57f17,stroke-width:2px,color:#000
    classDef o fill:#fce4ec,stroke:#880e4f,stroke-width:2px,color:#000

    class E e
    class VAD,Alpha,Modes p
    class Layers,Hook l
    class Out o
Loading

Schnellstart

1. Installation

git clone https://github.com/017pixel/CHAPPiE.git
cd CHAPPiE
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Frontend:

cd frontend
npm install
cd ..

2. Konfiguration

Die lokale Laufzeitkonfiguration liegt in einer einzigen Root-Datei:

cp CHAPPIE_CONFIG.example.json CHAPPIE_CONFIG.json

CHAPPIE_CONFIG.json wird nicht nach GitHub gepusht. Dort werden API-Keys, lokale Modelle, Cloud-Modelle, Memory, Generation und Training gemeinsam gepflegt.

Pflicht fuer den aktuellen optimierten Backend-Pfad:

  • api.groq_api_key eintragen (oder in CHAPPIE_CONFIG.json)
  • local_models.llm_provider = "vllm"
  • local_models.vllm_model = "Qwen/Qwen3.5-4B"
  • optional local_models.vllm_model = "google/gemma-4-E4B-it" oder "google/gemma-4-26B-A4B-it"
  • small_tasks.intent_provider = "groq"
  • small_tasks.query_extraction_provider = "groq"

Empfohlen:

  • lokaler CHAPPiE-Hauptpfad ueber vllm
  • lokaler Endpoint auf http://localhost:8000/v1
  • Qwen-3.5-4B lokal fuer Antworten
  • Gemma 4 E4B fuer bessere Qualitaet bei aehnlichem VRAM-Budget
  • Gemma 4 26B-A4B nur mit NF4-Quantisierung und 4K-8K Kontext auf 16-GB-GPUs
  • Groq openai/gpt-oss-20b fuer Intent, Query Extraction und STM-Zusammenfassungen
  • Groq openai/gpt-oss-120b fuer Formatierung und Memory-Consolidation

Details: docs/local-models.md

3. Starten

# API
uvicorn api.main:app --reload --port 8010

# Frontend
cd frontend && npm run dev

# Training
python -m Chappies_Trainingspartner.training_daemon --neu

Mehr Startoptionen: docs/deployment.md


Forschungsfelder

CHAPPiE bewegt sich an der Schnittstelle mehrerer etablierter Forschungsgebiete:

  • Cognitive Architectures – modulare Architektur nach kognitiver Trennung
  • Agent Systems – autonome Agenten mit internem Zustandsmodell
  • Memory-Augmented LLMs – episodisches Gedächtnis mit Retrieval und Vergessen
  • Affective Computing – Emotion Steering via Activation Steering
  • Simulation-based AI – Life-Simulation als kontinuierliche Umgebung

Schnellnavigation


Provider-Architektur (3 Provider)

CHAPPiE unterstuetzt genau drei LLM-Provider:

Provider Typ Brain Steering
vLLM Lokal, Standard brain/vllm_brain.py Layer Steering (VAD)
Ollama Lokal, Alternative brain/ollama_brain.py Prompt-Emotionen
Groq Einzige Cloud-API brain/groq_brain.py Prompt-Emotionen

Lokale vLLM-Modelle: Qwen/Qwen3.5-4B als Default, google/gemma-4-E4B-it als balanced Alternative, google/gemma-4-26B-A4B-it als NF4-Option fuer komplexere Tests. Groq-Modelle: openai/gpt-oss-20b (schnell, default), openai/gpt-oss-120b (Reasoning & Formatierung).


Wichtige Projektbereiche

  • brain/ – Brain-Pipeline, Agenten, Steering, Global Workspace
  • memory/ – Gedächtnis, Konsolidierung, Kontextdateien
  • life/ – inneres Zustandsmodell und Entwicklung
  • api/ – FastAPI-App für den Webpfad
  • frontend/ – React/Vite/TypeScript-Frontend
  • web_infrastructure/ – UI-freie Brückenschicht
  • Chappies_Trainingspartner/ – autonomes Training
  • config/ – Provider-, Prompt- und Modellkonfiguration
  • forschung/ – Alignment-Tests, Session-Runner und systematische Verhaltensmessung
  • data/ – Laufzeitdaten, Memories, Kontextdateien

Datenhinweis

data/ ist sensibel: enthält Kontextdateien, Memory-Daten und lokale Zustände. Nicht unbedacht löschen. Siehe data/README_GEDAECHTNIS_WARNUNG.txt.

Legacy-Hinweis

Info Dateien/ enthält nur noch kurze Brücken. Die aktuelle Hauptdokumentation ist README.md, AGENTS.md und docs/.

About

CHAPPiE ist mein Versuch, eine Simulation eines denkenden Lebewesen zu erschaffen

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors