636просмотров
52.6%от подписчиков
3 февраля 2026 г.
Score: 700
Чат-бот vs Агент ➡️ Что говорят термины?
- Чат-бот ожидает ввод пользователя и выдаёт реакцию на него, генерируя текст ответа
- Агент - это автономная система. Получив ввод пользователя, он выстраивает последовательность шагов для решения и самостоятельно выполняет их ➡️ Архитектура агента
Чтобы из LLM сделать агента, к ней добавляют 3 модуля:
- Память: БД, где собирается опыт успешных предыдущих задач
- Планировщик: разбивает задачи на последовательность действий
- Инструменты: function calling, интерфейс для выполнения действий ➡️ Как это работает?
Описание доступных функций. В системном промпте модели задаётся описание доступных функций в формате JSON. Модель не видит реализацию функции, ей доступно только её описание (входные параметры, результат выполнения и действия), по которому она понимает семантику функции {
"type": "function",
"name": "get_weather",
"description": "Retrieves current weather for the given location.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "City and country e.g. Bogotá, Colombia"
},
"units": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "Units the temperature will be returned in."
}
},надо
"required": ["location", "units"],
"additionalProperties": false,
"strict": true
}
} Генерация вызова. Когда модели приходит запрос пользователя, она анализирует, содержится ли в системном промпте инструмент для решения задачи. Если да, то возвращает структура, например Q: Какая погода в Париже?
Response:
{
"function": {
"name": "get_weather",
"arguments": "{\"city\": \"Paris\"}"
}
} Выполнение вызова. После генерации описания вызова инструмента LLM прекращает генерацию токенов, и управление передаётся модулю исполнения. По сгенерированному имени инструмента скрипт соотносит, что именно нужно исполнить и с какими аргументами. Результаты выполнения инструмента не показываются пользователю. Они возвращаются модели. А в историю переписки добавляется новое сообщение с ролью tool о результате выполнения функции { "role": "tool", "tool_call_id": "call_abc123", "name": "get_weather", "content": "{\\"temperature\\": \\"25\\", \\"unit\\": \\"C\\", \\"description\\": \\"Sunny\\"}"
} Генерация ответа. Перед финальным ответом LLM видит что-то подобное (пример с запросом погоды в Париже) System: Ты полезный помощник... (описание инструментов)
User: Какая погода в Париже?
Assistant: (call tool: get_weather(city="Paris"))
Tool: {"temperature": 22, "condition": "sunny"} Модель читает историю, переключается в режим генерации текста и выдаёт ответ