Arch ist ein intelligenter verteilter Proxy von Layer 7, der KI -Agenten mit Ihren APIs schützt, beobachtet und personalisiert.
Mit speziell gebauten LLMs konstruiert, übernimmt Arch die kritischen, aber undifferenzierten Aufgaben im Zusammenhang mit dem Umgang und Verarbeitung von Aufforderungen, einschließlich der Erkennung und Ablehnung von Jailbreak-Versuchen und nannte intelligent "Backend" -APIs, um die Anfrage des Benutzers zu erfüllen.
Arch basiert auf (und von den Kernbeiträdern des) Gesands -Proxy mit der Überzeugung:
Eingabeaufforderungen sind nuancierte und undurchsichtige Benutzeranfragen, die dieselben Funktionen erfordern wie herkömmliche HTTP -Anfragen, einschließlich sicherer Handhabung, intelligentes Routing, robuster Beobachtbarkeit und Integration mit Backend (API) -Systemen für die Personalisierung - alle externen Geschäftslogik.*
Kernfunktionen :
Springen Sie zu unseren Dokumenten, um zu erfahren, wie Sie Arch verwenden können, um die Geschwindigkeit, Sicherheit und Personalisierung Ihrer Genai -Apps zu verbessern.
Wichtig
Heute wird die für die Agentic- und Rag-Szenarien entwickelte Funktion LLM (Erzfunktion) kostenlos in der US-Zentralregion gehostet. Um konsistente Latenzen und Durchsatz anzubieten und unsere Ausgaben zu verwalten, ermöglichen wir bald den Zugriff auf die gehostete Version über Entwicklerschlüssel und geben Ihnen die Möglichkeit, diese LLM lokal auszuführen. Weitere Informationen finden Sie in dieser Ausgabe #258
Um mit uns in Kontakt zu treten, schließen Sie sich unserem Discord -Server an. Wir werden das aktiv überwachen und dort Unterstützung bieten.
Folgen Sie diesem Leitfaden, um zu erfahren, wie Sie den Arch schnell einrichten und in Ihre generativen AI -Anwendungen integrieren.
Stellen Sie vor Beginn sicher, dass Sie Folgendes haben:
Docker & Python in Ihrem System installiertAPI Keys für LLM -Anbieter (bei Verwendung externer LLMs)Mit Arch's CLI können Sie das Arch -Gateway effizient verwalten und interagieren. Um die CLI zu installieren, führen Sie einfach den folgenden Befehl aus: TIPP: Wir empfehlen, dass Entwickler eine neue virtuelle Python -Umgebung erstellen, um Abhängigkeiten vor dem Installieren von Arch zu isolieren. Dies stellt sicher, dass ArchGW und seine Abhängigkeiten andere Pakete in Ihrem System nicht beeinträchtigen.
Stellen Sie sicher, dass Sie die folgenden Versorgungsunternehmen installiert haben, bevor Sie weiter fortfahren.
$ python -m venv venv
$ source venv/bin/activate # On Windows, use: venvScriptsactivate
$ pip install archgwArch arbeitet basierend auf einer Konfigurationsdatei, in der Sie LLM -Anbieter, formulierte Ziele, Leitplanken usw. definieren können. Im Folgenden finden Sie eine Beispielkonfiguration, um Ihnen den Start zu erhalten:
version : v0.1
listener :
address : 127.0.0.1
port : 8080 # If you configure port 443, you'll need to update the listener with tls_certificates
message_format : huggingface
# Centralized way to manage LLMs, manage keys, retry logic, failover and limits in a central way
llm_providers :
- name : OpenAI
provider : openai
access_key : $OPENAI_API_KEY
model : gpt-3.5-turbo
default : true
# default system prompt used by all prompt targets
system_prompt : |
You are a network assistant that helps operators with a better understanding of network traffic flow and perform actions on networking operations. No advice on manufacturers or purchasing decisions.
prompt_targets :
- name : device_summary
description : Retrieve network statistics for specific devices within a time range
endpoint :
name : app_server
path : /agent/device_summary
parameters :
- name : device_ids
type : list
description : A list of device identifiers (IDs) to retrieve statistics for.
required : true # device_ids are required to get device statistics
- name : days
type : int
description : The number of days for which to gather device statistics.
default : " 7 "
- name : reboot_devices
description : Reboot a list of devices
endpoint :
name : app_server
path : /agent/device_reboot
parameters :
- name : device_ids
type : list
description : A list of device identifiers (IDs).
required : true
- name : days
type : int
description : A list of device identifiers (IDs)
default : " 7 "
# Arch creates a round-robin load balancing between different endpoints, managed via the cluster subsystem.
endpoints :
app_server :
# value could be ip address or a hostname with port
# this could also be a list of endpoints for load balancing
# for example endpoint: [ ip1:port, ip2:port ]
endpoint : host.docker.internal:18083
# max time to wait for a connection to be established
connect_timeout : 0.005sMachen Sie ausgehende Anrufe über Arch
from openai import OpenAI
# Use the OpenAI client as usual
client = OpenAI (
# No need to set a specific openai.api_key since it's configured in Arch's gateway
api_key = '--' ,
# Set the OpenAI API base URL to the Arch gateway endpoint
base_url = "http://127.0.0.1:12000/v1"
)
response = client . chat . completions . create (
# we select model from arch_config file
model = "--" ,
messages = [{ "role" : "user" , "content" : "What is the capital of France?" }],
)
print ( "OpenAI Response:" , response . choices [ 0 ]. message . content )Arch wurde entwickelt, um die Beobachtbarkeit der Best-In-Klasse durch die Unterstützung offener Standards zu unterstützen. Bitte lesen Sie unsere Dokumente zur Beobachtbarkeit, um weitere Informationen zu Verfolgung, Metriken und Protokollen zu erhalten

Wir würden uns gerne Feedback zu unserer Roadmap freuen und begrüßen Beiträge zum Arch ! Egal, ob Sie Fehler beheben, neue Funktionen hinzufügen, die Dokumentation verbessern oder Tutorials erstellen, Ihre Hilfe wird sehr geschätzt. Bitte besuchen Sie unseren Beitragsleitfaden für weitere Informationen