Технологія
Як Хроніст читає й чому йому можна вірити
Один API, три клієнти, три шари. На старті ми не навчаємо власних моделей розпізнавання — ми будуємо шар між відкритими моделями й дослідником.
Архітектура
Три шари на одному API
Клієнти
Розширення
Chrome, side panel
Веб-застосунок
пошук, власні скани
MCP-сервер
Claude Desktop та інші клієнти
API
Node.js · Fastify · OpenAPI-контракт · черги задач
Сервіси
Розпізнавання
Rukopys-OCR на GPU, резерв — мультимодальні моделі
База знань
довідковий корпус, векторний індекс, посилання
Commons
PostgreSQL: транскрипції, координати, сутності
Шлях одного фрагмента
Від виділення до відповіді
- 01
Виділення
Розширення вирізає область скану й рахує хеш зображення.
- 02
Перевірка кешу
API шукає цей фрагмент у Commons за хешем і архівним шифром.
- 03
Розпізнавання
Якщо фрагмент новий — задача в черзі; модель повертає рядки з координатами.
- 04
Нормалізація
Мовна модель передає текст сучасною орфографією й розмічає імена, дати й топоніми.
- 05
Відповідь
Результат надходить у сайдбар рядок за рядком. Ціль — до 5 секунд на 10–15 рядків.
Обґрунтованість
Чому відповіді не вигадані
Довідковий корпус складається з відкритих джерел із ліцензією: словники староукраїнської мови, довідники з метрології й календаря, Wikidata для топонімів, Вікітека й опубліковані документи.
Компаньйон відповідає лише з опорою на цей індекс і показує фрагмент, з якого взяв відповідь. Якщо відповідного фрагмента немає, Хроніст каже «не знаю». Транскрипція й інтерпретація візуально розділені: перше — те, що написано на аркуші, друге — те, що ми про це знаємо.
Відкритий стек
Що й чим
- Розпізнавання рукопису
- Rukopys-OCR-4B (Apache 2.0) на орендованому GPU; резерв — мультимодальні моделі через API
- Нормалізація, пояснення, сутності
- Велика мовна модель зі структурованим виводом і обов’язковими посиланнями
- Розширення
- Manifest V3, side panel, TypeScript, React
- API та черги
- Node.js, Fastify, BullMQ, Redis; OpenAPI-контракт
- Дані
- PostgreSQL із pgvector і pg_trgm: повнотекст, вектори й реляції в одному місці
- Інтеграції
- MCP-сервер на офіційному SDK, транспорт Streamable HTTP і stdio
MCP та API
Інструменти для вашого асистента
Один рядок конфігурації — і Claude Desktop чи інший MCP-клієнт читає архіви разом із вами. Відкритий REST API — для розробників.
{
"mcpServers": {
"khronist": {
"url": "https://api.khronist.org/mcp"
}
}
}transcribeпрочитати фрагмент сканув роботіexplainпояснити термін із джереломв роботіsearch_sourcesпошук у Commons і довідникахв роботіnormalizeсучасна орфографіязапланованоresolve_placeстарий топонім у сучаснийзапланованоconvert_dateюліанський у григоріанськийзапланованоciteархівна цитата з шифромзаплановано