Codette-Reasoning / HOWTO.md
Raiff1982's picture
Upload 78 files
d574a3d verified

Codette Training Lab β€” HOWTO Guide

For Jonathan (and Future Jonathan Who Forgot Everything)


Quick Reference: What Goes Where

codette-training-lab/
β”œβ”€β”€ adapters/                    # GGUF LoRA adapter files (~27MB each)
β”‚   β”œβ”€β”€ newton-lora-f16.gguf     # Trained, working
β”‚   β”œβ”€β”€ davinci-lora-f16.gguf    # Trained, working
β”‚   └── (6 more after HF job)   # empathy, philosophy, quantum, etc.
β”‚
β”œβ”€β”€ bartowski/                   # Base GGUF model (Q4_K_M, ~4.6GB)
β”‚   └── Meta-Llama-3.1-8B-Instruct-GGUF/
β”‚       └── Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf
β”‚
β”œβ”€β”€ datasets/                    # Training data (8 JSONL files, ~20K examples total)
β”‚   β”œβ”€β”€ newton_reasoning.jsonl   # 3000 examples
β”‚   β”œβ”€β”€ davinci_reasoning.jsonl  # 2500 examples
β”‚   └── (6 more...)
β”‚
β”œβ”€β”€ inference/                   # Everything for RUNNING Codette
β”‚   β”œβ”€β”€ codette_orchestrator.py  # Main brain: routes queries to adapters
β”‚   β”œβ”€β”€ adapter_router.py        # Keyword/LLM routing engine
β”‚   β”œβ”€β”€ model_loader.py          # Transformers-based model loader (GPU path)
β”‚   β”œβ”€β”€ codette_chat_ui.py       # Legacy tkinter chat UI (still works!)
β”‚   β”œβ”€β”€ codette_server.py        # NEW: Web UI backend (FastAPI-free)
β”‚   β”œβ”€β”€ codette_session.py       # NEW: Cocoon-backed session manager
β”‚   └── static/                  # NEW: Web UI frontend
β”‚       β”œβ”€β”€ index.html           # Single-page chat app
β”‚       β”œβ”€β”€ style.css            # Dark theme + adapter colors
β”‚       β”œβ”€β”€ app.js               # Chat logic + streaming
β”‚       └── spiderweb.js         # Canvas visualization of agent network
β”‚
β”œβ”€β”€ reasoning_forge/             # RC+xi reasoning engine (v2.0)
β”‚   β”œβ”€β”€ forge_engine.py          # Main forge: 3 modes (single, feedback, debate)
β”‚   β”œβ”€β”€ epistemic_metrics.py     # Tension/coherence/coverage scoring
β”‚   β”œβ”€β”€ quantum_spiderweb.py     # 5D belief graph + attractors + glyphs
β”‚   β”œβ”€β”€ cocoon_sync.py           # Fernet-encrypted state sync protocol
β”‚   β”œβ”€β”€ synthesis_engine.py      # Multi-perspective synthesis
β”‚   └── critic_agent.py          # Meta-evaluation agent
β”‚
β”œβ”€β”€ training/                    # Everything for TRAINING adapters
β”‚   β”œβ”€β”€ train_hf_job_v3.py       # HuggingFace cloud GPU training (A10G)
β”‚   β”œβ”€β”€ train_cpu_lean.py        # Local CPU Pipeline 1 (~18GB RAM)
β”‚   β”œβ”€β”€ train_cpu_offload.py     # Local CPU Pipeline 2 (~8-12GB RAM)
β”‚   └── (other training scripts)
β”‚
β”œβ”€β”€ dataset_engine/              # Dataset generation from concepts
β”œβ”€β”€ evaluation/                  # Eval scripts
β”œβ”€β”€ research/                    # Papers, frameworks, experiments
β”œβ”€β”€ configs/                     # YAML configs for adapters/pipeline
β”‚
β”œβ”€β”€ codette_chat.bat             # Double-click: launch tkinter chat UI
β”œβ”€β”€ train_local.bat              # Launch local CPU training
└── codette_web.bat              # NEW: Double-click: launch web UI

How To: Launch Codette (Chat)

Option A: Web UI (Recommended)

Double-click: codette_web.bat
   OR
J:\python.exe J:\codette-training-lab\inference\codette_server.py
   THEN open: http://localhost:7860

Option B: Legacy Tkinter UI

Double-click: codette_chat.bat
   OR
J:\python.exe J:\codette-training-lab\inference\codette_chat_ui.py

Option C: Command Line

J:\python.exe J:\codette-training-lab\inference\codette_orchestrator.py
J:\python.exe J:\codette-training-lab\inference\codette_orchestrator.py --query "How does gravity work?"
J:\python.exe J:\codette-training-lab\inference\codette_orchestrator.py --adapter newton --query "F=ma"

How To: Train Adapters

Cloud (HuggingFace GPU β€” Fast, ~10-20 min per adapter)

  1. Go to huggingface.co/jobs
  2. Submit training/train_hf_job_v3.py as a UV job
  3. Select a10g-small flavor, 8h timeout
  4. Add secret: HF_TOKEN=$HF_TOKEN
  5. Trained adapters auto-upload to Raiff1982/codette-lora-adapters

Local CPU (Slow but free)

train_local.bat lean newton          # Pipeline 1: ~18GB RAM, ~30-90s/step
train_local.bat offload empathy      # Pipeline 2: ~8-12GB RAM, ~2-5min/step
train_local.bat lean --list          # Show available adapters

After Training: Convert to GGUF

J:\python.exe J:\TheAI\llama.cpp\convert_lora_to_gguf.py ^
  --base J:\codette-training-lab\bartowski\Meta-Llama-3.1-8B-Instruct-GGUF\Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf ^
  --lora /path/to/trained/adapter ^
  --outfile J:\codette-training-lab\adapters\ADAPTERNAME-lora-f16.gguf

How To: Add a New Adapter After Training

  1. Convert HuggingFace adapter to GGUF (see above)
  2. Place the .gguf file in adapters/ folder
  3. Edit inference/codette_orchestrator.py:
    • Uncomment the adapter in ADAPTER_GGUF_MAP
  4. Restart Codette β€” the router auto-discovers available adapters

The Cocoon System (How Codette Remembers)

The Cocoon is Codette's encrypted memory system:

  • QuantumSpiderweb: A 5D graph where each reasoning agent is a node. Nodes have states (psi, tau, chi, phi, lambda) representing thought magnitude, temporal progression, processing speed, emotional valence, and semantic weight.

  • Attractors: When agents' beliefs converge, they form attractor clusters. These represent stable consensus points in Codette's reasoning.

  • Glyphs: Identity signatures formed from FFT-compressed tension history. They're like fingerprints of how Codette reasoned about a topic.

  • CocoonSync: Encrypts the entire spiderweb state with Fernet (AES-128-CBC), signs it with HMAC-SHA256, and can sync between Codette instances.

  • Sessions: Each conversation saves a cocoon package. When you come back, Codette loads the cocoon and remembers not just WHAT you discussed, but HOW she was thinking about it β€” which attractors had formed, which perspectives were in tension.

Key Metrics

  • Phase Coherence (Gamma): 0-1, how aligned agent perspectives are. Target: >= 0.98
  • Epistemic Tension (xi): 0-1, productive disagreement between agents. Target: <= 0.05
  • Ethical Alignment (eta): 0-1, AEGIS ethical compliance. Target: >= 0.90
  • Tension Productivity: Was disagreement resolved in synthesis? Higher = better.
  • Perspective Coverage: Which of the 8 perspectives contributed? Shows as colored dots.

Hardware Notes

This Machine (HP OmniBook 7 Flip 16)

  • CPU: Intel Core Ultra 7 256V (Lunar Lake)
  • GPU: Intel Arc 140V (8GB) β€” XPU backend works but llama.cpp uses CPU
  • RAM: 16.8 GB physical + 32 GB page file on C: = ~51 GB virtual
  • Storage: C: NVMe 512GB, J: USB 4TB (Seagate), K: USB 2TB (WD)
  • Python: J:\python.exe (3.10) with PYTHONPATH="J:/Lib/site-packages"
  • Page file: C: drive ONLY (Windows cannot create page files on USB drives!)

Minimum Requirements (Any User)

  • 4GB RAM: Q2 GGUF, 1 adapter at a time, text metrics only
  • 8GB RAM: Q4 GGUF, auto-routing, basic UI
  • 16GB RAM: Full Codette with all features

SYCL/XPU PATH Fix

Scripts auto-set this, but if you get DLL errors:

set PATH=J:\Lib\site-packages\Library\bin;%PATH%

Git / Backup

Repos

Push to Both

cd J:\codette-training-lab
git add -A && git commit -m "your message"
git push origin master    # GitHub
git push hf master        # HuggingFace

Important: .gitignore

Large files are excluded: datasets/*.jsonl, *.png, *.jpg, *.gguf Datasets live on HuggingFace dataset repo, not in git.


Troubleshooting

Problem Fix
ModuleNotFoundError: No module named 'xxx' J:\python.exe -m pip install xxx
c10_xpu.dll not found Set PATH (see SYCL/XPU section)
total_mem AttributeError Use total_memory (PyTorch API change)
Page file won't create on J:/K: USB drives can't have page files. Use C:
HF push rejected (large files) Check .gitignore, scrub with filter-branch
Training OOM on CPU Use Pipeline 2 (offload), reduce seq_len
Adapter not found Check adapters/ folder for .gguf files
Voice not working Install: pip install sounddevice SpeechRecognition

Key Dependencies

# Core inference (already installed)
llama-cpp-python          # GGUF model loading
torch                     # For XPU/training only

# Training (cloud or local)
transformers>=4.45.0,<4.48.0
peft>=0.10.0,<0.14.0
trl==0.12.2               # Cloud only (not installed locally)

# Voice (optional)
sounddevice               # Microphone recording
SpeechRecognition         # Google STT API

# Web UI (zero extra deps β€” uses Python stdlib!)
# No FastAPI, no Flask, no npm, no node β€” pure Python http.server