KB-агент — корпоративная база знаний с AI-поиском
Внутренний инструмент
AI-агент по базе знаний: гибридный поиск FTS + pgvector по 1 200+ заметкам Obsidian, пополнение с валидацией через Telegram, 8 MCP-инструментов. Смотреть кейс →
KB-агент превращает корпоративную базу знаний (1 200+ заметок в Obsidian) в живой инструмент: MCP-сервер с 8 инструментами даёт гибридный поиск — полнотекстовый FTS + векторный pgvector с RRF-слиянием — из Claude и любого MCP-клиента. База синхронизируется в PostgreSQL ежечасно, новые знания проходят контур валидации: предложение → папка-инбокс → подтверждение руководителем в Telegram. Сотрудники задают вопросы боту и получают RAG-ответы со ссылками на источники.
Что реализовано.
Гибридный поиск
FTS с русской морфологией + векторный pgvector, слияние через RRF: находит и по словам, и по смыслу.
Синк Obsidian → PG
Ежечасный md5-диф, чанкинг ~1400 символов, индексация. Канон знаний остаётся в Obsidian.
Валидация пополнения
Предложение → инбокс → уведомление в Telegram → approve/reject. Канон не засоряется.
RAG-ответы в боте
Вопрос текстом или голосом — ответ со ссылками на заметки-источники и оценкой 👍/👎.
Доступ из любого MCP-клиента
Claude Code, Claude Desktop и другие MCP-клиенты работают с базой через единый сервер.
Карта пробелов
Журнал вопросов и еженедельный отчёт: чего в базе не хватает — то и пишем.
Ключевые сценарии.
Пользовательские сценарии и потоки данных
Вопрос сотрудника
От вопроса в Telegram до ответа с источниками.
Пополнение базы
Контур валидации новых знаний.
Синхронизация
Ежечасное обновление поискового индекса.
Роли и интерфейсы.
Сотрудник
Задаёт вопросы боту, предлагает знания в базу
Владелец базы
Валидирует пополнения в Telegram, разбирает пробелы
AI-агент
Ищет и читает знания через MCP при решении рабочих задач
Технологический стек.
- Python
- MCP-сервер (8 инструментов)
- PostgreSQL
- FTS (русская морфология)
- pgvector (1536d)
- RRF-слияние
- чанкинг ~1400 символов
- Локальные эмбеддинги (Ollama)
- LLM для RAG-ответов
- распознавание голосовых
- Obsidian (канон базы)
- Telegram-бот
- Claude / MCP-клиенты
Безопасность
- Приватные заметки исключаются из поиска и чтения команды
- Доступ сотрудников — по списку, только в личных сообщениях бота
- Запись в канон — только через валидацию владельцем
- Эмбеддинги считаются локально — содержимое базы не уходит во внешние API
AI-функции
- Векторный поиск по смыслу: локальные эмбеддинги 1536 измерений через Ollama
- RAG-ответы со ссылками на заметки-источники
- Распознавание голосовых вопросов
- Антидубль при пополнении: похожие заметки подсвечиваются до одобрения
- Деградация до FTS при недоступности эмбеддингов — поиск работает всегда
Проблема
База знаний в Obsidian росла годами — 1 200+ заметок, — но поиск по ней работал только у того, кто её писал.
Сотрудники переспрашивали одно и то же: ответ есть в базе, но найти его быстрее было «спросить у руководителя».
AI-ассистенты не видели корпоративные знания — каждый диалог начинался с чистого листа.
Пополнять базу мог только владелец: у команды не было безопасного способа предлагать знания без риска засорить канон.
Решение
MCP-сервер с 8 инструментами — поиск, чтение, предложение, согласование и синхронизация знаний доступны из Claude и любого MCP-клиента.
Гибридный поиск — полнотекстовый FTS (русская морфология) + векторный поиск pgvector (1536-мерные эмбеддинги, локальная модель через Ollama), результаты сливаются через Reciprocal Rank Fusion.
Синхронизация Obsidian → PostgreSQL ежечасно — md5-диф находит изменённые заметки, текст режется на чанки ~1400 символов и индексируется; канон остаётся в Obsidian.
Контур валидации пополнения — предложение кладёт черновик в папку-инбокс и шлёт уведомление в Telegram; владелец одним нажатием одобряет (заметка оформляется по стандарту и попадает в раздел) или отклоняет.
RAG-ответы в Telegram-боте — сотрудник задаёт вопрос текстом или голосом (распознавание речи), получает ответ со ссылками на заметки-источники.
Журнал вопросов — все вопросы и оценки ответов логируются: видно пробелы базы, по ним база целенаправленно пополняется.
Результаты
- 1 200+ заметок стали доступны всей команде через поиск на естественном языке.
- Знания подключены к AI: Claude отвечает с опорой на корпоративную базу, а не на общие сведения.
- Пополнение базы стало командным — без риска засорить канон: всё проходит валидацию в Telegram.
- При недоступности эмбеддингов поиск деградирует до FTS — сервис не падает.
- Еженедельный отчёт о пробелах показывает, каких знаний не хватает команде.
Вот представьте…
История одного запроса
Новый сотрудник пишет: «А как у нас принято оформлять доступ к серверу клиента?» Ответ есть в базе знаний. Где-то. Среди 1 200 заметок. Быстрее спросить руководителя — и он в четвёртый раз пишет одно и то же.
Базу вели годами: кейсы, плейбуки, инструкции. Но поиск по точному слову не находит «по смыслу», а структуру папок помнит только автор. Знания компании заперты в заметках, как в сейфе без ключа.
Теперь вопрос задаётся боту — хоть текстом, хоть голосом. Гибридный поиск (слова + смысл) находит нужные заметки, LLM собирает ответ со ссылками на источники. А Claude через MCP видит ту же базу при решении рабочих задач.
Сотрудник пишет боту: «добавь в базу: …» — черновик падает в инбокс, владельцу приходит уведомление с кнопками. Одно нажатие — и знание в каноне, оформленное по стандарту. А еженедельный отчёт подсказывает, каких знаний команде не хватает.
Глоссарий AI-терминов
Ключевые понятия для понимания проекта
GEO-оптимизация
GEOОптимизация контента для AI-поисковиков (ChatGPT, Perplexity, Claude).
AI-агенты
AI-AGENTSАвтономные AI-системы, выполняющие задачи самостоятельно без контроля человека.
E-E-A-T
EEATКритерии Google: опыт, экспертиза, авторитетность, надёжность. Важны для SEO и GEO.
LLM (Large Language Model)
LLMНейросеть для понимания и генерации текста (GPT-5, Claude, Gemini).
RAG (Retrieval-Augmented Generation)
RAGТехнология для работы AI с вашими данными: документами, базами знаний.
Промпт (Prompt)
PROMPTТекстовая инструкция для AI. Качество промпта = качество результата.
MVP (Minimum Viable Product)
MVPМинимальная версия продукта для проверки гипотезы на пользователях.
Технологический стек
TECH-STACKНабор технологий проекта: языки, фреймворки, базы данных, облако.
Интеграция
INTEGRATIONСвязывание AI с системами компании: CRM, ERP, 1C, мессенджеры.
Развёртывание (Deployment)
DEPLOYMENTЗапуск решения в production с мониторингом и масштабированием.
Частые вопросы.
Два метода работают параллельно: полнотекстовый поиск PostgreSQL с русской морфологией и векторный поиск pgvector по эмбеддингам (1536 измерений, локальная модель через Ollama). Результаты сливаются через Reciprocal Rank Fusion: короткие запросы с ключевыми словами усиливает FTS, длинные естественные вопросы вытягивает векторная ветка.
Obsidian — удобный редактор и формат (Markdown + ссылки), который переживёт любую смену технологий. PostgreSQL служит поисковым индексом: ежечасная синхронизация по md5-диффу переносит изменения, а записи в базу идут через тот же канал с валидацией.
Никто не пишет в канон напрямую. Предложение попадает в папку-инбокс со статусом «черновик», владельцу приходит Telegram-уведомление с похожими заметками (антидубль). Одобрение оформляет заметку по стандарту и помещает в раздел; отклонение — удаляет.
Эмбеддинги считаются локально (Ollama на собственном сервере), содержимое заметок при индексации не покидает контур компании. Приватные заметки помечаются и исключаются из поиска и чтения команды.
Обсудим вашу задачу
Расскажите о вашей задаче — обсудим, как мы можем помочь. Рекомендации предоставляем по запросу.