Тихий переворот: зачем агентам собственный DNS?
Представьте: ваш ИИ-агент тратит 40% времени не на размышления, а на поиск подходящего инструмента. Он дергает API, перебирает сотни функций, и все равно ошибается. Знакомо? Еще вчера это было нормой. Сегодня Microsoft, Google и Hugging Face выкатили спецификацию, которая меняет правила игры — Agentic Resource Discovery (ARD).
ARD — это не очередной фреймворк и не библиотека. Это открытый протокол для динамического обнаружения инструментов, которые могут использовать ИИ-агенты. Думайте об этом как о DNS для агентов: вместо того чтобы хардкодить вызовы или перебирать тонны эндпоинтов, агент просто спрашивает у реестра: "Какие инструменты умеют делать X?" — и получает структурированный ответ.
Почему это стало проблемой? Раньше агенты работали с десятком предопределенных функций. Сегодня в экосистеме — тысячи. Лучшие фреймворки для AI-агентов пытаются решать это через промпты и ручные списки, но при росте числа инструментов контекстное окно лопается. ARD выносит поиск инструментов за пределы промпта — в специализированный слой.
ARD решает проблему масштабирования: агент не обязан знать все инструменты заранее. Он запрашивает реестр, получает только релевантные описания и использует их. Эффективность — космическая.
Кто, что и зачем: под капотом ARD
Спецификация ARD описывает три ключевых компонента:
- Реестры ресурсов — федеративные каталоги, в которых инструменты регистрируют свои возможности (семантические теги, входные/выходные схемы, метаданные).
- Клиент обнаружения — работает на стороне агента, отправляет поисковые запросы и получает ранжированные списки подходящих инструментов.
- Агентский гейтвей — промежуточный слой, который кеширует, фильтрует и трансформирует результаты, чтобы снизить нагрузку на контекст.
Протокол использует HTTP/2, gRPC и WebSocket для разных сценариев — от однократного запроса до подписки на обновления. Формат обмена — Protobuf и JSON-LD, что обеспечивает совместимость с существующими схемами данных.
Важный нюанс: ARD не заменяет Microsoft ACS (спецификацию безопасного развертывания). Это разные уровни: ACS отвечает за политики и sandbox, ARD — за обнаружение. Они отлично работают в паре.
MCP vs ARD: не одно и то же
Многие путают ARD с Model Context Protocol (MCP). Разница фундаментальна: MCP описывает, как агент запускает инструмент и обменивается данными — это протокол исполнения. ARD описывает, как агент находит инструмент — это протокол обнаружения.
| Характеристика | MCP | ARD |
|---|---|---|
| Назначение | Исполнение инструментов | Обнаружение инструментов |
| Связь с агентом | P2P | Через реестр |
| Динамика | Статические эндпоинты | Федеративный поиск |
| Масштабирование | Линейное | Экспоненциальное |
На практике агент сначала использует ARD, чтобы получить ссылки на нужные инструменты, а затем — MCP, чтобы их вызвать. Два протокола взаимодополняют друг друга.
От слов к делу: как начать прямо сейчас
Hugging Face уже выложил эталонную реализацию ARD — открытый реестр инструментов, который хостится на HF Spaces. Вы можете запустить его локально за пару команд:
git clone https://github.com/huggingface/ard-registry.git
cd ard-registry
docker compose upПосле запуска реестр будет слушать на порту 8080. Регистрация инструмента — POST-запрос с JSON-телом:
{
"name": "web_search",
"description": "Searches the web for current info",
"capabilities": [
{
"name": "search",
"input_schema": {
"type": "object",
"properties": {
"query": {"type": "string"}
}
},
"output_schema": {
"type": "array",
"items": {"type": "string"}
}
}
],
"tags": ["search", "web", "public"]
}Теперь любой агент, поддерживающий ARD, может выполнить поиск по реестру:
curl -X POST http://localhost:8080/v1/discover \
-H 'Content-Type: application/json' \
-d '{"query": "search the web for latest news", "limit": 5}'Ответ вернет до 5 инструментов, наиболее релевантных запросу, с указанием эндпоинтов и схем. Агент выбирает подходящий и запускает через MCP.
Подводные камни, о которых молчат в пресс-релизах
ARD не идеален. Во-первых, федеративная природа реестров создает проблему доверия: кто гарантирует, что зарегистрированный инструмент не вредоносный? Microsoft предлагает систему верификации через ACS-политики, но это пока не зашито в спецификацию.
Во-вторых, качество поиска сильно зависит от семантического описания инструментов. Если разработчики ленятся нормально заполнять теги и схемы, агент будет получать мусор. Hugging Face внедрил в свою реализацию встроенную валидацию на базе LLM — она проверяет документацию инструмента на полноту, но это бета-функция.
В-третьих, гонка протоколов: Google анонсировал Agent-to-Agent (A2A), который тоже частично перекрывает ARD. Пока неясно, кто станет де-факто стандартом. Но у ARD есть преимущество — он уже работает в продакшене Hugging Face Spaces и поддерживается Microsoft Copilot Studio.
Кому это нужно и когда внедрять
ARD — спасение для тех, кто строит мультиагентные системы с сотнями инструментов. Если у вас десяток функций — хватит и обычного промпта. Но как только число переваливает за 50, ручное описание превращается в ад.
- Разработчикам AI-платформ — ARD позволяет динамически подключать инструменты от сторонних вендоров без ребилда.
- DevOps-инженерам — можно зарегистрировать кусок инфраструктуры (Kubernetes API, мониторинг, CI/CD) как ARD-совместимый инструмент.
- Энтузиастам локальных агентов — полное руководство по Agentic RAG показывает, как такие системы становятся самодостаточными; ARD добавит им возможность находить кастомные инструменты без облачных вызовов.
Мой совет: не ждите стабилизации. Берите текущую реализацию от Hugging Face, ставьте на тестовый реестр и пробуйте. Даже если протокол изменится, принципы динамического обнаружения останутся. Через год ARD может стать такой же базой, как HTTP для веба. А пока — шанс войти на раннем этапе.