Ten projekt demonstruje aplikację webową, która wykorzystuje sprawdzanie bezpieczeństwa treści przed przekazaniem zapytań użytkownika do usługi kalkulatora za pomocą Model Context Protocol (MCP).
- Wprowadzenie danych przez użytkownika: Użytkownik wpisuje zapytanie obliczeniowe w interfejsie webowym
- Sprawdzanie bezpieczeństwa treści (wejście): Zapytanie jest analizowane przez Azure Content Safety API
- Decyzja dotycząca bezpieczeństwa (wejście):
- Jeśli treść jest bezpieczna (poziom zagrożenia < 2 we wszystkich kategoriach), jest przekazywana do kalkulatora
- Jeśli treść zostanie oznaczona jako potencjalnie szkodliwa, proces zostaje zatrzymany i zwracane jest ostrzeżenie
- Integracja z kalkulatorem: Bezpieczna treść jest przetwarzana przez LangChain4j, który komunikuje się z serwerem kalkulatora MCP
- Sprawdzanie bezpieczeństwa treści (wyjście): Odpowiedź bota jest analizowana przez Azure Content Safety API
- Decyzja dotycząca bezpieczeństwa (wyjście):
- Jeśli odpowiedź bota jest bezpieczna, jest wyświetlana użytkownikowi
- Jeśli odpowiedź bota zostanie oznaczona jako potencjalnie szkodliwa, zostaje zastąpiona ostrzeżeniem
- Odpowiedź: Wyniki (jeśli bezpieczne) są wyświetlane użytkownikowi wraz z oboma analizami bezpieczeństwa
Ten projekt pokazuje, jak używać Model Context Protocol (MCP) do wywoływania usług kalkulatora MCP z LangChain4j. Implementacja korzysta z lokalnego serwera MCP działającego na porcie 8080, który udostępnia operacje kalkulatora.
Przed użyciem funkcji bezpieczeństwa treści należy utworzyć zasób usługi Azure Content Safety:
- Zaloguj się do Azure Portal
- Kliknij „Create a resource” i wyszukaj „Content Safety”
- Wybierz „Content Safety” i kliknij „Create”
- Wprowadź unikalną nazwę zasobu
- Wybierz subskrypcję i grupę zasobów (lub utwórz nową)
- Wybierz obsługiwany region (sprawdź Region availability dla szczegółów)
- Wybierz odpowiedni plan cenowy
- Kliknij „Create”, aby wdrożyć zasób
- Po zakończeniu wdrożenia kliknij „Go to resource”
- W lewym panelu, w sekcji „Resource Management”, wybierz „Keys and Endpoint”
- Skopiuj jeden z kluczy oraz adres URL punktu końcowego do dalszej konfiguracji
Ustaw zmienną środowiskową GITHUB_TOKEN do uwierzytelniania modeli GitHub:
export GITHUB_TOKEN=<your_github_token>Dla funkcji bezpieczeństwa treści ustaw:
export CONTENT_SAFETY_ENDPOINT=<your_content_safety_endpoint>
export CONTENT_SAFETY_KEY=<your_content_safety_key>Te zmienne środowiskowe są wykorzystywane przez aplikację do uwierzytelniania w usłudze Azure Content Safety. Jeśli zmienne nie zostaną ustawione, aplikacja użyje wartości zastępczych do celów demonstracyjnych, ale funkcje bezpieczeństwa treści nie będą działać poprawnie.
Przed uruchomieniem klienta należy wystartować serwer kalkulatora MCP w trybie SSE na localhost:8080.
Projekt demonstruje integrację Model Context Protocol (MCP) z LangChain4j do wywoływania usług kalkulatora. Kluczowe cechy to:
- Wykorzystanie MCP do połączenia z usługą kalkulatora realizującą podstawowe operacje matematyczne
- Podwójne sprawdzanie bezpieczeństwa treści zarówno na zapytaniach użytkownika, jak i odpowiedziach bota
- Integracja z modelem gpt-4.1-nano GitHub za pomocą LangChain4j
- Wykorzystanie Server-Sent Events (SSE) jako transportu MCP
Projekt zawiera kompleksowe funkcje bezpieczeństwa treści, które zapewniają, że zarówno dane wejściowe użytkownika, jak i odpowiedzi systemu są wolne od szkodliwych treści:
-
Sprawdzanie wejścia: Wszystkie zapytania użytkownika są analizowane pod kątem kategorii szkodliwych treści, takich jak mowa nienawiści, przemoc, samookaleczenia i treści seksualne, przed dalszym przetwarzaniem.
-
Sprawdzanie wyjścia: Nawet przy użyciu potencjalnie nieocenzurowanych modeli, system sprawdza wszystkie generowane odpowiedzi tymi samymi filtrami bezpieczeństwa treści przed ich wyświetleniem użytkownikowi.
To podejście z podwójną warstwą zabezpieczeń gwarantuje, że system pozostaje bezpieczny niezależnie od używanego modelu AI, chroniąc użytkowników zarówno przed szkodliwymi danymi wejściowymi, jak i potencjalnie problematycznymi odpowiedziami generowanymi przez AI.
Aplikacja zawiera przyjazny dla użytkownika interfejs webowy, który umożliwia interakcję z systemem Content Safety Calculator:
- Prosty, intuicyjny formularz do wpisywania zapytań obliczeniowych
- Podwójna walidacja bezpieczeństwa treści (wejście i wyjście)
- Informacje zwrotne w czasie rzeczywistym o bezpieczeństwie zapytania i odpowiedzi
- Kolorowe wskaźniki bezpieczeństwa dla łatwej interpretacji
- Czysty, responsywny design działający na różnych urządzeniach
- Przykładowe bezpieczne zapytania pomagające użytkownikom
-
Uruchom aplikację:
mvn spring-boot:run
-
Otwórz przeglądarkę i przejdź pod adres
http://localhost:8087 -
Wprowadź zapytanie obliczeniowe w udostępnionym polu tekstowym (np. „Oblicz sumę 24.5 i 17.3”)
-
Kliknij „Submit”, aby przetworzyć zapytanie
-
Zobacz wyniki, które będą zawierać:
- Analizę bezpieczeństwa Twojego zapytania
- Obliczony wynik (jeśli zapytanie było bezpieczne)
- Analizę bezpieczeństwa odpowiedzi bota
- Ewentualne ostrzeżenia dotyczące bezpieczeństwa, jeśli wejście lub wyjście zostały oznaczone
Klient webowy automatycznie obsługuje oba procesy weryfikacji bezpieczeństwa treści, zapewniając, że wszystkie interakcje są bezpieczne i odpowiednie, niezależnie od używanego modelu AI.
Zastrzeżenie:
Niniejszy dokument został przetłumaczony przy użyciu automatycznej usługi tłumaczeniowej AI Co-op Translator. Mimo że dokładamy starań, aby tłumaczenie było jak najbardziej precyzyjne, prosimy mieć na uwadze, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w języku źródłowym należy traktować jako źródło wiążące. W przypadku informacji o kluczowym znaczeniu zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
