Este projeto demonstra uma aplicação web que utiliza verificação de segurança de conteúdo antes de enviar os prompts do usuário para um serviço de calculadora via Model Context Protocol (MCP).
- Entrada do Usuário: O usuário insere um prompt de cálculo na interface web
- Triagem de Segurança de Conteúdo (Entrada): O prompt é analisado pela Azure Content Safety API
- Decisão de Segurança (Entrada):
- Se o conteúdo for seguro (gravidade < 2 em todas as categorias), ele segue para a calculadora
- Se o conteúdo for sinalizado como potencialmente prejudicial, o processo é interrompido e um aviso é retornado
- Integração com a Calculadora: Conteúdo seguro é processado pelo LangChain4j, que se comunica com o servidor de calculadora MCP
- Triagem de Segurança de Conteúdo (Saída): A resposta do bot é analisada pela Azure Content Safety API
- Decisão de Segurança (Saída):
- Se a resposta do bot for segura, ela é exibida ao usuário
- Se a resposta do bot for sinalizada como potencialmente prejudicial, é substituída por um aviso
- Resposta: Resultados (se seguros) são exibidos ao usuário junto com ambas as análises de segurança
Este projeto demonstra como usar o Model Context Protocol (MCP) para chamar serviços de calculadora MCP a partir do LangChain4j. A implementação utiliza um servidor MCP local rodando na porta 8080 para fornecer operações de calculadora.
Antes de usar os recursos de segurança de conteúdo, você precisa criar um recurso do serviço Azure Content Safety:
- Faça login no Azure Portal
- Clique em "Create a resource" e pesquise por "Content Safety"
- Selecione "Content Safety" e clique em "Create"
- Insira um nome único para seu recurso
- Selecione sua assinatura e grupo de recursos (ou crie um novo)
- Escolha uma região suportada (confira Disponibilidade por Região para detalhes)
- Selecione um nível de preço adequado
- Clique em "Create" para implantar o recurso
- Após a implantação, clique em "Go to resource"
- No painel esquerdo, em "Resource Management", selecione "Keys and Endpoint"
- Copie uma das chaves e a URL do endpoint para uso na próxima etapa
Defina a variável de ambiente GITHUB_TOKEN para autenticação dos modelos GitHub:
export GITHUB_TOKEN=<your_github_token>Para os recursos de segurança de conteúdo, defina:
export CONTENT_SAFETY_ENDPOINT=<your_content_safety_endpoint>
export CONTENT_SAFETY_KEY=<your_content_safety_key>Essas variáveis de ambiente são usadas pela aplicação para autenticar com o serviço Azure Content Safety. Se essas variáveis não estiverem definidas, a aplicação usará valores de espaço reservado para fins de demonstração, mas os recursos de segurança de conteúdo não funcionarão corretamente.
Antes de rodar o cliente, você precisa iniciar o servidor MCP da calculadora no modo SSE em localhost:8080.
Este projeto demonstra a integração do Model Context Protocol (MCP) com LangChain4j para chamar serviços de calculadora. Os principais recursos incluem:
- Uso do MCP para conectar a um serviço de calculadora para operações matemáticas básicas
- Verificação de segurança de conteúdo em duas camadas, tanto nos prompts do usuário quanto nas respostas do bot
- Integração com o modelo gpt-4.1-nano do GitHub via LangChain4j
- Uso de Server-Sent Events (SSE) para transporte MCP
O projeto inclui recursos abrangentes de segurança de conteúdo para garantir que tanto as entradas do usuário quanto as respostas do sistema estejam livres de conteúdo prejudicial:
-
Triagem de Entrada: Todos os prompts do usuário são analisados para categorias de conteúdo prejudicial, como discurso de ódio, violência, autoagressão e conteúdo sexual antes do processamento.
-
Triagem de Saída: Mesmo ao usar modelos potencialmente sem censura, o sistema verifica todas as respostas geradas pelos mesmos filtros de segurança de conteúdo antes de exibi-las ao usuário.
Essa abordagem em duas camadas garante que o sistema permaneça seguro independentemente do modelo de IA utilizado, protegendo os usuários tanto de entradas prejudiciais quanto de respostas geradas pela IA que possam ser problemáticas.
A aplicação inclui uma interface web amigável que permite aos usuários interagir com o sistema Content Safety Calculator:
- Formulário simples e intuitivo para inserir prompts de cálculo
- Validação de segurança de conteúdo em duas camadas (entrada e saída)
- Feedback em tempo real sobre a segurança do prompt e da resposta
- Indicadores de segurança coloridos para facilitar a interpretação
- Design limpo e responsivo que funciona em diversos dispositivos
- Exemplos de prompts seguros para orientar os usuários
-
Inicie a aplicação:
mvn spring-boot:run
-
Abra seu navegador e acesse
http://localhost:8087 -
Insira um prompt de cálculo na área de texto fornecida (ex.: "Calculate the sum of 24.5 and 17.3")
-
Clique em "Submit" para processar sua solicitação
-
Veja os resultados, que incluirão:
- Análise de segurança de conteúdo do seu prompt
- O resultado calculado (se o prompt for seguro)
- Análise de segurança de conteúdo da resposta do bot
- Quaisquer avisos de segurança se a entrada ou saída tiver sido sinalizada
O cliente web gerencia automaticamente ambos os processos de verificação de segurança de conteúdo, garantindo que todas as interações sejam seguras e apropriadas, independentemente do modelo de IA utilizado.
Aviso Legal:
Este documento foi traduzido utilizando o serviço de tradução automática Co-op Translator. Embora nos esforcemos para garantir a precisão, por favor, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte oficial. Para informações críticas, recomenda-se tradução profissional realizada por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução.
