Чтоб сделать, чтобы базой знаний реально пользовались? Один из путей — дать возможность и наполнения, и получения ответов в привычном интерфейсе, без захода в дополнительные приложения.

Дисклеймер. Эту статью мы попросили написать технического директора системного интегратора.

Меня зовут Юрий Холод, и я всё ещё технический директор системного интегратора. 

Недавно передо мной поставили задачу: придумать, как избавить компанию от «кладбища заметок» в личных чатах и Google Docs и превратить корпоративные знания в инструмент роста, а не в архив призраков — желательно без привлечения ИТ-отдела и без гигантских бюджетов. По этому поводу я даже уже высказывался: Вашей службе поддержки нужен ИИ. Как встроить личные заметки в базу знаний компании

Я не разработчик, и программный код для меня — почти тёмный лес. Расскажу, как мы с помощью нейросети Perplexity и платформы TEAMLY внедрили Telegram-бота для сбора и поиска знаний. Как устроено? Легко ли повторить? Чем помогает AI? Делюсь своим пошаговым опытом — с багами, тупиками и маленькими победами по дороге.

Зачем вообще превращать личные заметки в базу знаний?

Каждый из нас хранит полезные мысли где попало: кто-то пишет себе в Telegram, кто-то — в личных Google Docs, у кого-то выросли гигантские заметки в Notion. Итог — через месяц даже сами владельцы уже не находят нужную инструкцию. А при онбординге мучаются и старички, и новенькие. 

Первые — потому что не могут дать ссылку на ресурс «где всё есть» своим подопечным. 

Вторые — потому что наставник нервничает, ему приходится терять кучу времени, а эффективность этого времени не сказать, чтобы высокая. По итогу новичок учится не на чужих, а на своих ошибках, изобретает велосипеды и танцует на граблях.

А bus factor? Сколько проектов развалилось только потому, что после ухода одного-двух специалистов образовалась информационная дыра несовместимого с жизнью размера!

Корпоративные базы знаний, платформы для совместной работы — например, TEAMLY — помогают разложить опыт сотрудников по полочкам, сделать доступным для всех и, главное, постоянно его актуализировать. Но заставить занятых специалистов заходить куда-то и переписывать то, что они только что зафиксировали для себя или вообще оставили только в памяти, практически нереально. Значит, надо дать им максимально удобный, привычный интерфейс.

Как AI и Telegram-бот могут решить задачу организации личных заметок

В один прекрасный день руководство нашей компании решило, что знания сотрудников должны быть не только в их головах и записных книжках, но и формировать базу знаний. Проработать вопрос о том, как это сделать наиболее удобным и, главное, рабочим способом, поручили вашему покорному слуге (кланяется).

Мне нужно было собрать ежедневные короткие заметки сотрудников — мысли, кейсы, лайфхаки, решения сложных или нетипичных ситуаций — и сделать этот опыт видимым для всей команды через TEAMLY.

Ход мысли такой:

  • Сотруднику не нужно нигде «логиниться» — → просто пишет боту в Telegram;

  • Бот отправляет заметку в корпоративную базу знаний (TEAMLY);

  • AI-ассистент TEAMLY умеет затем находить полезную информацию для других сотрудников через чат, делая приоритет на базе знаний, а если не находит — ищет в интернете.

Вдобавок, AI умеет структурировать, суммировать и тегировать такие заметки на лету. Дальше расскажу, как к этому прийти за один выходной, не будучи инженером.

На самом деле алгоритм будет чуть сложнее: напрямую в Тимли писать ничего не получится, так что буду сохранять отфорварденное (простите за такое слово) в таблицу Google, а дальше разберусь, как закинуть это всё в TEAMLY, ещё и классифицировав и тегировав «на лету». 

Как я создавал Telegram-бота для сбора знаний: полный путь «чайника»

В этом блоке дам подробную пошаговую инструкцию — на собственных граблях и открытиях, чтобы вы смогли всё повторить или переделать под свои задачи без привлечения программиста.

Шаг 1: Готовим Google Cloud для хранения данных

  • Регистрируемся или входим в Google Cloud Console.

  • Создаём новый проект (например, «DreamTeamlyBot»).

  • Находим раздел «Сервисные аккаунты» (с первого раза не так уж просто, но Perplexity отлично подсказывает, где искать).

Создаём сервисный аккаунт и, главное, скачиваем ключ в формате .json — этот файл понадобится для доступа к Google Sheet или TEAMLY.

Если что-то не находится — а это как раз мой случай — просто скармливайте ошибку Perplexity, иногда подсказка лучше, чем официальный туториал Google.
Если что-то не находится — а это как раз мой случай — просто скармливайте ошибку Perplexity, иногда подсказка лучше, чем официальный туториал Google.

Шаг 2: Создаём Google-таблицу или подключаемся к TEAMLY

  • Для старта можно сделать обычную Google-таблицу с двумя–тремя колонками: автор, дата, текст заметки.

Открываем настройки доступа, добавляем туда наш Сервисный аккаунт (email с длинным хвостом, который был в json-файле) — даём права на «редактирование».

Шаг 3: Регистрируем бота в Telegram

  • Пишем @BotFather в Telegram.

  • Создаём нового бота: отправить команду /newbot, выбрать имя и юзернейм.

  • Получаем API Token — главный ключ для доступа к телеграмовским сообщениям. Лучше сохранить куда-нибудь себе отдельно (и не светить нигде).

Шаг 4: Устанавливаем Python и нужные библиотеки

Я не разработчик. Ну или не совсем разработчик — учился на САПР, там много на чём учили писать. Но давно. Например, про объектно-ориентированное программирование тогда ещё мало кто знал. Поэтому немного боюсь этих ваших Python’ов. Но тут инструкция от Perplexity действует безотказно.

  • Скачиваем Python с сайта (последняя версия для Win или Mac).

  • Желательно установить виртуальную среду (но если что — можно пропустить).

  • В консоли — я использовал powershell —устанавливаем библиотеки:

Перплексити советовала поставить WSL и Linux — я поставил, но так и не понял, зачем. Если кто-то объяснит, буду благодарен.

Часть библиотек может ругаться при установке на отсутствие других зависимостей — просто копируйте сообщение об ошибке и спрашивайте Perplexity, что делать дальше. У меня на этапе установки такого не было.

Шаг 5: Пишем первую версию программы

Открываем текстовый редактор. Я пользуюсь Far’ом — да-да, я такой старый, что ещё помню времена без Windows и даже без Norton Commander. И Far мне очень удобен, многое я делаю быстрее, чем мышкой с этими вашими драг-н–дропами.

Пишу промпт Perplexity и прошу её сгенерировать код бота. Сразу указываю в запросе все идентификаторы, чтобы потом не вставлять их руками в текст программы.

Копируем в открытый редактор код бота — Perplexity обычно генерирует именно то, что вам нужно под задачу.

Сохраняем как DreamTeamBot.py.

Вот что нейросеть сгенерировала мне (специально привожу картинку, а не код — под вашу задачу он не подойдёт, да и идентификаторы там мои):

Отладка

Естественно, «из коробки» этот код не работает. Но любую проблему я просто подсовываю в Perplexity и она подсказывает, как выйти из ситуации. Пришлось доставить библиотеку, обновить ещё одну и переписать код под новые — эту операцию я поручил самой Peplexity и она справилась.

Тому, кто давно не пользовался консолью, напомню: чтобы скопировать текст из выдачи, нажимаем Alt+Insert, отмечаем стрелками с клавишей Shift, Ctrl+Insert — и текст в буфере. 

Спасибо автору статьи Я сдаюсь. Пусть будет чат-бот — последнюю ошибку я победил благодаря его совету включить Google Sheets API для сервисного аккаунта. Perplexity вразумительного ответа на сообщение об ошибке не дала — авторизация и всё тут.

Окно бота на Python
Окно бота на Python

Просто форвардим боту в ТГ нужные сообщения

Вот так заметки приходят в Google Sheets. Напомню, это буфер для дальнейших разборок.

Выяснилось, что бот не записывает в таблицу сообщения с картинками. Для таких нужно будет как-то его доработать.

Всё, что написано в статье дальше — это планы на будущее.

Алгоритмы: Как AI-ассистент TEAMLY находит ответы для сотрудников

Первое, с чем придётся столкнуться — это запись заметок в базе знаний (БЗ), их автоматическое тегирование и сортировка «на лету». Для этого мне, похоже, придётся привлечь кого-то из наших разработчиков. 

Запись заметки в БЗ TEAMLY

Как я вижу себе алгоритм:

  1. Уже работающий телеграм-бот сохраняет сообщение в таблице DreamTeamBot.

  2. В счётчик строк записываем номер последней обработанной строки — определяем в цикле по отметкам в таблице.

  3. Бесконечный цикл.

  4. Постоянно работающий процесс на нашем сервере раз в 30 секунд (подберём интервал так, чтобы не перегружать ничего) считывает таблицу, начиная со [счетчик строк +1].

  5. Если строка [номер последней обработанной строки +1] не пустая, передаём её содержимое в скрипт сортировки и тегирования.

  6. Инкрементируем счётчик строк.

  7. Конец цикла.

В этом скрипте хорошо всё, кроме чёрного ящика на пятом шаге. Вот как будет работать этот скрипт.

Автоматическое тегирование и преобразование заметки к общепринятому стилю

  1. Получить содержимое текущей строки: дату и время, ID автора, текст заметки и другие поля.

  2. Проверить, что текст заметки не пустой и соответствует ожидаемому формату; если есть ошибки, зафиксировать их и пометить запись для дальнейшей проверки.

  3. Передать текст во встроенный AI TEAMLY для анализа с промптом, в котором описан формат ответа.

  4. Извлечь из ответа модели, данного в определённом формате, ключевые темы, категории и теги, отражающие суть заметки.

  5. Определить категорию записи (например, «техническая проблема», «запрос», «идея»), используя модель или готовые словари.

  6. Сгенерировать краткое содержание (summary), заголовок для заметки.

  7. Определить пространство, используя права доступа сотрудника и контекст. Записать заметку в нужную статью, определяемую тегами и контекстом.

  8. Записать в строку таблицы дополнительные поля: теги, категорию, статус обработки, время и результат анализа.

  9. В случае ошибки анализа пометить запись для ручной проверки и при необходимости уведомить ответственного.

  10. Логировать результаты обработки для аудита и отладки.

  11. Вернуть управление в основной цикл.

Поиск ответа на вопрос через TEAMLY-бота

  1. Сотрудник пишет вопрос боту в Telegram: «Как согласовать отпуск в июле?»

  2. Бот передаёт запрос в TEAMLY — через API или напрямую, если настроена интеграция.

  3. AI-ассистент TEAMLY определяет теги, контекст, дополняет вопрос самостоятельно, если фраза обрывочная.

  4. AI-ассистент TEAMLY ищет ответ по базе знаний, сообщая теги и контекст. Использует RAG — Retrieval Augmented Generation, т.е. информация из БЗ имеет приоритет перед той, что найдена в интернете. Естественно, в ответе содержатся ссылки на источник. 

  5. Бот выдаёт ответ сотруднику прямо в чате: «Чтобы согласовать отпуск в июле, нужно... (далее подробности)».

Внимательный читатель на этом месте должен задуматься — а где же алгоритм поиска на 4 шаге? А он не нужен! AI-ассистент TEAMLY так и работает, если задать ему вопрос в интерфейсе платформы. Значит, ничего мудрить не нужно.

Для чего всё это? Ответ прост: чтобы сотрудник не запускал тучу приложений, чтобы ему было удобно, чтобы наполнение БЗ и поиск по ней не занимал лишнее время. А то, чем удобно и быстро пользоваться, применяется в первую очередь и с удовольствием.

Трудности реализации с AI

Чтобы получить от нейросети «хороший», то есть соответствующий вашим ожиданиям ответ, нужно правильно задать вопрос. Особенно это касается алгоритмов. Пока я писал этот текст, вышла статья эксперта по искусственному интеллекту, автора канала Cherry Studio AI, ChatBox и другие ИИ‑клиенты  Андрея Лещёва. Позволю себе дать на неё ссылку Как язык созданный для «Бурана», учит ChatGPT писать без багов и кратко изложить её содержание.

Алгоритмы, создаваемые ИИ, могут не отвечать запросу пользователя. А пользователь может не заметить неправильную реализацию в результате своей низкой квалификации. Эту проблему можно решить, используя ДРАКОН — Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность. Цимес в том, что ИИ отлично понимают ДРАКОН-схемы в формате json. Это позволяет получать сгенерированный код, который выполняет задуманный пользователем алгоритм, а не бред нейросети. И не только код — ДРАКОН можно использовать для решения задач юриспруденции, медицины, образования, инженерии и многих других областей.

Эта статья настолько меня зацепила, что я решил связаться с автором и попросить его дать оценку своим планам, поделиться практическими советами по реализации алгоритмов. Вот какой комментарий написал Андрей:

Мне кажется, такое применение ДРАКОН-схем даже более оправданно, чем их использование для вайбкодинга.

При вайбкодинге ты обычно пишешь алгоритм или функцию один раз — ДРАКОН тут помогает продумать логику. Но каждый раз править схему и скармливать её ИИ неудобно. Начинаешь общаться с ИИ в диалоге, постепенно уходишь от схемы — она просто перестаёт быть актуальной.

А задача Юрия из тех, что повторяются постоянно. Именно в таких случаях можно и нужно оттачивать алгоритмы. Ради повторяющихся задач не жалко потратить время на отладку — результат окупит тщательность подхода.

Плюс ДРАКОН выдаёт алгоритм в виде JSON, а LLM очень хорошо воспринимают промпты в таком формате. Можно использовать схему сразу как инструкцию для ИИ.

Ещё вижу возможность для A/B-тестов. Скармливаем одни данные 2-3 разным алгоритмам, редактор или сообщество выбирает лучший результат. Собираем статистику, смотрим — у какого алгоритма что получается лучше. 

Потом используем их либо по специфике задачи, либо дорабатываем основной алгоритм, понимая слабые места.

Итоги. Стоит ли пытаться

Меня вдохновляют перспективы, которые открывает искусственный интеллект. Мне удалось создать рабочего бота в Телеграм за 2—3 часа — это вместе с установкой необходимого ПО и разборками с «ламерскими» задачами. Опыт прикручивания нейросетей к ботам тоже описан, так что серьёзных препятствий к реализации своих наполеоновских планов я не вижу.

ТГ-боты могут дать совершенно новый опыт использования базы знаний, причём, как при ответах на вопросы, так и при её пополнении. Ради этого стоит пытаться написать и запустить второго бота, срастить его с базой знаний и вывести поддержку клиентов и онбординг новых сотрудников на более высокий уровень. Надеюсь, сотрудники моей компании оценят.

Комментарии (4)


  1. cless75
    15.10.2025 06:03

    Привет !

    класная статья , пара вопросов :

    а почему Teamly не умеет работать с хранилищем Google из коробки ?

    Чем плох web интерфейс к базе знаний ?

    и часть с Драконом не понял от слова совсем ((

    Было бы класно сделать примеры ))


    1. Vitaliy_Chesnokov Автор
      15.10.2025 06:03

      Рады, что статья получилась практичной.
      На вопрос: "Почему Teamly не умеет работать с хранилищем Google из коробки?", отвечаем:

      Он умеет, только на другом уровне. Задача "тащить значения из конкретных таблиц да ещё и по определённому алгоритму", разработчикам не ставили.

      Далее - ответы нашего автора:

      >> Чем плох web интерфейс к базе знаний?

      "Ничем он не плох. Просто с точки зрения бота было бы удобнее по API к БЗ обращаться, а не применять роботов"

      >> И часть с Драконом не понял от слова совсем ((

      "Когда промпт не получается написать совсем уж естественным языком — например, описать алгоритм — на помощь приходит ДРАКОН, который ещё и сгенерирует потом json — такая мысль. А код напишет та же Perplexity"

      >> Было бы классно сделать примеры ))

      "На Драконе? у Андрея есть в статьях и в канале. А если вы про бота — то нет смысла, всё равно у вас будет другая задача, свои идентификаторы и всё такое"


  1. Urry73
    15.10.2025 06:03

    О, на меня сослались ) Спасибо )


  1. mrMazai
    15.10.2025 06:03

    Отличная статья! Рад был показать новый путь )