Как работают ИИ-агенты
Прежде чем глубоко погружаться в ИИ-агентов, давайте сначала ответим на фундаментальный вопрос:Если у нас уже есть LLM, почему нам всё ещё нужны агенты?
Представьте, что у вас есть очень знающий друг — он прочитал огромное количество книг и может ответить почти на любой вопрос, но с 2024 года он больше не соприкасается с новой информацией, у него нет телефона, он не может выйти в интернет, не может заказать вам еду на вынос и не может узнать сегодняшнюю погоду. Вот на что похожа большая языковая модель (LLM) — богата знаниями, нознания ограничены обучающими данными, и она не может самостоятельно получать информацию в реальном времени или выполнять конкретные действия.
аИИ-агент— это как снабдить этого друга: телефоном с доступом в интернет, калькулятором, календарём... чтобы он не только думал, но идействительно доводил дела до конца. Объединяя LLM с инструментами и памятью, ИИ-агент преодолевает это ограничение, достигаяединства мысли и действия。
Три основных компонента ИИ-агента
У типичного ИИ-агента есть три ключевые части, работающие вместе. Продолжим использовать предыдущую аналогию, чтобы понять:
1. Мозг — большая языковая модель (LLM)
- Роль: центр принятия решений и механизм рассуждений агента.
- Функция: Понимает ввод пользователяцельиконтекст, анализирует текущую ситуацию и затем решает, что делать дальше — ответить напрямую или вызвать инструмент? Он отвечает за планирование и декомпозицию сложных задач.
- Аналогия: какгенеральный директор или командиркомпании, отвечающий за стратегическое мышление, планирование задач и отдачу команд. Он знает, что делать, но ему нужны инструменты, чтобы действительно это сделать.
2. Инструменты — исполняемые действия
- Роль: руки и ноги агента, расширение его возможностей.
- Функция: конкретные функции или API, позволяющие агенту взаимодействовать с внешним миром. Например:
search_web(веб-поиск),execute_python_code(выполнение кода),read_file(чтение файлов),send_email(отправка электронных писем) и т. д. - Аналогия: как на столе сотрудникаразличные офисные программы и устройства, такие как Excel, браузеры, телефоны и принтеры. Генеральный директор (мозг) отдаёт команды, а сотрудники (инструменты) их выполняют.
- Ключевое понимание: без инструментов LLM может только говорить; с инструментами агент может действительно действовать.
3. Память — хранение диалогов и опыта
- Роль: записывает процесс работы, обеспечивая непрерывность задач.
- Функция:
- Краткосрочная память: сохраняет историю текущего разговора, позволяя агенту помнить, что было сказано и сделано. Как при общении с другом, вам не нужно представляться заново в каждом предложении.
- Долгосрочная память: может хранить более долговременную информацию (например, предпочтения пользователя, результаты прошлых задач) для использования в будущих задачах. Как будто у вас есть персональный профиль пользователя.
- Аналогия: как у сотрудникарабочие заметки и проектные файлы, позволяющие избегать повторяющейся работы и продолжать каждую задачу на основе предыдущего опыта.

💡 Резюме в одном предложении: мозг думает, инструменты действуют, а память обеспечивает непрерывность; все три незаменимы.
Типы ИИ-агентов
В зависимости от разных целей проектирования и сложности ИИ-агентов можно разделить на несколько типов:
| Тип агента | Характеристики | Типичные применения |
|---|---|---|
| Реактивный агент | Реагирует немедленно на основе текущего восприятия, не поддерживая внутреннее состояние. Как сотрудник службы поддержки, который видит только настоящее и не помнит прошлого. | Простые вопросы и ответы, игровой ИИ |
| Агент, основанный на целях | Планирует действия для достижения конкретных целей и оценивает, достигнуты ли цели. Как сотрудник с KPI, который знает, что делает и к какой цели стремится. | Помощники по задачам, автоматизированные рабочие процессы |
| Агент, основанный на полезности | Используйте "функцию полезности", чтобы оценивать различные возможные действия и выбирать оптимальный план. Как лицо, принимающее решения, которое взвешивает плюсы и минусы и стремится к оптимальному решению. | Оптимизация ресурсов, планирование путей |
| Обучающийся агент | Может учиться на опыте и непрерывно оптимизировать стратегии принятия решений. Чем больше его используют, тем умнее он становится, как сотрудник, который старательно анализирует свою работу. | Рекомендательные системы, персонализированные помощники |
| Мультиагентная система | Несколько агентов сотрудничают и разделяют работу, каждый выполняет свою роль. Как хорошо распределённая команда, где каждый отвечает за свою часть. | Декомпозиция сложных задач, командная работа |
Начинающим достаточно сначала освоить первые два типа; это самые распространённые базовые формы.
Рабочий процесс: цикл ReAct
Поняв, из чего состоит агент, следующий вопрос: как онработает?
AI-агенты обычно следуют парадигме под названиемReAct = Reasoning + Acting, классической парадигме мышления. Как следует из названия, этосначала думай, потом действуй, потом думай, потом действуй... Этот цикл повторяется непрерывно, пока задача не будет выполнена.
Можно представить это как то, как работает аккуратный, ответственный новый сотрудник, когда ему поручают задачу:«Сначала я подумаю, как это сделать → поищу информацию → посмотрю, что нашёл → подумаю о следующем шаге → продолжу действовать...», а не действует безрассудно по прихоти.
Визуализация SVG: блок-схема цикла ReActПройти этот цикл на полном примере
Пользователь даёт Агенту команду:«Помоги мне найти итальянский ресторан в Пекине с рейтингом выше 4.5 и скажи его адрес и фирменное блюдо.»
Теперь шаг за шагом проследим за «мышлением» Агента:
Шаг 1: Размышление/Рассуждение
- Мозг анализирует цель: Мозг Агента (LLM) получает эту задачу и сначала упорядочивает в уме:«Это задача поиска информации, требующая двух типов информации: ① найти ресторан, соответствующий критериям; ② получить адрес и фирменное блюдо. Я пока ничего не знаю, поэтому сначала следует поискать.»
- Сгенерировать инструкцию действия: Мозг решает:«Вызвать
search_webинструмент, с ключевым словом 'итальянские рестораны в Пекине с рейтингом выше 4.5'.»
💡 Примечание: На этом шаге Агент ещё ничего не «сделал»; он только «думает». Здесь и проявляется ценность LLM — способность понимать намерение, разбивать задачи и строить планы.
Шаг 2: Действие
- Вызвать инструмент: Основываясь на решении предыдущего шага, Агент фактически вызывает
search_webинструмент и передаёт ключевое слово. - Выполнение инструмента: Поисковый инструмент выполняет поиск в интернете и возвращает пакет необработанных результатов поиска (заголовки веб-страниц, сниппеты, ссылки и т. д.).
💡 Примечание: Сам инструмент не «думает»; он просто добросовестно выполняет. Мышление — задача мозга, выполнение — задача инструмента — чёткое разделение труда.
Шаг 3: Наблюдать
- Получение обратной связи: Агент получает результаты поиска, возвращённые инструментом, и сохраняет их впамятидля использования в следующем раунде рассуждения.
- Предположим, результаты включают несколько ресторанов: Bottega Yiku (рейтинг 4.7), Da Vittorio, Le Marche и т. д.
Шаг 4: Снова подумать
- Мозг повторно анализирует: Увидев результаты поиска, мозг продолжает рассуждать:«ОК, я нашёл несколько ресторанов-кандидатов. Но пользователю нужны адрес и фирменное блюдо, которых нет в сниппетах поиска. Мне нужно дополнительно запросить подробную информацию о Bottega Yiku.»
- Сгенерировать новую инструкцию:"Вызвать
get_restaurant_detailsинструмент, чтобы запросить подробную информацию о 'Bottega Yiku'.
Шаг 5: Снова действовать → Снова наблюдать (цикл продолжается)
- ЭтотThink → Act → Observeцикл повторяется снова и снова, и каждый раунд приближает Агента на один шаг к цели, пока мозг не решит, что «у меня уже достаточно информации, чтобы ответить пользователю».
Шаг 6: Вывод окончательного ответа (Final Answer)
- Когда мозг подтверждает, что задача выполнена, он консолидирует всю собранную информацию (хранящуюся в памяти) и генерирует структурированный, удобный для человека ответ:
- "Найден ресторан, соответствующий требованиям:Bottega Yiku(рейтинг 4.7). Адрес: № XX, улица Саньлитунь, район Чаоян, Пекин. Фирменные блюда: пицца с чёрным трюфелем, домашний тирамису."
ЭтотДумай → Действуй → Наблюдай → Думай снова...цикл — основной движущий механизм, позволяющий ИИ-агенту автономно выполнять сложные задачи. Он не выдаёт ответ сразу целиком, а, как человек,продвигаясь шаг за шагом, размышляя во время действий.。
Реализация ИИ-агента на Python
С теорией покончено; теперь посмотрим на код. Система ИИ-агента обычно состоит из нескольких основных модулей, работающих вместе. Понимание этой архитектуры помогает понять, как он думает и действует.

Давайте разберём каждый модуль и с помощью простого кода на Python продемонстрируем его функции. Новичкам не нужно вникать в каждую строку кода; главное — понимать,что делает каждый модуль。
1. Модуль восприятия — «Глаза и уши» агента
Модуль восприятия отвечает за получение изокруженияинформации, то есть «какой ввод был получен». Окружение может быть:
- Цифровой мир: фрагмент текста, веб-страница, записи базы данных, данные, возвращаемые API.
- Физический мир(через аппаратное обеспечение): изображения с камеры, аудио с микрофона, данные датчиков.
Для самого распространённого текстового агента восприятие — это «получение одного предложения пользовательского ввода».
Пример
def perceive_from_environment():
"""
Воспринимать информацию из окружающей среды.
В этом примере среда — это текст, введённый пользователем в командной строке.
"""
user_input = input("Пожалуйста, введите вашу инструкцию или вопрос:")
print(f"[Модуль восприятия] Полученная информация: '{user_input}'")
return user_input # Передать воспринятое содержимое следующему модулю (модулю принятия решений)
# Получить воспринятую информацию
current_observation = perceive_from_environment()
2. Модуль принятия решений (мозг) — «Командир» агента
Это ядро агента, обычномодель ИИ (например, большая языковая модель, LLM)управляет им. Она получает информацию из модуля восприятия и отвечает за три вещи:
- Понять: Что означает эта информация? Что хочет пользователь?
- Рассуждение: Что мне делать в текущих обстоятельствах?
- План: Какой инструмент следует вызвать далее (или в следующих нескольких шагах), и какую операцию следует выполнить?
Следующий код использует простейшее "сопоставление ключевых слов", чтобы имитировать процесс принятия решений. В реальном агенте этот шаг выполняет LLM, которая способна обрабатывать гораздо более сложное семантическое понимание.
Пример
def make_decision(observation):
"""
Принимает простые решения на основе перцептивной информации.
Здесь используется сопоставление ключевых слов для имитации; на практике LLM выполняет более сложные рассуждения.
"""
print(f"[Модуль принятия решений] Анализ информации: '{observation}'")
# На основе ключевых слов в пользовательском вводе определите, какой инструмент вызвать
if "Weather" in observation:
decision = "Вызвать инструмент запроса погоды"
elif "Calculate" in observation:
decision = "Вызвать инструмент калькулятора"
elif "End" in observation:
decision = "Выполнить действие завершения"
else:
decision = "Дать общий ответ в разговоре" # Если ни один инструмент не подходит, ответить напрямую в беседе
print(f[Модуль принятия решений] Результат решения: {decision})
return decision # Передать результат решения в модуль действий
# Принимать решения на основе восприятия
current_decision = make_decision(current_observation)
3. Модуль действий — "Исполнитель" агента
Модуль принятия решений выводит "мысли" (что делать), а модуль действий отвечает за превращение мыслей в "реальность" (фактическое выполнение). Он выполняет конкретные операции, влияющие на внешнюю среду. Типичные действия включают:
- Цифровые действия: Выводить ответы на экран, вызывать функцию, делать API-запрос, записывать в файл.
- Физические действия(путём управления оборудованием): управлять движением роботизированного манипулятора, заставлять динамик воспроизводить звук.
Пример
def execute_action(decision):
"""
Выполнить инструкции, данные модулем принятия решений, и вернуть результат выполнения.
Результат выполнения будет сохранён в памяти для использования в следующем раунде рассуждений.
"""
print(f[Модуль действий] Выполняется: {decision})
if decision == "Вызвать инструмент запроса погоды":
# Это можно заменить реальным вызовом API погоды
result = "Пекин: солнечно, 25°C."
elif decision == "Вызвать инструмент калькулятора":
result = "1+1=2"
elif decision == "Выполнить действие завершения":
result = “Задача завершена.”
print(result)
exit() # Завершить всю программу
else:
result = fЯ понял, что вы имеете в виду: '{decision}'
print(f[Модуль действий] Результат действия: {result})
return result # Вернуть результат и перейти к фазе "наблюдения"
# Выполнить решение и получить результат
action_result = execute_action(current_decision)
4. Модуль памяти — "Рабочие заметки" агента
Без памяти Агент при каждом ответе находился бы в состоянии "амнезии" — забывая, что вы сказали ранее, и забывая, что он сам сделал. Модуль памяти решает эту проблему, и он делится на два типа:
- Краткосрочная память / История диалога: Записывает сказанное в текущем разговоре, сохраняя связность Агента на протяжении нескольких ходов. Как при общении с другом, не нужно заново объяснять контекст в каждом предложении.
- Долгосрочная память / База знаний: Проприетарные знания, хранящиеся с помощью таких технологий, как векторные базы данных (например, внутренние документы компании, предпочтения пользователя), используемые для расширения возможностей модели. Новичкам можно временно игнорировать эту часть и сначала освоить только краткосрочную память.
В полном примере ниже мы используем список Python для имитации краткосрочной памяти.
5. Модуль инструментов — «швейцарский армейский нож» агента
Собственные возможности модели ограничены (например, она не знает погоду в реальном времени, не может выполнять сложные вычисления, не может работать с файлами). Модуль инструментов предоставляет агенту набор «внешних навыков», значительно расширяя границы его возможностей. Инструментом может быть функция Python, сторонний API или целая внешняя программа.
Ниже приведён простейший пример инструмента:
Пример
def calculator_tool(expression):
"""
Принимает строку с математическим выражением и возвращает результат вычисления.
Это «инструмент» — он ждёт, когда мозг агента вызовет его по необходимости.
"""
try:
# Примечание: eval() несёт риски безопасности в рабочих средах; здесь он используется только для демонстрации.
result = eval(expression)
return f"Результат вычисления: {expression} = {result}"
except Exception as e:
return f"Ошибка вычисления: {e}"
# Симуляция: после того как мозг принимает решение, вызовите этот инструмент
tool_result = calculator_tool("3 + 5 * 2")
print(tool_result) # Вывод: Результат вычисления: 3 + 5 * 2 = 13
# Примечание: Python выполняет умножение и деление перед сложением и вычитанием, поэтому получается 3 + 10 = 13, а не 8 * 2 = 16
Практика: создаём простого AI-агента для командной строки
Выше мы рассмотрели каждый модуль отдельно. Теперь давайте объединим ихвместе, чтобы создать полноценного мини-агента, способного вести непрерывный диалог и вызывать инструменты.
Перед запуском мысленно пройдитесь по этой структуре:
- Ввод пользователя →Восприятие → Решение(сопоставление ключевых слов) →Действие(вызов инструмента или общение) → вывод результата →Память(сохранённая в истории) → ожидание следующего ввода
Пример
import random
# ==================== Определения инструментов ====================
def get_weather(city):
Инструмент 1: Имитация запроса погоды (на практике можно заменить реальным API погоды)
weather_options = [Ясно, Облачно, Небольшой дождь, Сильный ветер]
temperature = random.randint(15, 35)
return fПогода в {city} — {random.choice(weather_options)}, температура {temperature}°C.
def simple_calculator(a, b, operator):
Инструмент 2: Простой калькулятор
if operator == '+':
return f"{a} + {b} = {a + b}"
elif operator == '-':
return f"{a} - {b} = {a - b}"
else:
return Эта операция пока не поддерживается.
Память (кратковременная)
Используйте список для имитации истории разговора, где каждая запись — строка.
conversation_history = []
# ==================== Главный цикл агента ====================
def run_simple_agent():
print("[Простой ИИ-агент запущен] Введите 'exit', чтобы завершить беседу.")
print(Совет: Вы можете спросить о погоде (например, 'погода в Пекине сегодня') или выполнить вычисления (например, 'вычислить 1+1').\n")
while True:
# ---- Этап восприятия: получение пользовательского ввода ----
user_input = input(Вы:)
conversation_history.append(fПользователь: {user_input})
# Специальная инструкция: exit
if user_input.lower() in [Exit, "exit", "quit"]:
print(Агент: До свидания!)
break
# ---- Фаза принятия решений + действий: выбор инструмента или диалога на основе ввода ----
response = ""
if weather in user_input:
# Попытаться определить название города из ввода, по умолчанию — Пекин.
city = Beijing
for c in [Beijing, Shanghai, Guangzhou, Shenzhen]:
if c in user_input:
city = c
break
Вызвать инструмент погоды
response = get_weather(city)
elif Calculate in user_input or "+" in user_input or "-" in user_input:
# Простое сопоставление с образцом, распознающее несколько фиксированных вычислительных выражений.
if "1+1" in user_input:
response = simple_calculator(1, 1, '+')
elif "10-5" in user_input:
response = simple_calculator(10, 5, '-')
else:
response = Пожалуйста, попробуйте ввести "calculate 1+1" или "calculate 10-5".
else:
# Подходящий инструмент не найден, возвращаемся к обычному разговору.
default_responses = [
Я понимаю, что вы имеете в виду.,
Это интересная тема!,
Мои текущие навыки ограничены, но вы можете попробовать спросить меня о погоде или выполнить простые вычисления.,
"Хорошо, пожалуйста, продолжайте."
]
response = random.choice(default_responses)
# ---- Этап вывода + памяти: вывести ответ и сохранить в историю ----
print(f"Агент:{response}")
conversation_history.append(f"Агент:{response}")
После завершения диалога выведите полную историю диалога (имитируя содержимое кратковременной памяти).
print("\n=== Эта история диалога (содержимое кратковременной памяти) ===)
for line in conversation_history:
print(line)
Запуск агента
if __name__ == "__main__":
run_simple_agent()
Запустите эту программу, и вы увидите:
- Тот, который можетподдерживать цикл многоходового диалога(модуль восприятия постоянно работает).
- На основе ключевых слов вашего ввода (таких как "weather", "calculation")автоматически запускать разные инструменты(модуль действий).
- После завершения диалога вы можете увидеть полнуюисторию диалога(модуль памяти).
💡 Подумайте об этом: Если вы хотите сделать этого Agent мощнее, можно попробовать: ① Добавить больше инструментов (например, проверка обменных курсов, перевод); ② Заменить сопоставление по ключевым словам в модуле принятия решений на реальные вызовы LLM API, и Agent сможет понимать естественный язык!
Итоги и перспективы
Из этой статьи вы должны были усвоить базовые концепции AI Agent:
- Он состоит извосприятия, принятия решений (мозг), действий, памяти, инструментов— интеллектуальная программа, состоящая из таких модулей;
- Он используетцикл ReAct(думать → действовать → наблюдать → переосмысливать) для автономного достижения целей;
- LLM — это его мозг, инструменты — руки и ноги, а память обеспечивает связность.
Запомните суть одной фразой:LLM умеет только «говорить», Agent умеет «делать».
Рекомендуемые дальнейшие шаги в обучении
- Глубоко изучите API больших языковых моделей (LLM): Узнайте, как вызывать API таких моделей, как OpenAI GPT, DeepSeek и Tongyi Qianwen, используя их как настоящий мозг вашего Agent, заменив грубое сопоставление по ключевым словам в наших примерах.
- Изучите фреймворки для разработки Agent: ИсследуйтеLangChain、LlamaIndexилиAutoGenи другие зрелые фреймворки. Они инкапсулируют такие модули, как память, цепочки инструментов и оркестрация задач. Их использование позволяет достичь вдвое лучшего результата при половине усилий и избежать изобретения колеса.
- Подключение к реальным инструментам: Попробуйте подключить своего агента к реальным API, таким как базы данных, почтовые системы или погодные сервисы, чтобы решать практические задачи. Этот шаг даст вам совершенно новое понимание концепции «инструментов».
- Изучите промпт-инжиниринг: То, насколько качественно вы пишете «инструкции» для LLM, напрямую определяет уровень производительности мозга агента. Это ключевой навык, который нельзя игнорировать при разработке эффективных агентов.
Мир ИИ-агентов огромен и полон возможностей: от автоматизированных персональных ассистентов до интеллектуальных решений корпоративного уровня — он становится новой парадигмой взаимодействия человека и компьютера. Мы надеемся, что вы используете эту статью как отправную точку, чтобы начать создавать собственного интеллектуального агента.
Другие расширения