add orchestrator / tatlock distinction to docs

This commit is contained in:
2025-12-06 21:31:59 +01:00
parent 5f4e93bf09
commit e85823ff18
3 changed files with 631 additions and 5 deletions
+18 -3
View File
@@ -13,7 +13,7 @@ This project implements an OpenAI-compatible API endpoint using FastAPI, with st
### Current Architecture (As of 2025-12-06)
This project implements a **hybrid architecture** with the Responses API as the primary endpoint and Chat Completions as a compatibility wrapper:
This project implements the **Orchestrator** infrastructure layer with a hybrid API architecture:
```
Client (Open WebUI)
@@ -22,9 +22,24 @@ Chat Completions (/v1/chat/completions) → Wrapper
↓
Responses API (/v1/responses) → Primary
↓
Agent Interface (lorem-tester, tatlock)
Agent Interface (lorem-tester, Tatlock)
↓
Mock Agents (lorem-tester) / Future: PydanticAI Agents (Tatlock, Steward, etc.)
```
**Architectural Layers:**
1. **The Orchestrator** (Current Implementation)
- FastAPI application providing the infrastructure
- HTTP/SSE endpoints, streaming coordination
- Conversation history and context management
- OpenAI-compatible API surface
2. **Future: The Household** (Phases 1-4)
- **Steward**: First-tier LLM for request analysis (PydanticAI agent)
- **Tatlock**: Second-tier LLM with butler personality (PydanticAI agent)
- **Expert Agents**: Domain specialists (Librarian, Developer, Handyman, etc.)
**Key Architectural Decisions:**
1. **Single Source of Truth**: All response generation happens in the Responses API
@@ -45,7 +60,7 @@ Agent Interface (lorem-tester, tatlock)
- Random tool/function calls
- Error triggers for testing
- Temperature variation
- **tatlock**: Placeholder for future PydanticAI agent
- **Tatlock**: Advertised model name (currently mock, future: PydanticAI Butler agent)
4. **Hybrid Conversation History**:
- Client MUST send full context in `input` array (OpenAI compatible)