Skip to content

Este projeto implementa um agente LangChain com middleware de moderação da OpenAI para garantir interações seguras e apropriadas.

Notifications You must be signed in to change notification settings

jadilson12/langgraph-guardrail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Guardrail - Agente TechDAIA com Moderação OpenAI

Este projeto implementa um agente LangChain com middleware de moderação da OpenAI para garantir interações seguras e apropriadas.

GitHub: https://github.com/jadilson12/langgraph-guardrail

Estrutura do Projeto

guardrail/
├── src/
│   ├── agent/
│   │   ├── __init__.py    # Módulo do agente
│   │   └── graph.py       # LangGraph com StateGraph e moderação
│   └── agente.py          # Definição do agente techdaia com tools
├── requirements.txt       # Dependências do projeto
├── .env.example          # Exemplo de variáveis de ambiente
├── langgraph.json        # Configuração do LangGraph
├── .gitignore            # Arquivos ignorados pelo Git
└── README.md             # Este arquivo

Funcionalidades

  • Agente LangChain configurado com GPT-5-nano
  • Middleware de moderação OpenAI (omni-moderation-latest)
  • Ferramentas customizadas:
    • confirmar_inscricao: Confirma inscrição do usuário
    • apresentar_novo_produto: Apresenta produtos com nomes aleatórios
  • Verificação automática de entrada e saída para conteúdo inapropriado
  • Integração com LangSmith para rastreamento e monitoramento (opcional)
  • LangGraph com StateGraph para fluxo controlado

Configuração

  1. Clone o repositório:
git clone https://github.com/jadilson12/langgraph-guardrail.git
cd langgraph-guardrail
  1. Crie um ambiente virtual:
python -m venv .venv
source .venv/bin/activate  # No Windows: .venv\Scripts\activate
  1. Instale as dependências:
pip install -r requirements.txt
  1. Configure as variáveis de ambiente:
cp .env.example .env
# Edite .env e adicione:
# - OPENAI_API_KEY: sua chave da API OpenAI
# - LANGSMITH_API_KEY: sua chave da API LangSmith (opcional)
# - LANGSMITH_PROJECT: nome do projeto no LangSmith (opcional)

Variáveis de ambiente:

  • OPENAI_API_KEY (obrigatório): Chave da API da OpenAI
  • LANGSMITH_API_KEY (opcional): Chave da API do LangSmith
  • LANGSMITH_PROJECT (opcional): Nome do projeto no LangSmith para rastreamento e monitoramento das execuções

Uso

O agente techdaia está configurado para:

  • Confirmar inscrições de usuários
  • Apresentar novos produtos com nomes gerados aleatoriamente
  • Verificar automaticamente se as mensagens de entrada e saída são apropriadas
  • Retornar mensagens de violação quando conteúdo inapropriado é detectado

Executando o agente

# Certifique-se de que o ambiente virtual está ativado
langgraph dev

O agente estará disponível como techdaia conforme configurado no langgraph.json.

Middleware de Moderação

O OpenAIModerationMiddleware está configurado para:

  • Verificar entrada do usuário (check_input=True)
  • Verificar saída do modelo (check_output=True)
  • Não verificar resultados de ferramentas (check_tool_results=False)
  • Finalizar a conversa em caso de violação (exit_behavior="end")

Mensagens de violação

Quando uma violação é detectada, o middleware retorna uma mensagem informativa:

Desculpe, não posso processar essa solicitação.
O conteúdo da mensagem violou nossas políticas de uso seguro.
Categorias detectadas: {categories}.
Por favor, reformule sua mensagem de forma adequada.

As categorias podem incluir: sexual, hate, harassment, self-harm, violence, entre outras definidas pela API de moderação da OpenAI.

Dependências

  • langchain>=0.3.0
  • langchain-core>=0.3.0
  • langchain-openai>=0.2.0
  • langgraph>=0.2.0
  • python-dotenv>=1.0.0

Arquitetura

O projeto utiliza:

  • LangChain: Framework para desenvolvimento de aplicações com LLMs
  • LangGraph: Biblioteca para criar grafos de estados com LangChain
  • OpenAI GPT-5-nano: Modelo de linguagem com reasoning de baixo esforço
  • OpenAI Moderation: API de moderação para segurança de conteúdo

About

Este projeto implementa um agente LangChain com middleware de moderação da OpenAI para garantir interações seguras e apropriadas.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages