Aviso: este arquivo foi traduzido automaticamente usando IA. Contribuições para melhorar a tradução são bem-vindas!
Español | Français | Deutsch | Русский | العربية | हिन्दी | Türkçe
O Opik ajuda você a construir, testar e otimizar aplicações de IA generativa que funcionam melhor, do protótipo à produção. De chatbots RAG a assistentes de código e pipelines agentes complexos, o Opik fornece rastreamento abrangente, avaliação e otimização automática de prompts e ferramentas para eliminar as suposições no desenvolvimento de IA.
Website • Comunidade Slack • Twitter • Changelog • Documentação
🧑⚖️ LLM como Juiz • 🔍 Avaliando sua Aplicação • ⭐ Dê-nos uma estrela • 🤝 Contribuir
Opik (desenvolvido pela Comet) é uma plataforma open-source projetada para simplificar todo o ciclo de vida de aplicações LLM. Ela capacita desenvolvedores a avaliar, testar, monitorar e otimizar seus modelos e sistemas agentes. As principais ofertas incluem:
- Observabilidade abrangente: rastreamento detalhado de chamadas LLM, registro de conversas e atividade de agentes.
- Avaliação avançada: avaliação robusta de prompts, LLM-como-juiz e gerenciamento de experimentos.
- Pronto para produção: painéis de monitoramento escaláveis e regras de avaliação online para produção.
- Opik Agent Optimizer: SDK dedicado e conjunto de otimizadores para melhorar prompts e agentes.
- Opik Guardrails: recursos para ajudar a implementar práticas de IA seguras e responsáveis.
Principais capacidades incluem:
-
Desenvolvimento & Rastreamento:
- Rastreie todas as chamadas LLM e traces com contexto detalhado durante o desenvolvimento e em produção (Quickstart).
- Integrações extensas de terceiros para observabilidade: integre facilmente com uma lista crescente de frameworks, suportando muitos dos maiores e mais populares nativamente (incluindo adições recentes como Google ADK, Autogen e Flowise AI). (Integrations)
- Anote traces e spans com pontuações de feedback via o Python SDK ou a UI.
- Experimente prompts e modelos no Prompt Playground.
-
Avaliação & Testes:
- Automatize a avaliação de sua aplicação LLM com Datasets e Experimentos.
- Aproveite métricas poderosas de LLM-como-juiz para tarefas complexas como detecção de alucinações, moderação e avaliação RAG (Relevância da Resposta, Precisão de Contexto).
- Integre avaliações ao seu pipeline CI/CD com nossa integração PyTest.
-
Monitoramento de Produção & Otimização:
- Faça log de grandes volumes de traces de produção: o Opik é projetado para escala (40M+ traces/dia).
- Monitore pontuações de feedback, contagem de traces e uso de tokens ao longo do tempo no Painel Opik.
- Utilize Regras de Avaliação Online com métricas de LLM-como-juiz para identificar problemas em produção.
- Utilize o Opik Agent Optimizer e o Opik Guardrails para melhorar continuamente e proteger suas aplicações LLM em produção.
Tip
Se você está procurando recursos que o Opik ainda não oferece, por favor abra uma nova solicitação de recurso 🚀
Coloque seu servidor Opik em funcionamento em minutos. Escolha a opção que melhor atende às suas necessidades:
Acesse o Opik instantaneamente sem qualquer configuração. Ideal para começar rápido e sem manutenção.
👉 Crie sua conta gratuita na Comet
Implemente o Opik em seu próprio ambiente. Escolha entre Docker para setups locais ou Kubernetes para escalabilidade.
Esta é a forma mais simples de obter uma instância local do Opik em execução. Observe o novo script de instalação ./opik.sh:
No ambiente Linux ou Mac:
# Clone o repositório Opik
git clone https://github.com/comet-ml/opik.git
# Navegue até o repositório
cd opik
# Inicie a plataforma Opik
./opik.shNo ambiente Windows:
# Clone o repositório Opik
git clone https://github.com/comet-ml/opik.git
# Navegue até o repositório
cd opik
# Inicie a plataforma Opik
powershell -ExecutionPolicy ByPass -c ".\\opik.ps1"Perfis de serviço para desenvolvimento
O script de instalação do Opik agora suporta perfis de serviço para diferentes cenários de desenvolvimento:
# Iniciar suíte completa do Opik (comportamento padrão)
./opik.sh
# Iniciar apenas serviços de infraestrutura (bancos de dados, caches etc.)
./opik.sh --infra
# Iniciar infraestrutura + serviços backend
./opik.sh --backend
# Habilitar guardrails com qualquer perfil
./opik.sh --guardrails # Guardrails com a suíte completa do Opik
./opik.sh --backend --guardrails # Guardrails com infraestrutura + backendUse as opções --help ou --info para solucionar problemas. Os Dockerfiles agora garantem que os containers sejam executados como usuários não-root para maior segurança. Quando tudo estiver em execução, acesse localhost:5173 no seu navegador! Para instruções detalhadas, veja o Guia de Implantação Local.
Para implantações de produção ou em maior escala, o Opik pode ser instalado em um cluster Kubernetes usando nosso chart Helm. Clique no badge para o Guia de Instalação Kubernetes via Helm.
Important
Versão 1.7.0 — Alterações: Verifique o changelog para atualizações importantes e mudanças que quebram compatibilidade.
O Opik fornece um conjunto de bibliotecas cliente e uma API REST para interagir com o servidor Opik. Isso inclui SDKs para Python, TypeScript e Ruby (via OpenTelemetry), permitindo integração fluida em seus fluxos de trabalho. Para referências de API e SDK, consulte a Documentação de Referência do Cliente Opik.
Para começar com o SDK Python:
Instale o pacote:
# instalar usando pip
pip install opik
# ou instalar com uv
uv pip install opikConfigure o SDK Python executando o comando opik configure, que solicitará o endereço do servidor Opik (para instâncias self-hosted) ou sua chave de API e workspace (para Comet.com):
opik configureTip
Você também pode chamar opik.configure(use_local=True) do seu código Python para configurar o SDK para execução local self-hosted, ou fornecer a chave de API e workspace diretamente para Comet.com. Consulte a documentação do SDK Python para mais opções de configuração.
Agora você está pronto para começar a registrar traces usando o SDK Python.
A maneira mais fácil de registrar traces é usar uma de nossas integrações diretas. O Opik suporta uma ampla gama de frameworks, incluindo adições recentes como Google ADK, Autogen, AG2 e Flowise AI:
| Integração | Descrição | Documentação |
|---|---|---|
| ADK | Registra traces para Google Agent Development Kit (ADK) | Documentação |
| AG2 | Registra traces para chamadas LLM do AG2 | Documentação |
| Agent Spec | Registra traces para chamadas do Agent Spec | Documentação |
| AIsuite | Registra traces para chamadas LLM do AIsuite | Documentação |
| Agno | Registra traces para chamadas do framework de orquestração Agno | Documentação |
| Anthropic | Registra traces para chamadas LLM da Anthropic | Documentação |
| Autogen | Registra traces para fluxos de trabalho agentic do Autogen | Documentação |
| Bedrock | Registra traces para chamadas LLM do Amazon Bedrock | Documentação |
| BeeAI (Python) | Registra traces para chamadas do framework de agentes BeeAI (Python) | Documentação |
| BeeAI (TypeScript) | Registra traces para chamadas do framework de agentes BeeAI (TS) | Documentação |
| BytePlus | Registra traces para chamadas LLM do BytePlus | Documentação |
| Cloudflare Workers AI | Registra traces para chamadas do Cloudflare Workers AI | Documentação |
| Cohere | Registra traces para chamadas LLM da Cohere | Documentação |
| CrewAI | Registra traces para chamadas do CrewAI | Documentação |
| Cursor | Registra traces para conversas do Cursor | Documentação |
| DeepSeek | Registra traces para chamadas LLM do DeepSeek | Documentação |
| Dify | Registra traces para execuções de agentes do Dify | Documentação |
| DSPY | Registra traces para execuções do DSPy | Documentação |
| Fireworks AI | Registra traces para chamadas LLM do Fireworks AI | Documentação |
| Flowise AI | Registra traces para o construtor visual Flowise AI | Documentação |
| Gemini (Python) | Registra traces para chamadas LLM do Google Gemini | Documentação |
| Gemini (TypeScript) | Registra traces para chamadas do SDK TypeScript do Google Gemini | Documentação |
| Groq | Registra traces para chamadas LLM do Groq | Documentação |
| Guardrails | Registra traces para validações do Guardrails AI | Documentação |
| Haystack | Registra traces para chamadas do Haystack | Documentação |
| Harbor | Registra traces para avaliações de benchmark do Harbor | Documentação |
| Instructor | Registra traces para chamadas LLM feitas com Instructor | Documentação |
| LangChain (Python) | Registra traces para chamadas LLM do LangChain | Documentação |
| LangChain (JS/TS) | Registra traces para chamadas do LangChain em JavaScript/TypeScript | Documentação |
| LangGraph | Registra traces para execuções do LangGraph | Documentação |
| Langflow | Registra traces para o construtor visual Langflow | Documentação |
| LiteLLM | Registra traces para chamadas de modelos via LiteLLM | Documentação |
| LiveKit Agents | Registra traces para chamadas do framework de agentes LiveKit | Documentação |
| LlamaIndex | Registra traces para chamadas LLM do LlamaIndex | Documentação |
| Mastra | Registra traces para chamadas do framework de workflows Mastra | Documentação |
| Microsoft Agent Framework (Python) | Registra traces para chamadas do Microsoft Agent Framework | Documentação |
| Microsoft Agent Framework (.NET) | Registra traces para chamadas .NET do Microsoft Agent Framework | Documentação |
| Mistral AI | Registra traces para chamadas LLM do Mistral AI | Documentação |
| n8n | Registra traces para execuções de workflows n8n | Documentação |
| Novita AI | Registra traces para chamadas LLM do Novita AI | Documentação |
| Ollama | Registra traces para chamadas LLM do Ollama | Documentação |
| OpenAI (Python) | Registra traces para chamadas LLM da OpenAI | Documentação |
| OpenAI (JS/TS) | Registra traces para chamadas da OpenAI em JavaScript/TypeScript | Documentação |
| OpenAI Agents | Registra traces para chamadas do SDK OpenAI Agents | Documentação |
| OpenClaw | Registra traces para execuções de agentes OpenClaw | Documentação |
| OpenRouter | Registra traces para chamadas LLM do OpenRouter | Documentação |
| OpenTelemetry | Registra traces para chamadas compatíveis com OpenTelemetry | Documentação |
| OpenWebUI | Registra traces para conversas no OpenWebUI | Documentação |
| Pipecat | Registra traces para chamadas de agentes de voz em tempo real do Pipecat | Documentação |
| Predibase | Registra traces para chamadas LLM do Predibase | Documentação |
| Pydantic AI | Registra traces para chamadas de agentes PydanticAI | Documentação |
| Ragas | Registra traces para avaliações Ragas | Documentação |
| Semantic Kernel | Registra traces para chamadas do Microsoft Semantic Kernel | Documentação |
| Smolagents | Registra traces para agentes Smolagents | Documentação |
| Spring AI | Registra traces para chamadas do framework Spring AI | Documentação |
| Strands Agents | Registra traces para chamadas de agentes Strands | Documentação |
| Together AI | Registra traces para chamadas LLM do Together AI | Documentação |
| Vercel AI SDK | Registra traces para chamadas via Vercel AI SDK | Documentação |
| VoltAgent | Registra traces para chamadas do framework de agentes VoltAgent | Documentação |
| WatsonX | Registra traces para chamadas LLM do IBM watsonx | Documentação |
| xAI Grok | Registra traces para chamadas LLM do xAI Grok | Documentação |
Tip
Se o framework que você está usando não estiver na lista, sinta-se à vontade para abrir uma issue ou enviar um PR com a integração.
Se você não estiver usando nenhum dos frameworks acima, também pode usar o decorador track para registrar traces:
import opik
opik.configure(use_local=True) # Executar localmente
@opik.track
def my_llm_function(user_question: str) -> str:
# Seu código LLM aqui
return "Hello"Tip
O decorador track pode ser usado em conjunto com qualquer uma de nossas integrações e também pode ser usado para rastrear chamadas de função aninhadas.
O SDK Python do Opik inclui diversas métricas LLM-como-juiz para ajudá-lo a avaliar sua aplicação LLM. Saiba mais na documentação de métricas.
Para usá-las, importe a métrica relevante e use a função score:
from opik.evaluation.metrics import Hallucination
metric = Hallucination()
score = metric.score(
input="Qual é a capital da França?",
output="Paris",
context=["A França é um país na Europa."]
)
print(score)O Opik também inclui diversas métricas heurísticas pré-construídas, além da possibilidade de criar suas próprias. Saiba mais na documentação de métricas.
O Opik permite avaliar sua aplicação LLM durante o desenvolvimento por meio de Datasets e Experimentos. O Painel Opik oferece gráficos aprimorados para experimentos e melhor manuseio de traces grandes. Você também pode executar avaliações como parte do seu pipeline CI/CD usando nossa integração PyTest.
Se você achar o Opik útil, considere nos dar uma estrela! Seu apoio nos ajuda a crescer nossa comunidade e continuar melhorando o produto.
Há muitas maneiras de contribuir com o Opik:
- Envie relatórios de bugs e solicitações de recursos
- Revise a documentação e envie Pull Requests para melhorá-la
- Fale ou escreva sobre o Opik e avise-nos
- Apoie solicitações de recursos populares para mostrar seu apoio
Para saber mais sobre como contribuir com o Opik, veja nossas diretrizes de contribuição.