Skip to content

Commit e7e44d1

Browse files
Merge branch 'dev' into fix/open-memory-fork
2 parents 402656d + dc70ca2 commit e7e44d1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+3203
-3010
lines changed

.github/workflows/robot-tests.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,6 @@ jobs:
110110
echo "LLM_PROVIDER: $LLM_PROVIDER"
111111
echo "TRANSCRIPTION_PROVIDER: $TRANSCRIPTION_PROVIDER"
112112
113-
# Create memory_config.yaml from template (file is gitignored)
114-
echo "Creating memory_config.yaml from template..."
115-
cp memory_config.yaml.template memory_config.yaml
116-
117113
# Clean any existing test containers for fresh start
118114
echo "Cleaning up any existing test containers..."
119115
docker compose -f docker-compose-test.yml down -v || true

Docs/getting-started.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ curl -X POST "http://localhost:8000/api/process-audio-files" \
342342

343343
**Implementation**:
344344
- **Memory System**: `src/advanced_omi_backend/memory/memory_service.py` + `src/advanced_omi_backend/controllers/memory_controller.py`
345-
- **Configuration**: `memory_config.yaml` + `src/advanced_omi_backend/memory_config_loader.py`
345+
- **Configuration**: memory settings in `config.yml` (memory section)
346346

347347
### Authentication & Security
348348
- **Email Authentication**: Login with email and password
@@ -541,10 +541,10 @@ OPENMEMORY_MCP_URL=http://host.docker.internal:8765
541541

542542
> 🎯 **New to memory configuration?** Read our [Memory Configuration Guide](./memory-configuration-guide.md) for a step-by-step setup guide with examples.
543543
544-
The system uses **centralized configuration** via `memory_config.yaml` for all memory extraction settings. All hardcoded values have been removed from the code to ensure consistent, configurable behavior.
544+
The system uses **centralized configuration** via `config.yml` for all models (LLM, embeddings, vector store) and memory extraction settings.
545545

546546
### Configuration File Location
547-
- **Path**: `backends/advanced-backend/memory_config.yaml`
547+
- **Path**: repository `config.yml` (override with `CONFIG_FILE` env var)
548548
- **Hot-reload**: Changes are applied on next processing cycle (no restart required)
549549
- **Fallback**: If file is missing, system uses safe defaults with environment variables
550550

@@ -613,7 +613,7 @@ If you experience JSON parsing errors in fact extraction:
613613

614614
2. **Enable fact extraction** with reliable JSON output:
615615
```yaml
616-
# In memory_config.yaml
616+
# In config.yml (memory section)
617617
fact_extraction:
618618
enabled: true # Safe to enable with GPT-4o
619619
```
@@ -727,5 +727,5 @@ curl -H "Authorization: Bearer $ADMIN_TOKEN" \
727727
- **Connect audio clients** using the WebSocket API
728728
- **Explore the dashboard** to manage conversations and users
729729
- **Review the user data architecture** for understanding data organization
730-
- **Customize memory extraction** by editing `memory_config.yaml`
731-
- **Monitor processing performance** using debug API endpoints
730+
- **Customize memory extraction** by editing the `memory` section in `config.yml`
731+
- **Monitor processing performance** using debug API endpoints

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2024 Chronicle AI Contributors
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Self-hostable AI system that captures audio/video data from OMI devices and othe
44

55
## Quick Start → [Get Started](quickstart.md)
66

7-
Clone, run setup wizard, start services, access at http://localhost:5173
7+
Run setup wizard, start services, access at http://localhost:5173
88

99
## Screenshots
1010

backends/advanced/.env.template

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ SPEECH_INACTIVITY_THRESHOLD_SECONDS=60 # Close conversation after N seconds of
8282
# When enabled, only creates conversations when enrolled speakers are detected
8383
# Requires speaker recognition service to be running and speakers to be enrolled
8484
# Set to "true" to enable, "false" or omit to disable
85-
RECORD_ONLY_ENROLLED_SPEAKERS=true
85+
RECORD_ONLY_ENROLLED_SPEAKERS=false
8686

8787
# ========================================
8888
# DATABASE CONFIGURATION

backends/advanced/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ COPY . .
3535

3636
# Copy configuration files if they exist, otherwise they will be created from templates at runtime
3737
# The files are expected to exist, but we handle the case where they don't gracefully
38-
COPY memory_config.yaml* ./
38+
3939
COPY diarization_config.json* ./
4040

4141

backends/advanced/Dockerfile.k8s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ RUN uv sync --extra deepgram
3434
COPY . .
3535

3636
# Copy memory config (created by init.sh from template)
37-
COPY memory_config.yaml ./
37+
3838

3939
# Copy and make K8s startup scripts executable
4040
COPY start-k8s.sh start-workers.sh ./

backends/advanced/Docs/README.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Welcome to chronicle! This guide provides the optimal reading sequence to unders
1313
- What the system does (voice → memories)
1414
- Key features and capabilities
1515
- Basic setup and configuration
16-
- **Code References**: `src/advanced_omi_backend/main.py`, `memory_config.yaml`, `docker-compose.yml`
16+
- **Code References**: `src/advanced_omi_backend/main.py`, `config.yml`, `docker-compose.yml`
1717

1818
### 2. **[System Architecture](./architecture.md)**
1919
**Read second** - Complete technical architecture with diagrams
@@ -70,12 +70,12 @@ Welcome to chronicle! This guide provides the optimal reading sequence to unders
7070

7171
## 🔍 **Configuration & Customization**
7272

73-
### 6. **Configuration File**`../memory_config.yaml`
73+
### 6. **Configuration File**`../config.yml`
7474
**Central configuration for all extraction**
7575
- Memory extraction settings and prompts
7676
- Quality control and debug settings
7777
- **Code References**:
78-
- `src/advanced_omi_backend/memory_config_loader.py` (config loading)
78+
- `src/advanced_omi_backend/model_registry.py` (config loading)
7979
- `src/advanced_omi_backend/memory/memory_service.py` (config usage)
8080

8181
---
@@ -86,11 +86,11 @@ Welcome to chronicle! This guide provides the optimal reading sequence to unders
8686
1. [quickstart.md](./quickstart.md) - System overview
8787
2. [architecture.md](./architecture.md) - Technical architecture
8888
3. `src/advanced_omi_backend/main.py` - Core imports and setup
89-
4. `memory_config.yaml` - Configuration overview
89+
4. `config.yml` - Configuration overview
9090

9191
### **"I want to work on memory extraction"**
9292
1. [memories.md](./memories.md) - Memory system details
93-
2. `../memory_config.yaml` - Memory configuration
93+
2. `../config.yml` - Models and memory configuration
9494
3. `src/advanced_omi_backend/memory/memory_service.py` - Implementation
9595
4. `src/advanced_omi_backend/controllers/memory_controller.py` - Processing triggers
9696

@@ -128,9 +128,9 @@ backends/advanced-backend/
128128
│ ├── controllers/ # Business logic controllers
129129
│ ├── memory/
130130
│ │ └── memory_service.py # Memory system (Mem0)
131-
│ └── memory_config_loader.py # Configuration loading
131+
│ └── model_registry.py # Configuration loading
132132
133-
├── memory_config.yaml # 📋 Central configuration
133+
├── config.yml # 📋 Central configuration
134134
├── MEMORY_DEBUG_IMPLEMENTATION.md # Debug system details
135135
```
136136

@@ -147,8 +147,8 @@ backends/advanced-backend/
147147
- **Memories**: `src/advanced_omi_backend/memory/memory_service.py` → Mem0 → Qdrant
148148

149149
### **Configuration**
150-
- **Loading**: `src/advanced_omi_backend/memory_config_loader.py`
151-
- **File**: `memory_config.yaml`
150+
- **Loading**: `src/advanced_omi_backend/model_registry.py`
151+
- **File**: `config.yml`
152152
- **Usage**: `src/advanced_omi_backend/memory/memory_service.py`
153153

154154
### **Authentication**
@@ -162,7 +162,7 @@ backends/advanced-backend/
162162

163163
1. **Follow the references**: Each doc links to specific code files and line numbers
164164
2. **Use the debug API**: `GET /api/debug/memory/stats` shows live system status
165-
3. **Check configuration first**: Many behaviors are controlled by `memory_config.yaml`
165+
3. **Check configuration first**: Many behaviors are controlled by `config.yml`
166166
4. **Understand the memory pipeline**: Memories (end-of-conversation)
167167
5. **Test with curl**: All API endpoints have curl examples in the docs
168168

@@ -175,23 +175,23 @@ backends/advanced-backend/
175175
1. **Set up the system**: Follow [quickstart.md](./quickstart.md) to get everything running
176176
2. **Test the API**: Use the curl examples in the documentation to test endpoints
177177
3. **Explore the debug system**: Check `GET /api/debug/memory/stats` to see live data
178-
4. **Modify configuration**: Edit `memory_config.yaml` to see how it affects extraction
178+
4. **Modify configuration**: Edit `config.yml` (memory section) to see how it affects extraction
179179
5. **Read the code**: Start with `src/advanced_omi_backend/main.py` and follow the references in each doc
180180

181181
### **Contributing Guidelines**
182182

183183
- **Add code references**: When updating docs, include file paths and line numbers
184184
- **Test your changes**: Use the debug API to verify your modifications work
185-
- **Update configuration**: Add new settings to `memory_config.yaml` when needed
185+
- **Update configuration**: Add new settings to `config.yml` when needed
186186
- **Follow the architecture**: Keep memories in their respective services
187187

188188
### **Getting Help**
189189

190190
- **Debug API**: `GET /api/debug/memory/*` endpoints show real-time system status
191-
- **Configuration**: Check `memory_config.yaml` for behavior controls
191+
- **Configuration**: Check `config.yml` for behavior controls
192192
- **Logs**: Check Docker logs with `docker compose logs chronicle-backend`
193193
- **Documentation**: Each doc file links to relevant code sections
194194

195195
---
196196

197-
This documentation structure ensures you understand both the **big picture** and **implementation details** in a logical progression!
197+
This documentation structure ensures you understand both the **big picture** and **implementation details** in a logical progression!

backends/advanced/Docs/contribution.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
1. Docs/quickstart.md (15 min)
22
2. Docs/architecture.md (20 min)
33
3. main.py - just the imports and WebSocket sections (15 min)
4-
4. memory_config.yaml (10 min)
4+
4. config.yml (memory section) (10 min)
55

66
🔧 "I want to work on memory extraction"
77

88
1. Docs/quickstart.md → Docs/memories.md
9-
2. memory_config.yaml (memory_extraction section)
9+
2. config.yml (memory.extraction section)
1010
3. main.py lines 1047-1065 (trigger)
1111
4. main.py lines 1163-1195 (processing)
1212
5. src/memory/memory_service.py
@@ -32,4 +32,4 @@
3232
Data Flow
3333

3434
Audio → Transcription → Dual Processing
35-
└─ Memory Pipeline (end-of-conversation)
35+
└─ Memory Pipeline (end-of-conversation)

backends/advanced/Docs/memories.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This document explains how to configure and customize the memory service in the
1010
- **Repository Layer**: `src/advanced_omi_backend/conversation_repository.py` (clean data access)
1111
- **Processing Manager**: `src/advanced_omi_backend/processors.py` (MemoryProcessor class)
1212
- **Conversation Management**: `src/advanced_omi_backend/conversation_manager.py` (lifecycle coordination)
13-
- **Configuration**: `memory_config.yaml` + `src/memory_config_loader.py`
13+
- **Configuration**: `config.yml` (memory section) + `src/model_registry.py`
1414

1515
## Overview
1616

@@ -180,7 +180,7 @@ OPENAI_MODEL=gpt-5-mini # Recommended for reliable JSON output
180180
# OPENAI_MODEL=gpt-3.5-turbo # Budget option
181181
```
182182

183-
Or configure via `memory_config.yaml`:
183+
Or configure via `config.yml` (memory block):
184184

185185
```yaml
186186
memory_extraction:
@@ -674,4 +674,4 @@ The new architecture ensures proper user isolation and simplifies admin debuggin
674674

675675
Both load all user memories and view all memories are helpful
676676
Both views complement each other - the debug view helps you understand how the system is working, while the clean view
677-
helps you understand what content is being stored.
677+
helps you understand what content is being stored.

0 commit comments

Comments
 (0)