OTTO Fast Learning
Ingest your live business KPIs, CRM exports, or ERP data at runtime. OTTO enriches every subsequent query with your actual numbers — no retraining required.
How It Works
- 1POST your data to
/api/otto/learn— structured KV pairs labelled by domain and period - 2Context persists in SQLite (
otto_learning.db) — survives server restarts, max 50 entries per session - 3Every
/api/otto/askand/api/otto/streamcall prepends your data to the intelligence narrative
Ingest API
POST /api/otto/learn
Content-Type: application/json
{
"domain": "SALES",
"label": "Live Sales KPIs — Q1 2025",
"data": {
"revenue": "€47.2M",
"new_logos": 34,
"win_rate": "67%",
"pipeline": "€142M"
}
}SDK — FastLearningClient
import { FastLearningClient } from '@brainpredict/otto-sdk';
const learner = new FastLearningClient({ baseUrl: 'http://your-otto-server:6670' });
await learner.ingest('FINANCE', 'Q1 2025 Actuals', {
ebitda_margin: '25.0%',
net_income: '€7.55M',
cash: '€28.4M',
fcf: '€6.6M'
});
const status = await learner.status();
console.log(status.total_datasets); // 1Context Status
GET /api/otto/learn/status
{
"total_datasets": 2,
"domains": ["SALES", "FINANCE"],
"summary": "Total: 2 datasets loaded. Responses enriched with your data."
}