v0.5.0.ru.md
docs/i18n/release-notes/v0.5.0.ru.md
Tesserae v0.5.0 — Спина движка и контекстный компилятор по запросу
<!-- translations:start -->
English · 한국어 · 中文 · 日本語 · Español · Français · Deutsch
<!-- translations:end -->
Выпущено 2026-06-06 · PyPI · GitHub release · pip install --upgrade tesserae==0.5.0
Tesserae 0.5.0 — релиз, в котором проект становится контекстным движком, описанным его миссией. Он поставляет спину движка — оркестратор конвейера, супервизор-демон и живой монитор сессий — и флагманскую функцию Столпа 3: контекстный компилятор по запросу, который превращает «дай мне контекст по X» в подогнанный, цитируемый, готовый для агента набор. Под капотом проходы самосовершенствования теперь активированы и персистентны через сайдкар node_memory (числовая уверенность повторяемости в выводе, supersede включён по умолчанию), настоящие эмбеддинги по умолчанию заменяют хэш-бакетную заглушку (Трек B), а инфраструктура инкрементной компиляции приземляется, но остаётся с флагом OFF/экспериментальной. Два реальных бага компиляции, найденных по пути, исправлены (идемпотентность changed-only, контракт внедрённого хранилища), а тестовый набор достигает 1544 пройдено / 0 провалено. Это релиз, который выполняет фазы 0–6 дорожной карты контекстного движка.
Содержание:
- Контекстный компилятор по запросу — MD0 (Столп 3, флагман)
- Спина движка — оркестратор, демон, живой монитор сессий
- Самосовершенствование, активированное и персистентное (сайдкар MD0 )
- Настоящие эмбеддинги по умолчанию (Трек B)
- Инфраструктура инкрементной компиляции (флаг OFF) + два исправления компиляции
- Обновление с v0.4.0
- Стратегический контекст
1. Контекстный компилятор по запросу — compile_context (Столп 3, флагман)
Что это
Функция, на которую указывала вся дорожная карта: запрос (или набор стартовых узлов) на вход — подогнанный, цитируемый, готовый для агента контекстный набор на выход. compile_context — чистая функция: она читает граф и возвращает in-memory ContextBundle, ничего не записывая на диск. Конвейер таков: запрос/сиды → PPR + гибридный поиск для сидов → обход окрестности k-hop с ограничением глубины → сборка релевантных тел вики → опциональный LLM-синтез (с мягким детерминированным фолбэком) → контроль бюджета с маркером усечения по границе слова. Каждый внёсший вклад узел записывается как ContextCitation, так что все цитаты набора разрешаются обратно в реальные узлы графа.
| Тип | Роль | |
|---|---|---|
| `compile_context(query \ | seeds, depth, budget, …)` | Чистая точка входа; возвращает ContextBundle. |
ContextBundle | Собранный контекст плюс список его цитат. | |
ContextCitation | Одна разрешимая цитата (id узла → внесённое тело). |
Компилятор доступен тремя способами:
- MCP-инструмент
compile_context— чтобы агент вызывал его посреди разговора.budget=0означает без ограничения. - CLI
tesserae project context— exit-0 / stdout /--output/ детерминированный, для скриптов и конвейеров. - Тематические экспорты —
slice_export_context_for_topicпроизводит тематический срезllms.txt, а бриф агентного харнесса теперь рендерится по теме черезcompile_context(Паттерн 4 + Паттерн 6) вместо жёстко зашитого топ-12.
Вместе с этим поставляются два связанных апгрейда извлечения: node_context получает ранжированный путь use_ppr (с заполнением соседей с учётом подавления и контролем рёбер/лимита), а тематический срез использует канонический wiki-slug, так что цитаты и экспорты выстраиваются.
Как использовать
# CLI: скомпилировать цитируемый контекстный документ по теме, вывести в stdout или файл
tesserae project context "ранжирование извлечения и RRF-слияние"
tesserae project context "ранжирование извлечения" --output ./context-retrieval.md
Из MCP-клиента:
{
"tool": "compile_context",
"arguments": {
"query": "Как наш стек извлечения ранжирует кандидатов?",
"depth": 2,
"budget": 4000
}
}
// → возвращает ContextBundle: собранное тело + список разрешимых цитат.
// budget: 0 означает без ограничения.
Можно также сеять напрямую из id узлов (пропуская шаг поиска), когда якоря уже известны:
{
"tool": "compile_context",
"arguments": {
"seeds": ["decision-2026-05-22-switch-to-rrf-fusion"],
"depth": 2,
"budget": 0
}
}
Когда использовать
- Агенту нужен сфокусированный бриф по одной теме, а не дамп
llms.txtпо всему корпусу или одно телоwiki_page. - Вы хотите разрешимые цитаты — каждое утверждение в наборе прослеживается до узла графа — чтобы агент мог продолжить.
- Вы скриптуете передачу и хотите детерминированный контекстный артефакт (
--output, режим сборки без LLM), который перегенерируется по теме.