ANP: протокол с открытым исходным кодом для безопасной и эффективной коммуникации между интеллектуальными агентами

Общее введение

AgentNetworkProtocol (сокращенно ANP) - это проект протокола с открытым исходным кодом, размещенный на GitHub и направленный на обеспечение безопасных и эффективных коммуникационных решений для интеллектуальных агентов (AI Agents). Он решает проблемы взаимосвязи, локализованных интерфейсов и эффективного взаимодействия агентских сетей с помощью трехслойной архитектуры - уровня идентификации и шифрованной связи, уровня мета-протокола и уровня прикладного протокола. ANP обеспечивает децентрализованную аутентификацию на основе стандарта W3C DID, поддерживает сквозную шифрованную связь и обеспечивает автономные переговоры между агентами с помощью мета-протоколов, с целью создания сети, поддерживающей миллиарды интеллектуальных агентов. Цель - создать открытую сеть взаимодействия, поддерживающую миллиарды интеллектуальных агентов. Проект, инициированный Гаовеем Чангом под лицензией MIT, развивает разработку и реализацию протокола и в будущем планирует стать международным стандартом.

ANP:实现智能代理间安全高效通信的开源协议

 

Список функций

  • Децентрализованная идентичность: Основан на спецификации W3C DID и поддерживает кросс-платформенную аутентификацию через прокси, не полагаясь на централизованную систему.
  • Сплошные зашифрованные коммуникации: Протокол ECDHE используется для обеспечения того, чтобы содержимое сообщения расшифровывалось только обеими сторонами и не было видно промежуточным узлам.
  • Переговоры по долларовым соглашениямСамоорганизация и динамическая адаптация агентов поддержки через согласование коммуникационных протоколов на естественном языке.
  • Описание возможностей агента: Определение функций агента и поддерживаемых протоколов на основе стандартов Semantic Web для облегчения обмена данными.
  • Механизм обнаружения агентов: Предоставляет протоколы, помогающие агентам находить и соединяться с другими агентами.
  • Поддержка открытых источников: Реализация функциональности протокола через AgentConnect для интеграции и тестирования разработчиками.

 

Использование помощи

Как установить и использовать

AgentNetworkProtocol (ANP) - это проект протокола с открытым исходным кодом, доступный в основном в виде документации и кода, самостоятельных приложений пока не выпущено. Ниже приводится подробное руководство по его использованию:

1. доступ к ресурсам проекта

  • Доступ к репозиториям GitHub: Введите в браузереhttps://github.com/agent-network-protocol/AgentNetworkProtocolчтобы перейти на главную страницу проекта.
  • Клонирование кода: Разработчики могут получить его через команду Git:
git clone https://github.com/agent-network-protocol/AgentNetworkProtocol.git

Когда вы закончите, у вас будет вся документация и код.

  • Прочитать документ: Просмотрите файл README.md без установки или обратитесь к техническому документу (01-AgentNetworkProtocol Technical White Paper.md).

2. Изучите реализацию AgentConnect

Реализация ANP с открытым исходным кодом находится по адресуhttps://github.com/agent-network-protocol/AgentConnect::

  • Клонировать AgentConnect::
git clone https://github.com/agent-network-protocol/AgentConnect.git
  • Подготовка к защите окружающей среды: Установите необходимую среду выполнения (например, Node.js или Python, зависимости будут уточнены в документации). Рекомендуется ознакомиться с файлом README программы AgentConnect.
  • пример работы: Перейдите в каталог и запустите код в соответствии с документацией. Пример:
node example.js

Это запустит простой экземпляр прокси-коммуникации.

3. Работа основных функций

Ниже приводится подробное описание основных функций ANP, при условии, что у вас уже готова среда разработки:

(1) Настройка децентрализованной аутентификации
  • Сгенерировать DID: Основано наdid:wbaметод генерации децентрализованных идентификаторов:
  • Использование библиотек DID (таких какdid-resolver) для создания уникального идентификатора.
  • Пример (псевдокод):
    const did = await generateDID('wba');
    console.log("DID:", did);
    
  • Загрузка файла DID: Загрузите созданный документ DID на тестовый сервер:
  • Путь запроса:https://agent-network-protocol.com/wba/user/<16位随机ID>/did.json
  • Пример запроса PUT:
    PUT /wba/user/2i3dg4dtf908cde0/did.json HTTP/1.1
    Host: agent-network-protocol.com
    Content-Type: application/json
    {<DID_document_json>}
    
  • В случае успеха DID будетdid:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0.
  • удостовериться в личности кого-л.: Проверяется через тестовый интерфейс:
  • Запрос:https://agent-network-protocol.com/wba/test
  • Носите с собой подпись:
    GET /wba/test HTTP/1.1
    Host: agent-network-protocol.com
    Authorization: DID did:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0 Nonce <abc123> Timestamp <2025-03-10T12:00:00Z> VerificationMethod <key-1> Signature <base64url签名>
    
  • Возвращает токен, который будет использоваться при последующих запросах.
(2) Обеспечение сквозной шифрованной связи
  • ключевые переговоры: Основан на парах открытых и закрытых ключей DID с использованием протокола ECDHE:
  • Агент A генерирует пару ключей и отправляет открытый ключ агенту B.
  • Агент B отвечает открытым ключом, и обе стороны вычисляют общий ключ.
  • Пример (псевдокод):
    const sharedKey = negotiateECDHKey(agentBPublicKey, agentAPrivateKey);
    
  • Отправка зашифрованного сообщения::
  • Зашифруйте сообщение и отправьте его:
    const message = "Hello, Agent B!";
    const encrypted = encrypt(message, sharedKey);
    sendToAgentB(encrypted);
    
  • Агент B расшифровывает с помощью общего ключа.
(3) Переговоры о связи с использованием метапротоколов
  • консультативный процесс: Агент A посылает запрос метапротокола:
  • Пример запроса (описание на естественном языке):
    {
    "request": "需要数据分析服务",
    "protocols": ["JSON-RPC", "REST"],
    "input": "JSON格式数据",
    "output": "分析结果"
    }
    
  • процесс консультаций: Агент B отвечает на поддержанное соглашение и в итоге достигает соглашения.
  • Сгенерировать код: Обе стороны генерируют код обработки протокола и развертывают его, например:
const protocolCode = generateProtocolCode("REST");
deployProtocol(protocolCode);
(4) Описание и обнаружение агента
  • Описание агента: Создайте файл описания в формате JSON-LD:
    {
    "agentId": "did:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0",
    "capabilities": ["data-analysis"],
    "protocols": ["REST"]
    }
    
  • Агент открытия: Запрос по протоколу обнаружения:
    • Запрос:https://agent-network-protocol.com/wba/discovery
    • Возвращает список подходящих агентов.

4. тестирование и разработка

  • Использование тестового интерфейса: Доступhttps://agent-network-protocol.com/wba/demo/generateСгенерируйте пары DID и ключей:
    GET /wba/demo/generate HTTP/1.1
    Host: agent-network-protocol.com
    

    Возвращение:

    {
    "did_document": "<DID文档>",
    "private_key": "<私钥>"
    }
    
  • Представление PR: Основано наCONTRIBUTING.mdВнести код.
  • Контактная поддержка: Почтаchgaowei@gmail.comИли присоединяйтесь к Discord (https://discord.gg/sFjBKTY7sB).

5. предостережения

  • Проект находится на стадии разработки, и некоторые функции (например, служба брокера сообщений) еще не доведены до совершенства.
  • Ограничение тестового сервера: не более 50 файлов, загружаемых с одного IP.
  • Следите за обновлениями на GitHub, чтобы быть в курсе последних событий.

Следуя этим шагам, вы сможете в полной мере ощутить функциональность ANP и принять участие в его развитии.

© заявление об авторских правах

Похожие статьи

Aide:强化VSCode开发体验的AI助手扩展,一键注释、转换、UI生成代码

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...