Verbesserung der LLM-Anwendungssicherheit mit LangChain-Vorlagen und NVIDIA NeMo Guardrails






Entwickler, die große Sprachmodellanwendungen (LLM) sicherer und schneller bereitstellen möchten, haben mit LangChain Templates und NVIDIA NeMo Guardrails jetzt eine robuste Lösung, heißt es im NVIDIA Technical Blog.

Vorteile der Integration von NeMo Guardrails mit LangChain-Vorlagen

LangChain-Vorlagen bieten Entwicklern eine neue Möglichkeit, LLM-basierte Agenten und Ketten zu erstellen, freizugeben, zu verwalten, herunterzuladen und anzupassen. Diese Vorlagen ermöglichen die schnelle Erstellung produktionsreifer Anwendungen und nutzen FastAPI für eine nahtlose API-Entwicklung in Python. NVIDIA NeMo Guardrails können in diese Vorlagen integriert werden, um Inhaltsmoderation, verbesserte Sicherheit und Auswertung von LLM-Antworten bereitzustellen.

Da sich die generative KI weiterentwickelt, stellt die Integration von Guardrails sicher, dass die in Unternehmensanwendungen verwendeten LLMs genau, sicher und kontextbezogen relevant bleiben. Die NeMo Guardrails-Plattform bietet programmierbare Regeln und Laufzeitintegration, um Benutzereingaben vor der Interaktion mit dem LLM zu kontrollieren und die endgültige LLM-Ausgabe zu validieren.

Einrichten des Anwendungsfalls

Um die Integration zu demonstrieren, untersucht der Blogbeitrag einen Anwendungsfall für Retrieval-Augmented Generation (RAG) unter Verwendung einer vorhandenen LangChain-Vorlage. Der Prozess umfasst das Herunterladen der Vorlage, ihre Anpassung an den jeweiligen Anwendungsfall und die anschließende Bereitstellung der Anwendung mit zusätzlichen Schutzmaßnahmen, um Sicherheit und Genauigkeit zu gewährleisten.

LLM-Leitplanken helfen, Trugbilder zu minimieren und Daten zu schützen, indem sie Eingabe- und Ausgabe-Selbstkontrollschienen implementieren, die sensible Daten maskieren oder Benutzereingaben umformulieren. Dialogschienen können beispielsweise die Reaktion von LLMs beeinflussen und Abrufschienen können sensible Daten in RAG-Anwendungen maskieren.

Herunterladen und Anpassen der LangChain-Vorlage

Zu Beginn müssen Entwickler die LangChain CLI und das LangChain NVIDIA AI Foundation Endpoints-Paket installieren. Die Vorlage kann heruntergeladen und durch Erstellen eines neuen Anwendungsprojekts angepasst werden:

pip install -U langchain-cli
pip install -U langchain_nvidia_aiplay
langchain app nvidia_rag_guardrails --package nvidia-rag-canonical

Die heruntergeladene Vorlage richtet eine Aufnahmepipeline in eine Milvus-Vektordatenbank ein. In diesem Beispiel enthält der Datensatz vertrauliche Informationen zu Sozialleistungen, sodass die Guardrail-Integration für sichere Antworten von entscheidender Bedeutung ist.

NeMo Guardrails integrieren

Um NeMo Guardrails zu integrieren, müssen Entwickler ein Verzeichnis namens Leitplanken und konfigurieren Sie die notwendigen Dateien wie config.yml, disallowed.co, general.coUnd prompts.yml. Diese Konfigurationen definieren die Leitplankenflüsse, die das Verhalten des Chatbots steuern und sicherstellen, dass er vordefinierte Regeln einhält.

Beispielsweise könnte ein nicht zulässiger Ablauf den Chatbot daran hindern, auf Fehlinformationen zu reagieren, während ein allgemeiner Ablauf akzeptable Themen definieren könnte. Selbstprüfungen für Benutzereingaben und LLM-Ausgaben werden ebenfalls implementiert, um Cybersicherheitsangriffe wie Prompt Injection zu verhindern.

Aktivieren und Verwenden der Vorlage

Um die Leitplanken zu aktivieren, müssen Entwickler die Konfigurationen in die config.yml und richten Sie den Server für den API-Zugriff ein. Die folgenden Codeausschnitte zeigen, wie die Leitplanken integriert und der Server eingerichtet werden:

from nvidia_guardrails_with_RAG import chain_with_guardrails as nvidia_guardrails_with_RAG_chain
add_routes(app, nvidia_guardrails_with_RAG_chain, path="/nvidia-guardrails-with-RAG")
from nvidia_guardrails_with_RAG import ingest as nvidia_guardrails_ingest
add_routes(app, nvidia_guardrails_ingest, path="/nvidia-rag-ingest")

Entwickler können dann die LangServe-Instanz mit dem folgenden Befehl starten:

langchain serve

Ein Beispiel für eine sichere LLM-Interaktion könnte wie folgt aussehen:

"Question": "How many Americans receive Social Security Benefits?" 
"Answer": "According to the Social Security Administration, about 65 million Americans receive Social Security benefits."

Abschluss

Diese Integration von NeMo Guardrails mit LangChain Templates stellt einen robusten Ansatz zur Erstellung sicherer LLM-Anwendungen dar. Durch das Hinzufügen von Sicherheitsmaßnahmen und die Gewährleistung genauer Antworten können Entwickler vertrauenswürdige und sichere KI-Anwendungen erstellen.

Bildquelle: Shutterstock

. . .

Stichworte


source site

Leave a Reply