Ответы на вопросы после митапа по AI

Pavel Veinik

Ответы на вопросы после митапа по AIКраткая история IT: От ткацкого станка до нейросетей

С чего начать и основы

- Облачное хранение данных

Облачное хранение данных — это фундаментальный слой, на котором строятся современные AI-системы, особенно агентные. В 2026 году его роль не сводится к простому хранению файлов; это активный компонент архитектуры.

  1. Основа для RAG (Retrieval-Augmented Generation): Это самая частая связка. Ваши знания — документы, код, базы данных — лежат в облаке. AI-агент для ответа на вопрос сначала ищет релевантную информацию в этих источниках, а затем синтезирует ответ.

    • Технологии: Объектные хранилища (Amazon S3, Google Cloud Storage) для файлов, но главное — векторные базы данных (Pinecone, Weaviate, Milvus), которые хранят не сами данные, а их числовые представления (эмбеддинги) для семантического поиска.
  2. Долгосрочная память агентов: Чтобы агент помнил контекст между сессиями, его воспоминания сохраняются в облачных базах данных. Простые KV-хранилища (Redis, DynamoDB) используются для быстрой памяти, а векторные БД — для хранения и поиска по всему опыту агента.

    • Лучшая практика: Использование гибридной памяти, как в фреймворке Mem0, который автоматически управляет краткосрочной и долгосрочной памятью.
  3. Хранение артефактов MLOps: В процессе работы агенты могут генерировать код, отчеты, конфигурации. Все это хранится в облаке, версионируется (например, с помощью DVC, интегрированного с S3) и используется для следующих задач.

Что может пойти не так:

  • Наивный поиск: Просто положить все в векторную БД — плохая идея. Качество поиска будет низким. Нужно правильно нарезать данные на фрагменты (чанки) и использовать реранкеры (например, Cohere Rerank), чтобы уточнять результаты поиска.
  • Безопасность: Данные в облаке требуют строгих политик доступа, особенно если агент имеет права на запись.

Полезные материалы:


- Хочу узнать доступные практики использования, о которых еще не знаю.

Давайте отойдем от базового паттерна один агент — один инструмент и посмотрим на state-of-the-art подходы.

  1. Мультиагентные системы (Multi-Agent Systems): Вместо одного агента-универсала создается команда из нескольких специализированных агентов. Они общаются, распределяют задачи и достигают цели вместе.

    • Orchestration: Один агент-менеджер декомпозирует задачу, раздает ее агентам-исполнителям (например, тестировщик, разработчик, документатор), а затем собирает результаты.
    • Технологии: Фреймворки Microsoft AutoGen и CrewAI — лидеры в этой области. LangGraph позволяет строить более сложные, циклические взаимодействия.
  2. GraphRAG и Графы Знаний (Knowledge Graphs): Это эволюция обычного RAG. Вместо поиска по плоским документам, агент сначала строит граф знаний из данных, выделяя сущности и связи между ними. Это позволяет отвечать на сложные, многосоставные вопросы, требующие анализа связей.

    • Пример: Какие технологии использовались в проектах, которыми руководил John Doe, и как они связаны с проблемами производительности?
    • Технологии: Проект Microsoft GraphRAG, базы данных типа Neo4j для хранения графов.
  3. Адаптивные агенты (Adaptive Agents): Агент не просто следует заранее заданному плану (ReAct или Plan-and-Solve), а адаптирует свою стратегию на лету. Например, если поиск по документации не дал результата, он может попробовать поискать в коде или задать вопрос другому агенту. Это достигается с помощью циклов рефлексии и самокоррекции.

    • Технологии: Реализуется через кастомную логику в LangGraph или через продвинутые фреймворки типа DSPy, который оптимизирует всю цепочку вызовов (prompt, retrieval, model).

Что может пойти не так:

  • Агентский хаос: В мультиагентных системах без четкой иерархии и правил коммуникации агенты могут зациклиться или мешать друг другу.
  • Стоимость: Каждый шаг агента — это вызов LLM. Сложные системы могут быть очень дорогими.

Полезные материалы:


- Сравнить реализацию с тем что использую сам

Чтобы сравнение было предметным, давайте зафиксируем, как выглядит типичная реализация AI-помощника в 2024-2025 годах, и сравним ее с передовыми практиками 2026 года.

Типичная реализация (Baseline):

  • Архитектура: Один агент, работающий по принципу ReAct (Reason + Act). Он получает промпт, решает, какой инструмент использовать (например, поиск по базе знаний), использует его, получает результат и на его основе генерирует ответ.
  • Стек: LangChain или LlamaIndex как основной фреймворк. Векторный поиск в ChromaDB или FAISS. Модель — GPT-4 или Claude 3 Sonnet.

State-of-the-Art реализация (2026):

  • Архитектура: Мультиагентная система на базе CrewAI или AutoGen. Есть агент-оркестратор, который декомпозирует сложную задачу и распределяет ее между специализированными агентами (например, агент для работы с API, агент для анализа кода, агент для поиска в документации).
  • Память: Гибридная модель. Краткосрочная — в KV-хранилище (например, Redis). Долгосрочная — в управляемой векторной БД (Pinecone), с отдельным графом знаний (Neo4j) для ключевых сущностей. Используется фреймворк Mem0 для управления памятью.
  • RAG: Не просто векторный поиск, а GraphRAG + реранкеры (Cohere Rerank) для повышения релевантности. Чанкинг документов адаптируется под их структуру.
  • Модели: Вместо одной большой модели — иерархия моделей. Мощная модель (GPT-5, Claude 4) для планирования и анализа. Более легкие и быстрые модели (Mistral Large, Llama 3 70B) для выполнения рутинных задач, таких как форматирование вывода или вызовы API.
  • Оптимизация: Использование фреймворка DSPy для компиляции всей цепочки (промпты, вызовы инструментов, модели), что снижает задержку и стоимость.

Ключевое отличие: Переход от монолитного агента к гибким, оркестрируемым системам, которые больше похожи на команду автономных специалистов, чем на один инструмент.

Полезные материалы:


- Стоит задача разобраться с агентами в разработке ПО.

AI-агенты — это не просто помощники в IDE, а полноценные участники процесса разработки. Вот ключевые направления и как с ними работать.

  1. Автоматизированный кодинг и рефакторинг: Агенты могут писать код по техническому заданию (task-driven development). Вы описываете задачу в виде issue, а агент создает ветку, пишет код, прогоняет тесты, исправляет ошибки и создает Pull Request.

    • Инструменты: Aider, Devin, OpenDevin — это специализированные агентные фреймворки для разработки. Они хорошо работают в связке с вашим репозиторием, понимают контекст кода.
    • Как начать: Начните с малого. Дайте агенту простую задачу на рефакторинг: переименовать функцию X во всем проекте и обновить ее вызовы.
  2. Анализ и онбординг в кодовую базу: Когда вы приходите на новый проект, агент может стать вашим наставником. Он строит граф зависимостей кода, индексирует документацию и отвечает на вопросы типа: Где находится логика аутентификации и какие сервисы от нее зависят?.

    • Инструменты: Sourcegraph Cody, или можно построить свой RAG-агент на базе LlamaIndex, который будет индексировать и код, и документацию.
  3. Автоматизированное тестирование и отладка: Агент может писать unit-тесты для нового кода (на основе его описания или diff-а в PR) или анализировать логи ошибок, чтобы найти причину падения.

    • Инструменты: CodiumAI, Diffblue. Либо мультиагентная система (CrewAI), где один агент пишет код, а второй — тесты для него, и они работают в цикле, пока все тесты не пройдут.

С чего начать практически:

  1. Установите Ollama: Это позволит вам запускать мощные open-source модели (Llama 3, Mistral) локально. Это бесплатно и безопасно, но потребует вычислительных мощностей.
  2. Попробуйте Aider: Это консольный инструмент, который легко интегрируется с Git. Дайте ему доступ к небольшому репозиторию и попросите исправить баг или добавить фичу.
  3. Создайте простого RAG-агента: Используя LangChain и ChromaDB, сделайте агента, который отвечает на вопросы по документации вашего проекта.

Что может пойти не так:

  • Потеря контроля: Не давайте агенту прямой доступ в production. Всегда работайте в отдельных ветках и проверяйте его код через PR.
  • Галлюцинации в коде: Агент может придумать несуществующие библиотеки или методы. RAG по актуальной документации и коду частично решает эту проблему.

Полезные материалы:


- Профессиональное использование инструмента. Хотелось бы научиться использовать все возможности текущего подхода разработки с ai

Это правильная цель. Переход от просто чата в IDE к профессиональному использованию AI лежит в двух плоскостях: системный подход и продвинутые техники.

1. Системный подход (AI-Native Workflow):

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

  • Проектирование: Используйте AI для брейншторминга архитектуры. Промпт: Я создаю систему X. Предложи 3 варианта архитектуры (микросервисы, монолит, serverless), сравни их плюсы и минусы для моего случая.
  • Разработка: Не напиши мне функцию, а напиши код для задачи JIRA-123, вот ее описание. Используй паттерн репозиторий, вот ссылка на существующий код. Покрой unit-тестами. Используйте инструменты типа Aider.
  • Код-ревью: AI-агент выступает как первый рецензент. Он проверяет код на соответствие стайлгайду, ищет потенциальные ошибки, проверяет наличие документации. Это экономит время команды. Инструменты: CodeRabbit, GitHub Copilot Workspace.
  • Тестирование: Агент пишет unit-тесты, генерирует тестовые данные, анализирует отчеты о покрытии и предлагает, какие части кода нуждаются в дополнительных тестах. Инструменты: CodiumAI.
  • Документация: Агент генерирует docstrings, обновляет README и пишет техническую документацию на основе diff-а в Pull Request.

2. Продвинутые техники и инструменты:

  • Локальные модели: Не полагайтесь только на облачные API. Установите Ollama и используйте локальные модели (Llama 3, CodeGemma) для работы с кодом. Это быстрее, конфиденциальнее и бесплатно.
  • Создание кастомных инструментов (Custom Tools): Научитесь давать агентам доступ к вашим внутренним системам. С помощью LangChain или LlamaIndex вы можете создать инструмент, который позволяет агенту, например, получать статус микросервиса из Kubernetes или искать данные во внутренней базе знаний.
  • Мультиагентные системы: Для сложных задач используйте команды агентов (CrewAI). Например, один агент пишет код, второй пишет тесты, третий проверяет безопасность.

Что может пойти не так:

  • Чрезмерное доверие: Всегда проверяйте результат работы AI. Он отличный помощник, но не замена инженеру.
  • Неправильный выбор инструмента: Не пытайтесь решить все задачи одной моделью. Для генерации кода хороши одни модели (CodeGemma), для анализа и планирования — другие (GPT-4.5/5, Claude 4).

Полезные материалы:


- Хотел просто послушать, посмотреть как агентов можно применять в разработке. В каких кейсах это актуально

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

Кейс 1: Умный поиск по кодовой базе и документации

  • Проблема: Нужно быстро понять, как работает часть проекта, или найти пример использования конкретной функции.
  • Решение: RAG-агент, которому скормили всю вашу кодовую базу, документацию, и даже историю коммитов. Вы задаете ему вопрос на естественном языке, а он находит релевантные фрагменты кода и объясняет их.
  • Польза: Ускоряет онбординг новых сотрудников и ежедневную работу.

Кейс 2: Автоматическое написание кода по задаче

  • Проблема: Рутинная задача, например, добавить новое поле в API-эндпоинт, обновить базу данных и написать тест.
  • Решение: Агент, интегрированный с вашей IDE или Git (например, Aider). Вы даете ему текстовое описание задачи, а он сам вносит изменения в нужные файлы.
  • Польза: Экономит часы на написании шаблонного кода.

Кейс 3: Автоматизированное код-ревью

  • Проблема: Код-ревью занимает много времени у старших разработчиков.
  • Решение: AI-агент, который автоматически анализирует каждый Pull Request. Он проверяет стиль кода, ищет распространенные ошибки, проверяет наличие тестов и оставляет комментарии.
  • Польза: Снижает нагрузку на команду и повышает качество кода, отлавливая проблемы на раннем этапе.

Кейс 4: Оживление документации

  • Проблема: Статичная документация быстро устаревает и не позволяет экспериментировать.
  • Решение: Интерактивный AI-агент, встроенный прямо в вашу документацию. Он может не только отвечать на вопросы, но и выполнять команды из документации в песочнице, показывая живой результат.
  • Польза: Делает документацию намного более полезной и вовлекающей.

Ключевой вывод: Агенты наиболее эффективны там, где есть четко определенные, повторяющиеся задачи, требующие работы с большим контекстом (кодом, документацией, API).

Полезные материалы:


- Mainly use ai in a development, no agents used. Meetup will be useful for me. Thanks.

You're in the right place. The key difference between just using AI (like a simple code completion tool) and using AI agents is autonomy. An agent can perform multi-step tasks, use tools, and work towards a goal without constant human intervention.

Here’s a practical roadmap to transition from AI-assistant to AI-agent:

Step 1: Understand the Core Concept - ReAct

  • Most agents are built on a simple loop: Reason + Act (ReAct).
  • Reason: The LLM thinks about the goal and decides what to do next (e.g., I need to know the file structure, so I should list the files).
  • Act: The agent executes a tool based on its reasoning (e.g., runs the ls -R command).
  • This loop continues until the task is complete.

Step 2: Start with a Simple Tool-Using Agent

  • Instead of just asking an LLM to write code, build a simple agent that can interact with your local environment.
  • Your first project: Create an agent that can answer questions about your codebase.
  • Technologies:
    • Framework: Use LangChain or LlamaIndex. They make it easy to create agents.
    • LLM: Use a local model via Ollama (like Llama 3) to start for free.
    • Tool: Give the agent one tool: the ability to run shell commands (like grep or ls).

Step 3: Evolve to a Multi-Agent System

  • Once you are comfortable with a single agent, try a multi-agent approach for a more complex task.
  • Your second project: An agent system for automated development.
  • Technologies:
    • Framework: Use CrewAI. It’s great for beginners.
    • Agents:
      1. Analyst Agent: Takes a task description and breaks it down into steps.
      2. Developer Agent: Takes the steps and writes the code.
      3. QA Agent: Takes the code and writes tests for it.

What might go wrong:

  • Tool Errors: The agent might try to use a tool incorrectly (e.g., wrong arguments). Good error handling and providing clear tool descriptions is crucial.
  • Getting Stuck: The agent can get into a loop. More advanced frameworks like LangGraph help manage these complex states.

Useful Resources:


- Не сталкивался, хотел бы изучить расширенные возможности промптов и ИИ агентов

Продвинутые промпты и агенты — это две стороны одной медали. Качество работы агента напрямую зависит от качества промптов, которые им управляют.

1. От простого промпта к системному промпту агента

Простой промпт: Напиши функцию на Python, которая...

Системный промпт агента:

Ты — AI-ассистент для разработки ПО. Твоя цель — выполнять
задачи, которые тебе ставит пользователь.
Ты работаешь в цикле Мысль -> Действие.

**Мысль**: Ты должен проанализировать задачу и решить, какое
действие предпринять.
**Действие**: Ты можешь выбрать один из следующих
инструментов:
- `run_shell_command(command)`: выполнить команду в терминале.
- `read_file(path)`: прочитать файл.
- `write_file(path, content)`: записать в файл.
- `finish_task()`: завершить работу.

Твой ответ всегда должен быть в формате:
Thought: [твоя мысль]
Action: [вызов инструмента]

Это основа паттерна ReAct (Reason+Act), который заставляет модель не просто отвечать, а планировать свои действия.

2. Продвинутые техники промптинга для агентов

  • Chain of Thought (CoT): Уже классика. Просим модель думать вслух, прежде чем дать ответ. Для агентов это означает, что в шаге Thought модель должна подробно расписать свою логику.
  • Plan-and-Solve (PS): Вместо того чтобы действовать сразу, агент сначала составляет подробный план из нескольких шагов, а потом последовательно его выполняет. Это снижает количество ошибок.
  • Self-Correction/Reflection: После выполнения действия агент анализирует результат. Если что-то пошло не так (например, код не скомпилировался), он не сдается, а пытается исправить ошибку на следующей итерации. Промпт для этого может выглядеть так: Проанализируй результат предыдущего действия. Если есть ошибка, определи ее причину и составь план по ее исправлению.

3. Как это работает в коде

Фреймворки типа LangChain и CrewAI инкапсулируют эти сложные промпты внутри себя. Вы просто описываете задачу, инструменты и агентов, а фреймворк сам генерирует эти промпты для LLM на каждом шаге.

С чего начать:

  • Постройте простого ReAct-агента с помощью LangChain.
  • Затем попробуйте реализовать мультиагентную систему в CrewAI. Посмотрите, как отличаются системные промпты для разных ролей (например, Разработчик и Тестировщик).

Полезные материалы:


- На чем начать фокусироваться чтобы эффективно использовать агентов?

Чтобы эффективно использовать агентов, сфокусируйтесь на трех ключевых областях. Это база, без которой вы будете получать посредственные результаты.

1. Контекст, Контекст и еще раз Контекст Агент без контекста бесполезен. Его нужно заземлить (grounding) на ваши реальные данные. Фокусируйтесь на создании качественного RAG (Retrieval-Augmented Generation).

  • Что делать:
    1. Соберите источники знаний: код, документация, Confluence, Slack, задачи из Jira.
    2. Правильно их обработайте: Не просто кидайте в векторную базу. Используйте парсеры, которые понимают структуру кода или Markdown. Нарезайте на осмысленные чанки (не по 1000 символов, а по функциям, параграфам).
    3. Используйте реранкеры: После первого поиска по векторной базе, второй, более легковесной модели, нужно пересортировать результаты, чтобы самые релевантные были наверху.
  • Инструменты: LlamaIndex, Pinecone, Cohere Rerank.

2. Управление состоянием и планирование Эффективный агент должен уметь выполнять сложные, многошаговые задачи. Это требует управления состоянием и умения строить и адаптировать планы.

  • Что делать:
    1. Освойте LangGraph: Это расширение LangChain, которое позволяет строить агентов в виде графов. Это дает полный контроль над логикой: циклы, условные переходы, самокоррекция.
    2. Изучите паттерны: Plan-and-Solve, ReAct, мультиагентная кооперция. Поймите, какой паттерн лучше подходит для какой задачи.
  • Инструменты: LangGraph, CrewAI.

3. Оценка и Итерация (Evaluation) Вы не сможете улучшить то, что не можете измерить. Эффективность агента нужно оценивать.

  • Что делать:
    1. Создайте тестовый датасет: Набор типовых задач для вашего агента с эталонными результатами.
    2. Используйте фреймворки для оценки: Они помогут автоматически прогонять тесты и оценивать качество ответов по разным метрикам (релевантность, отсутствие галлюцинаций).
  • Инструменты: LangSmith, Ragas, TruLens.

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

Полезные материалы:


- Хочу найти новые возможности применения AI в работе

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

1. AI Тимлид для управления проектом

  • Возможность: Создать агента, который помогает в управлении задачами и командой.
  • Как это работает:
    • Анализ задач: Агент читает новые задачи в Jira, проверяет их на полноту описания, предлагает разбить крупные задачи на подзадачи.
    • Распределение задач: На основе истории задач и текущей загрузки, агент может предложить, кому из команды лучше поручить ту или иную задачу.
    • Мониторинг прогресса: Агент следит за активностью в Git, комментариями в задачах и может деликатно напомнить, если какая-то задача зависла.
  • Инструменты: Интеграция через API с Jira, GitHub. Логика оркестрации на LangGraph.

2. AI Архитектор для проектирования систем

  • Возможность: Использовать AI для анализа и принятия архитектурных решений.
  • Как это работает:
    • Анализ кодовой базы: Агент строит граф зависимостей вашего приложения и помогает найти узкие места, циклические зависимости или устаревший код, который можно отрефакторить.
    • Выбор технологий: Вы описываете новую фичу, а агент предлагает несколько вариантов стека технологий для ее реализации, сравнивая их по стоимости, производительности и сложности поддержки.
  • Инструменты: RAG по кодовой базе + промпты для анализа и сравнения.

3. AI Тестировщик безопасности (AI Red Teaming)

  • Возможность: Использовать агентов для поиска уязвимостей в вашем коде.
  • Как это работает:
    • Вы создаете агента, цель которого — взломать ваше приложение. Он ищет распространенные уязвимости (SQL- инъекции, XSS), анализирует код на предмет утечки секретов, проверяет конфигурацию Docker-файлов.
  • Инструменты: Специализированные модели, обученные на коде с уязвимостями, плюс инструменты статического анализа, которые агент может запускать.

Что может пойти не так:

  • Конфиденциальность: Для таких задач агенту нужен доступ к чувствительным данным. Крайне важно использовать локальные модели (через Ollama) или решения, которые гарантируют безопасность данных.

Полезные материалы:


- Только задумываемся об этом, проблем пока нет. Вопрос - с чего начать?

Шаг 1: Начните с локальных инструментов

  • Цель: Познакомить команду с возможностями AI в безопасной и бесплатной среде.
  • Действия:
    1. Установите Ollama: Позволяет запускать мощные open-source модели локально на ваших компьютерах.
    2. Поставьте Aider: Это консольный AI-ассистент для парного программирования. Он работает с локальными файлами и Git.
    3. Задача для команды: Каждый член команды должен с помощью Aider и локальной модели (например, Llama 3) решить одну небольшую задачу (багфикс, рефакторинг).
  • Результат: Команда поймет базовые принципы взаимодействия с AI и увидит его пользу на практике.

Шаг 2: Создайте первого RAG-агента

  • Цель: Решить реальную проблему — доступ к знаниям.
  • Действия:
    1. Выберите источник знаний: Например, документация по вашему самому сложному проекту.
    2. Используйте LlamaIndex: Этот фреймворк идеально подходит для создания RAG-систем.
    3. Создайте простого чат-бота: Сделайте веб-интерфейс (на Streamlit или Gradio), где любой сотрудник может задать вопрос по документации и получить ответ со ссылками на источники.
  • Результат: Вы получите внутренний инструмент, который приносит реальную пользу и станет основой для будущих, более сложных агентов.

Шаг 3: Автоматизируйте рутину в CI/CD

  • Цель: Встроить AI в существующие процессы, чтобы повысить их эффективность.
  • Действия:
    1. Выберите задачу: Например, автоматическое код-ревью или генерация описания для Pull Request.
    2. Используйте готовые инструменты: Интегрируйте CodeRabbit или подобный сервис в ваш GitHub/GitLab.
    3. Настройте правила: Определите, какие проверки должен делать AI, чтобы он не шумел, а давал только полезные рекомендации.
  • Результат: Вы ускорите процессы разработки и повысите качество кода без радикальных изменений в работе команды.

Ключевой совет: Двигайтесь итерационно. Не пытайтесь сразу построить суперагента, который делает все. Начните с малого, покажите пользу и постепенно усложняйте.

Полезные материалы:


- Просто хочу посмотреть как это работает

Отлично, давайте посмотрим под капот простого AI-агента. Представьте, что вы попросили его: Сколько файлов .py в текущей директории?.

Вот что происходит по шагам.

Шаг 1: Промпт и выбор инструмента

  • Вы (пользователь): Сколько файлов .py в текущей директории?
  • Системный промпт агента: Ты — AI-ассистент. У тебя есть инструмент run_shell_command(command). Твоя цель — ответить на вопрос пользователя.
  • LLM (модель): Ага, чтобы посчитать файлы, мне нужно воспользоваться терминалом. Команда ls -l | grep .py | wc -l подойдет.

Шаг 2: Действие (Act)

  • Агент: Вызывает инструмент run_shell_command с аргументом ls -l | grep .py | wc -l.
  • Окружение (Environment): Ваш компьютер выполняет эту команду.
  • Результат выполнения: Команда возвращает строку, например, 5.

Шаг 3: Наблюдение и генерация ответа (Observation)

  • Агент: Получает результат 5.
  • LLM: Я получил результат '5'. Теперь мне нужно сформулировать ответ для пользователя.
  • Агент: Генерирует финальный ответ.

Шаг 4: Ответ пользователю

  • Вы (пользователь): Получаете ответ: В текущей директории 5 файлов .py.

Этот цикл — Reason -> Act -> Observe — называется ReAct и является основой для большинства современных AI-агентов.

Как попробовать самому за 15 минут:

  1. Установите Python и библиотеку LangChain: pip install langchain langchain_openai
  2. Получите API-ключ от OpenAI.
  3. Запустите этот код:
    from langchain.agents import AgentExecutor, create_react_agent
    from langchain_community.tools import ShellTool
    from langchain_openai import OpenAI
    from langchain import hub
    
    # Получаем готовый промпт для ReAct агента
    prompt = hub.pull(hwchase17/react)
    llm = OpenAI(temperature=0)
    tools = [ShellTool()]
    
    # Создаем агента
    agent = create_react_agent(llm, tools, prompt)
    agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
    
    # Запускаем!
    agent_executor.invoke({input: How many .py files are in the current directory?})
    

Когда вы запустите этот код, вы увидите в консоли весь процесс мышления агента.

Полезные материалы:


- Хочу использовать инструмент лучше

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

Уровень 1: Мастерство Промптинга

  • Проблема: Агент неправильно понимает задачу или выполняет ее неоптимально.
  • Решение: Улучшите промпт.
    • Добавьте контекст: Не исправь баг, а исправь баг в функции X в файле Y. Ожидаемое поведение такое-то. Вот лог ошибки.
    • Дайте примеры (Few-shot prompting): Вот пример хорошо оформленного коммита. Сделай так же.
    • Определите роль и ограничения: Ты — старший разработчик. Твой ответ должен быть кодом на Python. Не используй внешние библиотеки.

Уровень 2: Мастерство Инструментов (Tools)

  • Проблема: Агент не может выполнить задачу, потому что у него нет доступа к нужной информации или системе.
  • Решение: Дайте ему правильные инструменты.
    • Создайте кастомные инструменты: Вместо того чтобы давать агенту общий доступ к shell, создайте инструмент get_user_by_id(user_id), который ходит в вашу базу данных. Это безопаснее и надежнее.
    • Описывайте инструменты правильно: Название и описание инструмента — это промпт для агента. Они должны быть максимально четкими. Инструмент для получения данных о пользователе по его ID лучше, чем user_db.

Уровень 3: Мастерство Оркестрации

  • Проблема: Одна задача слишком сложна для одного агента.
  • Решение: Разбейте ее на подзадачи и используйте несколько агентов.
    • Используйте фреймворки для оркестрации: CrewAI позволяет создать команду агентов с разными ролями. Один планирует, второй пишет код, третий тестирует.
    • Используйте LangGraph для сложных сценариев: Если вам нужна нелинейная логика (например, если тесты провалились, вернуть задачу разработчику, а если прошли — передать документатору), LangGraph — ваш инструмент.

Ключевая мысль: Перестаньте быть просто пользователем инструмента и станьте его архитектором. Думайте о том, как вы можете расширить его возможности и встроить в свой рабочий процесс.

Полезные материалы:


- Как ИИ вообще работает?

Давайте разберем на простой аналогии. Представьте, что Большая Языковая Модель (LLM), как GPT или Llama — это невероятно эрудированный, но очень буквальный стажер, которого только что наняли.

1. Мозг стажера: Большая Языковая Модель (LLM)

  • Что это такое: Это нейронная сеть (архитектура Трансформер), которую обучили на огромном количестве текстов из интернета.
  • Чему он научился: Он не понял текст в человеческом смысле. Он научился предсказывать, какое слово с наибольшей вероятностью должно идти следующим в последовательности. Когда вы задаете вопрос Столица Франции?, он продолжает эту фразу наиболее вероятным словом — Париж.
  • Ключевые параметры:
    • Температура (Temperature): Насколько творческим будет ответ. При температуре 0 он всегда будет выбирать самое вероятное следующее слово. При температуре 1 он может выбирать и менее вероятные варианты, что делает ответы более разнообразными, но иногда и более бредовыми.
    • Контекстное окно (Context Window): Аналог краткосрочной памяти. Это максимальное количество слов (токенов), которое модель может держать в уме одновременно.

2. Как LLM становится Агентом

  • Сам по себе LLM — это просто говорящая голова. Он не может действовать. Чтобы он стал агентом, мы даем ему инструменты и цикл управления.
  • Инструменты: Это функции, которые агент может вызывать (прочитать файл, запустить команду в терминале, обратиться к API).
  • Цикл управления (ReAct): Это менеджер, который показывает LLM результат его действий и спрашивает: Что делаем дальше?.
    1. Менеджер дает LLM задачу.
    2. LLM говорит: Думаю, надо использовать инструмент X.
    3. Менеджер запускает инструмент X и показывает LLM результат.
    4. LLM смотрит на результат и говорит: Окей, теперь надо использовать инструмент Y.
    5. ... и так до тех пор, пока задача не будет решена.

Итог: AI-агент — это не какая-то единая магия. Это комбинация из:

  1. Мощного языкового мозга (LLM), который умеет рассуждать и планировать.
  2. Набора инструментов, которые дают ему доступ к внешнему миру.
  3. Программы-оркестратора (фреймворка типа LangChain), которая управляет этим процессом.

Полезные материалы:


- Aвтоматизация рутины

Автоматизация рутины — это одна из самых сильных сторон AI-агентов. Ключ к успеху здесь — найти правильные задачи и использовать правильные инструменты.

Какие задачи подходят для автоматизации? Идеальная задача для агента:

  • Повторяемая: Вы делаете ее снова и снова.
  • Четко определенная: У нее есть понятные шаги и критерии успеха.
  • Требует работы с текстом/кодом/API: То, что хорошо умеют делать LLM.

Примеры рутинных задач и их решения:

  1. Задача: Генерация отчета о проделанной работе.

    • Рутина: Каждый вечер пятницы нужно собрать все коммиты, задачи в Jira и написать краткий отчет.
    • Решение: Создать агента в CrewAI.
      • Агент 1: Git-аналитик. Получает доступ к репозиторию, собирает все коммиты за неделю.
      • Агент 2: Jira-аналитик. Через API Jira собирает все закрытые и обновленные задачи.
      • Агент 3: Писатель. Получает данные от первых двух, классифицирует их и пишет отчет по заданному шаблону.
    • Запуск: Один раз настроили, потом запускаете одной командой.
  2. Задача: Онбординг нового разработчика.

    • Рутина: Выдать доступы, отправить ссылки на документацию, создать учетные записи.
    • Решение: Использовать платформу для автоматизации (типа Zapier или Make) с интеграцией AI.
      • Триггер: Новый сотрудник добавлен в HR-систему.
      • Действия:
        1. AI-модуль генерирует персональное приветственное письмо.
        2. Через API создаются учетные записи в GitHub, Jira, Slack.
        3. Сотрудник автоматически добавляется в нужные каналы в Slack.
  3. Задача: Проверка и форматирование логов.

    • Рутина: Вручную просматривать логи в поисках ошибок, приводить их к единому формату.
    • Решение: Скрипт на Python с использованием библиотеки instructor.
      • Вы описываете структуру данных (Pydantic модель), в которую нужно преобразовать строку лога.
      • instructor гарантирует, что LLM вернет вам JSON именно в этом формате, что позволяет надежно интегрировать AI в пайплайны обработки данных.

Что может пойти не так:

  • Хрупкость автоматизации: Если изменится формат вывода API или логов, агент может сломаться. Нужно предусматривать обработку ошибок и мониторинг.
  • Стоимость: Частые вызовы мощных моделей могут быть затратными. Для рутинных задач старайтесь использовать более легкие и дешевые модели (например, через Ollama).

Полезные материалы:


- Многозадачность не позволяет во все вопросы погрузиться глубоко. Как лучше использовать AI чтобы закрыть рутину?

Это классическая проблема, и AI-агенты отлично подходят для ее решения. Стратегия здесь — делегировать AI рутинные задачи, которые отнимают время, но не требуют глубокой экспертизы, чтобы высвободить ваше время для самого важного.

Вот конкретный план.

Шаг 1: Аудит вашей рутины (2 часа)

  • Возьмите блокнот и в течение дня записывайте все задачи, которые вы делаете. Особенно те, которые вызывают мысль: Опять этим заниматься....
  • Примеры:
    • Проверить почту и рассортировать письма.
    • Написать ежедневный отчет о статусе.
    • Просмотреть Pull Request на предмет опечаток и стайлгайда.
    • Найти в документации, как работает функция X.

Шаг 2: Выберите быстрые победы

  • Из списка выберите 2-3 задачи, которые проще всего автоматизировать. Хорошие кандидаты — это задачи, связанные с обработкой текста или поиском информации.

Шаг 3: Подберите правильный инструмент

Для задач, связанных с информацией и текстом:

  • Задача: Суммаризировать длинное письмо или документ.
  • Инструмент: Простой скрипт на Python с использованием OpenAI/Anthropic API или локальной модели через Ollama. Промпт: Ты — ассистент. Суммаризируй следующий текст до трех ключевых пунктов.
  • Задача: Найти ответ в корпоративной базе знаний.
  • Инструмент: Постройте простого RAG-агента на LlamaIndex. Один раз скормите ему все документы, и он будет отвечать на вопросы за секунды.

Для задач, связанных с кодом:

  • Задача: Рефакторинг: переименовать переменную во всех файлах.
  • Инструмент: Aider. Вы даете ему команду на естественном языке, и он делает всю грязную работу.
  • Задача: Проверить код в PR на соответствие PEP8.
  • Инструмент: Готовые GitHub Actions (например, CodeRabbit), которые делают это автоматически.

Для задач, связанных с коммуникацией:

  • Задача: Написать черновик письма по шаблону.
  • Инструмент: Используйте встроенные AI-функции в вашем почтовом клиенте или создайте свой шаблон в текстовом редакторе с плейсхолдерами, которые вы быстро заполняете.

Что может пойти не так:

  • Перфекционизм: Не пытайтесь сразу создать идеальную, полностью автономную систему. Начните с полуавтоматизации, где агент делает 90% работы, а вы проверяете и подтверждаете результат. Это уже сэкономит массу времени.

Полезные материалы:


- Применение AI для разработки

Давайте структурируем применение AI в разработке по четырем ключевым направлениям. В 2026 году это уже стандарт индустрии.

1. Написание и рефакторинг кода (Code Generation & Refactoring)

  • Что это: Агенты, которые пишут, изменяют и улучшают код по текстовому описанию.
  • Инструменты:
    • В IDE: GitHub Copilot, JetBrains AI Assistant. Они хороши для автодополнения и написания небольших фрагментов кода.
    • В терминале: Aider, OpenDevin. Это более мощные инструменты, которые могут работать с несколькими файлами, выполнять команды и запускать тесты. Они хорошо подходят для выполнения целых задач.
  • Пример: Aider, добавь в API-метод GET /users возможность фильтрации по полю creation_date.

2. Понимание кодовой базы (Code Understanding)

  • Что это: Агенты, которые помогают ориентироваться в сложных проектах.
  • Инструменты:
    • RAG-агенты: Вы скармливаете агенту всю кодовую базу и документацию, и он отвечает на вопросы в стиле: Где реализована логика работы с кэшем и как ее использовать?. Для этого отлично подходит LlamaIndex.
    • Специализированные инструменты: Sourcegraph Cody умеет строить граф зависимостей кода и находить, где используется та или иная функция.
  • Пример: Cody, покажи все места, где вызывается функция calculate_total_price, и объясни логику ее работы.

3. Тестирование и обеспечение качества (QA & Testing)

  • Что это: Агенты, которые помогают писать тесты и находить баги.
  • Инструменты:
    • Генерация тестов: CodiumAI, Diffblue. Они анализируют ваш код и автоматически генерируют unit-тесты, которые покрывают разные сценарии.
    • Анализ кода в PR: CodeRabbit, GitHub Copilot Workspace. Они автоматически проверяют новый код на наличие ошибок, проблем с производительностью и безопасностью.
  • Пример: CodiumAI, сгенерируй тесты для функции parse_user_input.

4. Автоматизация процессов (DevOps & Automation)

  • Что это: Агенты, которые помогают с задачами CI/CD, мониторинга и управления инфраструктурой.
  • Инструменты:
    • Написание скриптов: Агенты отлично помогают писать скрипты для CI/CD (GitHub Actions, GitLab CI), конфигурации (Terraform, Ansible).
    • Анализ логов: Агент может анализировать логи приложения, находить аномалии и даже предлагать причины ошибок.
  • Пример: Напиши скрипт для GitHub Actions, который собирает Docker-образ и загружает его в Amazon ECR.

Ключевой совет: Начните с интеграции инструментов в IDE (Copilot) и терминале (Aider). Это даст самый быстрый результат. Затем переходите к более сложным системам, таким как RAG-агенты и автоматизация CI/CD.

Полезные материалы:


- Как его внедрить в большой проект, который состоит из нескольких отданных сервисов, чтобы он был в контексте работы и связи этих сервисов.

Это отличный, очень правильный архитектурный вопрос. Заземлить (grounding) AI-агента на контекст сложной микросервисной архитектуры — ключевая задача для его эффективной работы. Вот как это делается в 2026 году.

Стратегия: Создание Федеративного RAG (Federated RAG)

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

1. Сбор и индексация контекста по каждому сервису Для каждого микросервиса создается свой, изолированный набор знаний:

  • Кодовая база: Индексируется код самого сервиса. Важно использовать парсеры, которые понимают структуру кода (например, LlamaIndex CodeSplitter).
  • Документация: OpenAPI/Swagger спецификации, README, документы из Confluence.
  • Коммуникационные контракты: Protobuf/gRPC схемы, события Kafka. Это критически важно для понимания взаимодействий.
  • История изменений: Логи коммитов и задачи из Jira.

Каждый этот набор индексируется в свою векторную базу данных или, как минимум, получает уникальный тег/namespace в общей базе.

2. Создание Карты сервисов (Service Map) Это главный компонент. Вы создаете высокоуровневое описание всей вашей системы, которое будет служить путеводителем для AI. Это может быть:

  • Текстовый документ: Markdown-файл, где для каждого сервиса описана его зона ответственности, ключевые API, и с какими другими сервисами он общается.
  • Граф знаний (Knowledge Graph): Более продвинутый вариант. Сервисы — это узлы графа, а их взаимодействия (синхронные вызовы, события) — это ребра. Технологии: Neo4j.

3. Архитектура агента-оркестратора Вы создаете агента, который работает по принципу Router или Query Planner.

  • Шаг 1: Маршрутизация (Routing). Когда поступает вопрос (например, Как происходит процесс оплаты?), агент сначала обращается к Карте сервисов, чтобы понять, какие сервисы вовлечены в этот процесс (например, payment-service, order-service, notification-service).
  • Шаг 2: Декомпозиция и выполнение. Агент разбивает вопрос на под-вопросы к каждому релевантному сервису. Он последовательно или параллельно запрашивает специализированные RAG-источники каждого сервиса.
  • Шаг 3: Синтез. Агент собирает ответы от всех источников и формирует единый, связный ответ для пользователя.

Инструменты для реализации:

  • Оркестрация: LangGraph — идеальный инструмент для построения таких сложных, управляемых графом агентов.
  • Индексация: LlamaIndex предлагает продвинутые инструменты для индексации кода и работы с разнородными источниками данных.
  • Векторные БД: Pinecone, Weaviate (поддерживают неймспейсы для изоляции данных).

Что может пойти не так:

  • Устаревший контекст: Код и архитектура меняются. Нужно настроить CI/CD пайплайны, которые автоматически переиндексируют источники знаний при каждом изменении.

Полезные материалы: