Волна хайпа ИИ-агентов докатилась до меня в марте 2025 года. К тому времени я 7 месяцев общалась с ChatGPT и месяц учила Python и Machine Learning. Я была занята созданием собственной нейронной сети, тестированием моделей и имела опыт построения простого Телеграм-бота. Иными словами, загружена под завязку, когда со всех сторон стали доноситься истории про то, как «ИИ-агент создал сайт за 2 часа». Не выдержав этого натиска, я решила разобраться и построить своего агента.
Я понимала, что ИИ-агент — это обвязка LLM, но что у нее под капотом и как все это укладывается в одну систему, оставалось загадкой. В целом, считала, что агенты — это чистой воды маркетинг.
В этой статье я поделюсь своим опытом и расскажу про:
Выбор стека, открытия и ошибки при разработке ИИ-агента
Пошаговое создание ИИ-агента с использованием: Telegram, Python, OpenAI Assistant API, SerpAPI, APScheduler
В заключении поделюсь мнением: ИИ-агенты — это маркетинг или будущее персонального софта?
Выбор цели проекта и стека
Разобравшись с устройством и тестированием моделей ИИ, я добавила новые навыки в резюме и стала в фоновом режиме наблюдать за вакансиями AI Tester или GenAI QA.
И я подумала, пока интересуюсь рынком ИИ тестирования, может попробовать подключить ИИ-агента - потренироваться в разработке, и заодно посмотреть какие вакансии он будет находить. Так родилась идея для агента и я впервые почувствовала, что он реально может быть полезен. Дальше аппетит разыгрался, и я захотела, чтобы агент по расписанию:
Делал любые напоминания например, за месяц до поездки напоминал о покупке билетов
Искал любые данные и присылал их со ссылками, например, раз в неделю новые научные открытия по теме темной материи
С этим ТЗ я пришла к ChatGPT, и мы начали проект. Решили идти по стандартному пути и воспользоваться OpenAI API для доступа к LLM. Построили Телеграм-бота, подключили API и выяснили, что ChatGPT через API не имеет доступа к веб-поиску!
Я ощутила разочарование от того, что доступ к моделям по API рекламируется как удобный и недорогой, особенно ютуб-блогеры часто на этом делают акцент. Но когда начинаешь применять технологию на практике, выясняются нюансы, которые ставят под сомнение такие обещания и требуют переработки проекта.
? ОТКРЫТИЕ №1
Перед тем как строить новый AI продукт, надо убедиться, что технологический стек подходит под задачу.
Банальность? Да, но искусственный интеллект – это новая ниша, мало кто знает, что и как в ней реально работает.
Поэтому после очередного чтения документации перешли на использование OpenAI Assistant API, который якобы был создан специально для веб-поиска. И я думала, что именно LLM через Assistant API выполнит веб-поиск и интерпретирует для меня результаты. Не тут-то было. Мы же все знаем, что делает LLM? Предсказывает следующее слово или кусочек кода
. Тогда почему же я решила, что модель сама выполнит поиск? Она не выполнит, для этого ей нужны обработчики и другие программы.
? ОТКРЫТИЕ №2
Оказывается не «ИИ-агент делает сайт за 2 часа», и не «ИИ-агент ищет мне вакансии» — ИИ в этой экосистеме выступает лишь переводчиком запроса пользователя в понятную для программы инструкцию.
А весь рабочий функционал выполняется кодом на Python, то есть сторонним софтом — обвязкой LLM. И уже результат поиска отдается обратно в LLM.
Поняв, что LLM сама не делает поиск, нужно было решить, а какой поисковый движок использовать? И вот тут мы упёрлись в реальность: Google не принимает поисковые запросы напрямую от чата GPT (конкуренция!). Значит, нужен другой лояльный движок. Тогда в качестве обходного решения выбрали SerpAPI — он может выполнять Google search, но за деньги. На бесплатном тарифе только 100 запросов в месяц. А переходить на платную подписку для домашнего ИИ агента не выгодно. Поэтому нашли выход: сначала поиск идет через SerpAPI, а затем при заполнении лимита перенаправляется на DuckDuckGo – широко известный в узких кругах и толерантный к ботам поисковик.
Результаты поиска отдаются обратно в LLM для интерпретации и отправки ответа пользователю и на этом этапе выяснилась следующая проблема: ChatGPT, работающий через API, интерпретирует результат поиска каждый раз по-разному. У него нет контекста и истории чата, и он может вообще не понять, что это и сказать что-то типа: «Я языковая модель и не могу выполнить ваш запрос в интернет».
? ОТКРЫТИЕ №3
Чтобы ИИ агент работал стабильно, его нужно окружить строгими обработчиками и четкими системными инструкциями.
И здесь возникает главный вопрос: если мы жестко прописали код и инструкции, то зачем нам LLM под капотом? Чтобы передать результат поиска клиенту? Так это можно сделать и без привлечения искусственного интеллекта.
Но все же мы продолжили и довели продукт до ума и назвали агента Мила. Вот какая архитектура появилась в финале:
Компонент |
Что делает |
---|---|
Телеграм-бот на базе ChatGPT и OpenAI Assistant API |
Интерфейс взаимодействия с пользователем: постановка задач, получение списка задач, удаление задач, получение ответов. |
LLM (ChatGPT 4o) |
Преобразует задачу пользователя в поисковый запрос. |
APScheduler (библиотека) |
Отвечает за планирование задач и их автоматический запуск по расписанию. |
SerpAPI / DuckDuckGo + BeautifulSoup |
Выполняет веб-поиск по запросу пользователя и возвращает сырые результаты. |
LLM (ChatGPT 4o) |
Формирует финальный ответ для пользователя на основе результатов поиска. |
Локальное хранилище задач (txt, json) |
Сохраняет текст задач и параметры их выполнения в файлах .txt и .json. |
Python |
Язык программирования, на котором реализована вся логика: взаимодействие с API, обработка задач, планирование, выполнение поиска и генерация ответов. |
Пошаговый процесс создания ИИ-агента
ШАГ 1 – Создание Телеграм-бота
В Телеграм найти @BotFather и написать /newbot
.
Следовать инструкциям, придумать название бота и username. После регистрации придет HTTP API Token — его надо скопировать и сохранить.
ШАГ 2 – Получение API ключа
Выбор зависит от используемой LLM. В моем случае это ChatGPT, поэтому API ключ я получила на сайте OpenAI: зарегистрировалась, сгенерировала ключ и сохранила его в безопасном месте.
ШАГ 3 – Создание проекта в редакторе кода
Как только есть 3 вещи:
Телеграм-бот
Телеграм токен
API ключ
можно начать проект.
Я использовала Visual Studio Code и создала структуру проекта с отдельными папками для кода, файлов задач и окружения. Python был установлен ранее, поэтому через pyenv
я переключилась на Python 3.10 и создала виртуальное окружение для проекта.

ШАГ 4 – Пишем код на Python для ИИ-агента
Основные файлы проекта:
bot_prompt_setup.py
— интерфейс бота, кнопки, приветствие, генерация промпта, создание файлов, планировщик, создание и запуск задачи, удаление задач — все это здесь.assistant_core.py
— здесь взаимодействие с LLM и web-search.
Важно:
Все токены и ключи убираются в
.env
файл (закрытый от публикации на GitHub).Доступ к боту ограничен по white list
user_id
— без приглашения ИИ-агент недоступен.
ШАГ 5 – Запуск и отладка
Запускаем локально bot_prompt_setup.py
и проверяем работу. На этом этапе бот уже работает в Телеграм и можно начать end-to-end тестирование:
стартовать бота
создать задачу
проверить правильность выполнения
протестировать удаление задач
Я проверяла все типы задач:
периодичность —
daily
,weekly
,monthly
,once
наличие веб-поиска или напоминания
После тестов можно улучшить UX: переименовать кнопки, добавить подсказки, перевести интерфейс на нужный язык.
Но самое главное — это настройка промптов для LLM, которые управляют логикой работы агента. В моем коде 4 промпта, и делают они следующее:
Сначала разбор задачи + создание постоянного промпта для задачи.
Потом передача результата + красивое форматирование для пользователя.
ШАГ 6 – Приемочное тестирование
Главным бизнес-пользователем и по совместительству тестировщиком стал мой муж. Когда он начал пользоваться агентом, выяснились ошибки реализации многопользовательского функционала: система не различала его и мои задачи — все попадало в один список.
Мне пришлось пересмотреть подход к созданию task_id
и логику разделения задач для разных пользователей. После того, как мы с моей ИИ помощницей все исправили, я впервые почувствовала себя инженером-архитектором, которому под силу решить реальную проблему.
ШАГ 7 – Деплой на прод
Где опубликовать свой продукт — всегда ребус, который я решаю исходя из 3 составляющих:
Доступность кода для тех, кому интересно — в этом случае это всегда GitHub.
Поддержка определенных библиотек или функции
always-on
— некоторые платформы могут не поддерживать библиотеки для ИИ продуктов (как это было у меня с нейронной сетью на TensorFlow/Keras).Стоимость, ведь для таких энтузиастов как я все платится из собственного кармана.
Исходя из этого, для Милы я выбрала связку GitHub + PythonAnyWhere.
ИТОГО:
Скриншоты
Ниже скрины работы моего ИИ-агента по одной задаче поиска вакансий AI Tester. Интерфейс на английском, так как мне это нужно для портфолио проектов. Но можно сделать на любом языке — как интерфейс, так и сами задачи. Например, я ставлю задачи на русском языке.
Приветствие и подсказка для описания новой задач:
Постановка задачи и её выполнение:
Пишу своими словами, что я хочу на русском языке
LLM формирует промпт, поисковый запрос и планирует время
Присылает зарегистрированную задачу
При наступлении времени результат задачи приходит в ТГ — на скрине видно, что задача была запланирована на 10:45 утра и в это время пришёл результат выполнения.
Заключение
ИТОГО — что может мой ИИ-агент?
Делать самостоятельный поиск в интернете по расписанию, присылать результаты и делать напоминания.
То есть это реально работает:
пока я пью чай на веранде, Мила ищет мне вакансии!
Удобно? Да.
Практично? Не совсем.
В моем решении LLM не влияет на поиск, это обычный Google Search и его результаты, хотя и зависят от поискового запроса, не всегда бывают точными и релевантными. Например, на скринах выше видно, что по запросу найти вакансии AI Tester или GenAI QA в ответе часть вакансий не соответствуют ожиданиям. Для этого как раз и нужен ИИ — фильтровать ответы.
Что бы я хотела в идеале (для Милы 2.0):
ИИ-агент сам парсит HTML-страницы
Анализирует содержимое, определяя максимально подходящее под запрос
Работает над ответом и шлет краткую выжимку с переводом на нужный мне язык
Но это задача следующего уровня сложности. И её решение снова упирается в реальность — сегодняшний Интернет не создан для ИИ.
Интернет строился десятилетиями для глаз, для кликов, для эмоций. Он про красивые сайты, баннеры, картинки, навигацию, всплывающие окна.
А ботам нужны данные: чистые и структурированные. Бизнесу это не выгодно — пустой трафик от ИИ не приносит денег.
Поэтому компании, вышедшие на рынок с ИИ-агентами, пока работают по гибридным схемам:
Используют «человекоподобные» headless-браузеры, например Playwright. Если сайт ставит защиту (капчу) — переходят на партнёрский API.
Применяют RAG-шлюзы: сайт отдает агенту только нужные данные в JSON (например, последние 20 вакансий) через API-эндпоинт.
Используют подход «этичного скрейпинга» (Ethical scraping): ограничение скорости запросов, кэширование, паузы между запросами.
Покупают лицензии на доступ к данным или работают по revenue sharing: платят владельцам данных долю от дохода или фиксированную ставку.
В этой ситуации я вижу, что в будущем инфраструктура интернета должна меняться — так, чтобы в ней могли сосуществовать и люди, и искусственный интеллект.
Так все-таки ИИ-агенты — это маркетинг или реальное будущее персонального софта?
Я считаю, что через год-два ИИ-агенты могут открыть окно в новый мир персонального софта, и тогда каждый из нас сможет сделать себе программу по вкусу. Наверно часть сегодняшних игроков уйдет с рынка или адаптируется. Например, платформы по созданию сайтов по подписке — выживут ли они, если предприниматель сам сделает сайт с помощью ИИ-агента?
На практике в агентских системах ИИ зачастую выполняет роль «умного» маршрутизатора, который просто определяет, какой шаблон или набор действий лучше всего подходит под запрос пользователя. За кулисами всё сводится к выбору из заранее подготовленных вариантов, что создаёт впечатление «магии» и высокой технологии.
Если это учитывать, то да, в агентах ИИ выступает скорее как маркетинговый и удобный интерфейс, а за счет заранее заготовленных решений достигается стабильность и предсказуемость. Пользователь получает удобный сервис, а разработчики — контроль над результатом.
Мы стоим на пороге удивительного мира. Надеюсь каждый из нас займет в нем место, которое будет вдохновлять каждый день.
PS: Меня часто спрашивают, какой промпт я использовала? Я теряюсь при таком вопросе.
Промпт? В смысле один?
Но ведь когда ты строишь продукт с нуля, с архитектурой, тестами, деплоем, это не серия промптов, это многодневный диалог с ИИ. Это настоящая совместная работа: обсуждения, уточнения, тестирование, переделки. ИИ здесь не волшебная палочка, а партнёр в маленькой команде: я и моя цифровая помощница.
Комментарии (32)
tolyanski
07.06.2025 19:31Ставьте лайк те, кто, увидев картинку с девушкой и чашкой кофе, первым делом сосчитал, все ли пальцы у нее на месте, и нет ли лишних :)
old_bear
07.06.2025 19:31Зачем считать? По замылено-пластмассовой картинке сразу понятно что это продукт нейросети. Так что можно спокойно промотать поскольку никакой полезной функции это изображение не несёт.
Roman_Cherkasov
07.06.2025 19:31А если не секрет, какую полезную функцию несет фотография девушки с чашкой кофе? В статье про что-то околотехническое естественно.
old_bear
07.06.2025 19:31Это у автора статьи надо спрашивать, не у меня.
По крайней мере если бы это было реальное фото автора то оно могло бы сработать по прямому назначению КДПВ. Хотя это конечно сексизм и все прочие нехорошие слова. А вот чего именно пытаются добиться авторы множества статей, добавляя сгенерированные изображения однотипных молодых людей обоих полов, пристально глядящихвдальв сторону чего-то похожего на компьютер, для меня загадка.
Dorial Автор
07.06.2025 19:31Цель картинки была отразить заголовок статьи - "я пью чай, а агент ищет вакансии" - такую картинку и сделали.
pnmv
07.06.2025 19:31Но кто будет это делать? Ежедневно сидеть на сайтах, выискивая нужное?
будет тот, кому нужна работа. если работа не нужна, то и необходимость парсить этот информационный шум, к счастью, отпадает.
заставлять роботов выделять нужное, к сожалению, не очень перспективное занятие. они не поймут правильно неверное применение терминологии и некоторые виды опечаток. словом, плохо справятся с человеческим фактором.
Dorial Автор
07.06.2025 19:31Да, вы правы, сейчас важно правильно ставить задачу агенту, чтобы минимизировать ошибки. Но если подобрать хорошую формулировку, агент справляется, и дальше всё работает в автоматическом режиме.
yatanai
07.06.2025 19:31Есть такое
Современные LLM модели умеют очень много, но всё зависит от формулировки. Если использовать термины на которых они обучаюсь то качество в разы лучше. (Можно просто спросить у ИИ что оно знает по теме) Я сейчас делаю что-то похожее на ACT-R систему и я, без знаний NLP, просто прошу ИИ разобрать предложения, добавляем всякие парсеры и валидаторы и приложение готово.
Zulu0
07.06.2025 19:31Время потраченное на постановку задачи, и в итоге скрипт на питоне собирает информацию. Это прям успех... С таким же успехом иишка могла сгенерть парсер этих данных в чат. Найди лишнее звено...
Paczuk
07.06.2025 19:31Есть ли спрос на AI QA нынче?
Dorial Автор
07.06.2025 19:31Я вижу много вакансий, но есть ли спрос пока не знаю (я имею ввиду, что вакансии не всегда означают спрос, иногда за ними нет работы). Только изучаю этот вопрос на будущее, смотрю что требуют, какие навыки. Но в целом это новое направление, думаю спрос будет. Если будет собственный опыт, расскажу.
Le0Wolf
07.06.2025 19:31Эм... А вы пробовали информацию искать самостоятельно, а не спрашивать ChatGPT?
https://platform.openai.com/docs/guides/tools-web-search?api-mode=responses
Dorial Автор
07.06.2025 19:31Пробовали, в статье есть упоминание про это, что после изучения документации решили идти с Assistant API. Дело в том, что Response API только вышел, про него пишут, что он стоит в 2 раза дороже, и не имеет встроенного планировщика задач. То есть нам пришлось бы делать ту же архитектуру: планировщик на APScheduler вместе с Python, чтобы ставить задачи и выполнять их в заданное время. А дальше уже в нужный момент идёт запрос к OpenAI API и отправляется результат в Telegram.
Но в будущем посмотрим, в 2026 говорят Assistant API уберут, может тогда построим что-то получше.
home14352
07.06.2025 19:31В приветственном сообщении ошибка(там, где написано «Your task…»): надо ran а не run.
Dorial Автор
07.06.2025 19:31Вот тут не подскажу, у меня с грамматикой в английском не очень. А чат говорит, что для will be надо брать глагол в третьей форме для пассива. А для глагола run — это неправильный глагол: run — ran — run. То есть правильно говорит run. Как вам? Я не утверждаю, что это верно:)
ideological
07.06.2025 19:31Например, платформы по созданию сайтов по подписке — выживут ли они, если предприниматель сам сделает сайт с помощью ИИ-агента?
Часто вижу подобные рассуждения. И конечно сомневаюсь что предприниматели будут что-то делать сами :), конечно заплатят кому-то. Прям сами будут нашёптывать промпты исправлений и себя же корить за дедлайны. Ахахах.
Меня часто спрашивают, какой промпт я использовала? Я теряюсь при таком вопросе.
Промпт? В смысле один?
Встречаются такие люди, фанаты единого чудо промпта. Мне кажется им даже не объяснить.
pavelsha
07.06.2025 19:31Встречаются такие люди, фанаты единого чудо промпта. Мне кажется им даже не объяснить.
А что тут объяснять то? Если главное найти свой
правильный магический свитокпромпт.И Гемини с ДипСиком уже всё за тебя заVibe-кодили Вы думаете это ведьма? Нет. Это AI-vibe-копирайтер пишет глубокие анализы для тг-каналов вместе с чатГПТ. А под рукой у нее "Сборник лучших промптов. 2025Q2"
HSerg
07.06.2025 19:31Интернет строился десятилетиями для глаз, для кликов, для эмоций. Он про красивые сайты, баннеры, картинки, навигацию, всплывающие окна.
А ботам нужны данные: чистые и структурированные. Бизнесу это не выгодно — пустой трафик от ИИ не приносит денег.AI может обрабатывать и скриншоты. Работает вполне сносно (есть ограничения на разрешение), но не быстро и не дёшево.
Dorial Автор
07.06.2025 19:31Спасибо, для агента 2.0 буду парсинг HTML делать и файлы забирать, например на интересующем меня сайте с научными статьями информация доступна в PDF и я бы хотела, чтобы LLM его читала и мне возвращала выжимку на русском.
vagon333
07.06.2025 19:31Как пет-проект - чудно, но если рассматривать как продукт, хорошо бы добавить:
Job Search Criteria Storage
Это чтобы хранить разные критерии поиска работы.JobVacancies platforms
Это чтобы определить, на каких площадках ищем работу.Job Positions Storage
Это куда складывать найденные вакансии.(AI) Resume, Tailoring to Job Description: Skills and Experience.
Это чтобы подшаманить ваше резюме под требования вакансии.
Иначе не пройдете фильтр ATS (Applicant Tracking System).(AI) Automated Resume Match Evaluation to Job Description
Это чтобы оценить свои шансы, и при совпадении меньше 75% даже не тратить свое драгоценное время.(AI) Customized Cover Letter Generation
Это на всякий случай, если позиция позволяет помимо резюме залить еще Cover Letter.
А теперь всю эту хрень сделать многопользовательской, в виде веб и мобильного приложения. И выложить народу на успешное бодание с ATS.
Решил поделиться деталями, пока пилю продукт и задачи свежи в голове.
ArkadiyShuvaev
07.06.2025 19:31Решил поделиться деталями, пока пилю продукт
Если есть ссылка, поделитесь, пожалуйста :)
vagon333
07.06.2025 19:31Если есть ссылка, поделитесь, пожалуйста :)
Из любопытства, для личного поиска работы или похожая задача?
ArkadiyShuvaev
07.06.2025 19:31Хотел бы попробовать для поиска вакансий.
Меня, как пользователя, интересует поиск вакансий на английском языке на сайтах stepstone, LinkedIn, XING, indeed, Glassdoor. Вакансии на других языках (или с указанием другого языка как must have должны отбрасываться).
Dorial Автор
07.06.2025 19:31Спасибо за ваш подробный ответ и предложения. Изначально был большой план, включая резюме и сопроводительное письмо. Но когда начала делать, стало ясно что хоть бы минимум довести до ума: планировщик задач + веб поиск. А остальное пойдет в 2.0, но перед ним проведу исследование какой стек взять. И мой агент не только для вакансий, а для любой даты. Он уже многопользовательский, два пользователя пока подключено. И мобильное приложение хотела и стартап:) Размечталась будь здоров, реальность утерла мне нос:)
olku
Есть ли API или сервис который предоставляет поиск людей и компаний в LinkedIn?
Dorial Автор
Решения есть, зависит от того, что вы хотите (или как) - просто поиск как пользователь? Тогда мой ИИ агент это делает через SerpAPI - я специально под вас создала задачу и агент принес список людей с Линкедин (см на скриншоте) . Но если вам нужен скрапинг самого Линкедин - это другое. Вы можете спросить ChatGPT - он расскажет подробно под вашу задачу.
Итого - поиск людей на Линкедин ( я линки проверила - реальные люди, все AI Engineers.
pnmv
гугл, вроде, справляется.
а "у них, там" ещё не изобрели уровни доступа к профилям? ну, чтобы, как на хедхантере, эти видели, а все остальные - нет?