Allgemeine Einführung
AgentNetworkProtocol (kurz ANP) ist ein Open-Source-Protokollprojekt, das auf GitHub gehostet wird und sich auf die Bereitstellung sicherer und effizienter Kommunikationslösungen für intelligente Agenten (AI-Agenten) konzentriert. Es löst die Probleme der Verbindung, der lokalisierten Schnittstellen und der effizienten Zusammenarbeit von Agentennetzwerken durch eine dreischichtige Architektur - Identitäts- und verschlüsselte Kommunikationsschicht, Meta-Protokollschicht und Anwendungsprotokollschicht.ANP erreicht eine dezentralisierte Authentifizierung basierend auf dem W3C DID-Standard, unterstützt eine verschlüsselte Ende-zu-Ende-Kommunikation und erreicht eine autonome Verhandlung zwischen Agenten durch Meta-Protokolle, mit dem Ziel, ein Netzwerk aufzubauen, das Milliarden von intelligenten Agenten unterstützt. Ziel ist es, ein offenes Kollaborationsnetzwerk aufzubauen, das Milliarden von intelligenten Agenten unterstützt. Das von Gaowei Chang unter der MIT-Lizenz initiierte Projekt treibt die Entwicklung und Implementierung des Protokolls voran und soll in Zukunft zu einem internationalen Standard werden.
Funktionsliste
- Dezentralisierte IdentitätBasierend auf der W3C DID-Spezifikation unterstützt es die plattformübergreifende Proxy-Authentifizierung, ohne sich auf ein zentralisiertes System zu verlassen.
- End-to-End verschlüsselte KommunikationDas ECDHE-Protokoll wird verwendet, um sicherzustellen, dass der Inhalt der Kommunikation nur von beiden Parteien entschlüsselt wird und für Zwischenknoten nicht sichtbar ist.
- Aushandlung von Dollar-Vereinbarungen: Unterstützung der Selbstorganisation und dynamischen Anpassung von Agenten durch natürlichsprachliche Aushandlung von Kommunikationsprotokollen.
- Beschreibung der Fähigkeiten des AgentenDefinition von Agentenfunktionen und unterstützten Protokollen auf der Grundlage von Semantic Web-Standards, um den Datenaustausch zu erleichtern.
- Mechanismus zur Erkennung von AgentenProtokolle, die Agenten helfen, andere Agenten zu finden und sich mit ihnen zu verbinden.
- Open-Source-UnterstützungImplementierung von Protokollfunktionen durch AgentConnect für die Integration und das Testen durch Entwickler.
Hilfe verwenden
Installation und Verwendung
AgentNetworkProtocol (ANP) ist derzeit ein Open-Source-Protokollprojekt, das hauptsächlich in Form von Dokumentation und Code zur Verfügung steht, wobei noch keine eigenständigen Anwendungen veröffentlicht wurden. Im Folgenden finden Sie eine ausführliche Anleitung zu seiner Verwendung:
1. der Zugang zu den Projektressourcen
- Zugriff auf GitHub-Repositories: Geben Sie in Ihrem Browser ein
https://github.com/agent-network-protocol/AgentNetworkProtocol
um zur Projekthomepage zu gelangen. - Klonen von CodeEntwickler können es über den Git-Befehl erhalten:
git clone https://github.com/agent-network-protocol/AgentNetworkProtocol.git
Wenn Sie fertig sind, haben Sie die gesamte Dokumentation und den Code.
- Lesen Sie das DokumentREADME.md: Lesen Sie die README.md ohne Installation, oder lesen Sie das technische Whitepaper (
01-AgentNetworkProtocol Technisches Weißbuch.md
).
2. erkunden Sie AgentConnect-Implementierungen
Die Open-Source-Implementierung von ANP findet sich unterhttps://github.com/agent-network-protocol/AgentConnect
::
- AgentConnect klonen::
git clone https://github.com/agent-network-protocol/AgentConnect.git
- Vorbereitung der UmweltInstallieren Sie die notwendige Laufzeitumgebung (z.B. Node.js oder Python, Abhängigkeiten sind in der Dokumentation zu klären). Es wird empfohlen, die README-Datei von AgentConnect zu lesen.
- laufendes Beispiel: Wechseln Sie in das Verzeichnis und führen Sie den Code wie dokumentiert aus. Beispiel:
node beispiel.js
Damit wird eine einfache Instanz der Proxy-Kommunikation gestartet.
3) Arbeitsablauf der Hauptfunktionen
Nachfolgend finden Sie eine detaillierte Beschreibung der ANP-Kernfunktionen, vorausgesetzt, Sie verfügen über eine fertige Entwicklungsumgebung:
(1) Konfiguration der dezentralisierten Authentifizierung
- DID generieren: Basierend auf
tat:wba
Methode zur Erzeugung dezentraler Identifikatoren: - Mit einer DID-Bibliothek (z. B.
did-resolver
), um einen eindeutigen Bezeichner zu erzeugen. - Beispiel (Pseudocode):
const did = await generateDID('wba'); console.log("DID: "); did); console.log("DID:", did);
- Hochladen einer DID-DateiUpload des generierten DID-Dokuments auf den Testserver:
- Pfad anfordern:
https://agent-network-protocol.com/wba/user//did.json
- Beispiel einer PUT-Anfrage:
PUT /wba/user/2i3dg4dtf908cde0/did.json HTTP/1.1 Rechner: agent-network-protocol.com Inhalt-Typ: application/json {}
- Bei Erfolg ist die DID
did:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0
. - die Identität von jemandem überprüfenValidiert durch eine Testschnittstelle:
- Anfrage:
https://agent-network-protocol.com/wba/test
- Tragen Sie eine Unterschrift bei sich:
GET /wba/test HTTP/1.1 Rechner: agent-network-protocol.com Autorisierung: DID did:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0 Nonce Zeitstempel VerificationMethod Signatur
- Gibt ein Token zurück, das für nachfolgende Anfragen verwendet werden kann.
(2) Ermöglichung einer Ende-zu-Ende-verschlüsselten Kommunikation
- SchlüsselverhandlungBasierend auf DID-Schlüsselpaaren (öffentlich-privat) unter Verwendung des ECDHE-Protokolls:
- Agent A erzeugt ein Schlüsselpaar und sendet den öffentlichen Schlüssel an Agent B.
- Agent B antwortet mit dem öffentlichen Schlüssel, und beide Parteien errechnen den gemeinsamen Schlüssel.
- Beispiel (Pseudocode):
const sharedKey = negotiateECDHKey(agentBPublicKey, agentAPrivateKey);
- Verschlüsselte Nachricht senden::
- Verschlüsseln Sie die Nachricht und senden Sie sie:
const message = "Hallo, Agent B!"; const encrypted = encrypt(Nachricht, sharedKey); sendToAgentB(verschlüsselt).
- Agent B entschlüsselt mit einem gemeinsamen Schlüssel.
(3) Aushandeln von Kommunikation unter Verwendung von Meta-Protokollen
- konsultativer ProzessAgent A sendet eine Meta-Protokoll-Anfrage:
- Beispielanfrage (Beschreibung in natürlicher Sprache):
{ "Anfrage": "Benötige Datenanalysedienste", "Protokolle": ["JSON-RPC", "REST"], "Eingabe": "JSON-Daten", "Ausgabe": "Ergebnis". "output": "Analyseergebnisse" }
- KonsultationsprozessAgent B antwortet auf die unterstützte Vereinbarung und erzielt schließlich eine Einigung.
- Code generierenBeide Parteien generieren Protokollverarbeitungscode und setzen ihn beispielsweise ein:
const protocolCode = generateProtocolCode("REST");
deployProtocol(protocolCode).
(4) Beschreibung und Entdeckung des Agenten
- Beschreibung des MittelsErstellen Sie eine Beschreibungsdatei im JSON-LD-Format:
{ "agentId": "did:wba:agent-network-protocol.com:wba:user:2i3dg4dtf908cde0", "protocols": ["REST"] }
- EntdeckungsagentAbfrage über Discovery-Protokoll:
- Anfrage:
https://agent-network-protocol.com/wba/discovery
- Gibt eine Liste der passenden Bearbeiter zurück.
- Anfrage:
4. die Prüfung und Entwicklung
- Verwendung der Testschnittstelle: Zugang
https://agent-network-protocol.com/wba/demo/generate
Erzeugen Sie DID- und Schlüsselpaare:GET /wba/demo/generate HTTP/1.1 Rechner: agent-network-protocol.com
Rückkehr:
{ "did_document":"", "private_key":"", "private_key". "private_key":"" }
- Einreichung von PR: Basierend auf
BETEILIGUNG.md
Code beisteuern. - Kontakt zum Support: Post
chgaowei@gmail.com
Oder treten Sie Discord bei (https://discord.gg/sFjBKTY7sB
).
5. vorsichtsmaßnahmen
- Das Projekt befindet sich in der Entwicklungsphase, und einige der Funktionen (z. B. der Nachrichtenvermittlungsdienst) sind noch nicht vollständig.
- Testserver-Limit: Maximal 50 hochgeladene Dateien pro IP.
- Verfolgen Sie die GitHub-Updates für die neuesten Fortschritte.
Wenn Sie diese Schritte befolgen, können Sie die Funktionen von ANP in vollem Umfang nutzen und sich an seiner Entwicklung beteiligen.