注意:このファイルはAIを使用して機械翻訳されています。翻訳の改善への貢献を歓迎します!
Español | Français | Deutsch | Русский | العربية | हिन्दी | Türkçe
Opikは、プロトタイプから本番まで、より良く動作する生成AIアプリケーションの構築、テスト、最適化を支援します。RAGチャットボットやコードアシスタント、複雑なエージェンティックシステムに至るまで、Opikは包括的なトレース、評価、そしてプロンプトやツールの自動最適化を提供し、AI開発における試行錯誤を取り除きます。
Webサイト • Slack コミュニティ • Twitter • 変更履歴 • ドキュメント
🧑⚖️ LLMをジャッジとして • 🔍 アプリケーションの評価 • ⭐ GitHubでスターを • 🤝 貢献
Opik(Cometによる開発)は、LLMアプリケーションのライフサイクル全体を効率化するためのオープンソースプラットフォームです。開発者がモデルやエージェンシーシステムを評価、テスト、監視、最適化できるようにします。主な提供機能は次のとおりです:
- 包括的なオブザーバビリティ:LLM呼び出しの詳細なトレーシング、会話ログ、エージェントアクティビティの記録。
- 高度な評価:プロンプト評価、LLM-as-a-judge、実験管理の強力な機能。
- 本番環境対応:スケーラブルな監視ダッシュボードとオンライン評価ルール。
- Opik Agent Optimizer:プロンプトやエージェントを強化する専用SDKとオプティマイザー。
- Opik Guardrails:安全で責任あるAI実践を支援する機能。
主な機能:
-
開発 & トレーシング:
- 開発中および本番環境での詳細コンテキスト付きLLM呼び出しとトレースの追跡(クイックスタート)。
- 幅広いサードパーティ統合によるオブザーバビリティ:Google ADK、Autogen、Flowise AIなどの最新フレームワークをネイティブサポート(統合一覧)。
- Python SDKやUIを使ったトレースやスパンへのフィードバックスコアの注釈。
- Prompt Playgroundでプロンプトやモデルを試行。
-
評価 & テスト:
-
本番監視 & 最適化:
- 高ボリュームの本番トレース記録:Opikはスケールを重視(1日あたり4,000万以上のトレース)。
- Opikダッシュボードでフィードバックスコア、トレース数、トークン使用量を時間推移で監視(ダッシュボード)。
- オンライン評価ルールを使った本番問題の検出。
- Opik Agent Optimizer と Opik Guardrails で本番環境のLLMアプリを継続的に改善・保護。
Tip
現在Opikにない機能が必要な場合は、ぜひ新しい機能リクエストを提出してください 🚀
数分でOpikサーバーを起動できます。ニーズに合ったオプションを選んでください:
セットアップ不要で即時にOpikにアクセスできます。クイックスタートやメンテナンス不要の方に最適。
独自環境にOpikをデプロイ。ローカルはDocker、スケーラブル環境はKubernetesを選択。
最も簡単にローカルOpikインスタンスを起動する方法です。新しい .opik.sh インストールスクリプトに注目:
On Linux or Mac Environment:
# Opikリポジトリをクローン
git clone https://github.com/comet-ml/opik.git
# リポジトリへ移動
cd opik
# Opikプラットフォームを起動
./opik.shOn Windows Environment:
# Opikリポジトリをクローン
git clone https://github.com/comet-ml/opik.git
# リポジトリへ移動
cd opik
# Opikプラットフォームを起動
powershell -ExecutionPolicy ByPass -c ".\\opik.ps1"開発用サービスプロファイル
Opikインストールスクリプトは、異なる開発シナリオ向けのサービスプロファイルをサポートしています:
# フルOpikスイート(デフォルト動作)
./opik.sh
# インフラストラクチャサービスのみ(データベース、キャッシュなど)
./opik.sh --infra
# インフラストラクチャ + バックエンドサービス
./opik.sh --backend
# 任意のプロファイルでガードレールを有効化
./opik.sh --guardrails # フルOpikスイート + ガードレール
./opik.sh --backend --guardrails # インフラストラクチャ + バックエンド + ガードレール--help または --info オプションでトラブルシューティングが可能。Dockerfileは非rootユーザー実行を保証し、セキュリティを強化。起動後、ブラウザで localhost:5173 を開くだけです。詳細は ローカルデプロイガイド をご覧ください。
本番や大規模セルフホスト環境では、Helmチャートを使ってKubernetesクラスタにインストールできます。詳しくはバッジをクリックして Kubernetesインストールガイド (Helm) をご参照ください。
Important
バージョン 1.7.0 の変更:重要な更新と破壊的変更については 変更履歴 をご確認ください。
Opikは、Opikサーバーとやり取りするためのクライアントライブラリ群とREST APIを提供します。Python、TypeScript、Ruby(OpenTelemetry経由)のSDKがあり、ワークフローへのシームレスな統合が可能です。詳細は Opikクライアントリファレンス をご覧ください。
Python SDKを始めるには:
パッケージをインストール:
# pipでインストール
pip install opik
# または uv を使ってインストール
uv pip install opikopik configure コマンドを実行して、Opikサーバーアドレス(セルフホストの場合)またはAPIキーとワークスペース(Comet.comの場合)を入力します:
opik configureTip
Pythonコード内で opik.configure(use_local=True) を呼び出してローカルセルフホスト構成にしたり、APIキーとワークスペースを直接指定することも可能です。詳細は Python SDKドキュメント を参照してください。
これで Python SDK を使ったトレースのログ記録が可能になります。
最も簡単なトレース記録方法は、直接統合を使うことです。Opikは以下を含む多種多様なフレームワークをサポートしています:
| 統合 | 説明 | ドキュメント |
|---|---|---|
| ADK | Google Agent Development Kit (ADK) のトレースを記録 | ドキュメント |
| AG2 | AG2 LLM 呼び出しのトレースを記録 | ドキュメント |
| aisuite | aisuite LLM 呼び出しのトレースを記録 | ドキュメント |
| Agent Spec | Agent Spec 呼び出しのトレースを記録 | ドキュメント |
| Agno | Agno エージェントオーケストレーションフレームワーク呼び出しのトレースを記録 | ドキュメント |
| Anthropic | Anthropic LLM 呼び出しのトレースを記録 | ドキュメント |
| Autogen | Autogen エージェンシーワークフローのトレースを記録 | ドキュメント |
| Bedrock | Amazon Bedrock LLM 呼び出しのトレースを記録 | ドキュメント |
| BeeAI (Python) | BeeAI Python エージェントフレームワーク呼び出しのトレースを記録 | ドキュメント |
| BeeAI (TypeScript) | BeeAI TypeScript エージェントフレームワーク呼び出しのトレースを記録 | ドキュメント |
| BytePlus | BytePlus LLM 呼び出しのトレースを記録 | ドキュメント |
| CrewAI | CrewAI 呼び出しのトレースを記録 | ドキュメント |
| Cloudflare Workers AI | Cloudflare Workers AI 呼び出しのトレースを記録 | ドキュメント |
| Cohere | Cohere LLM 呼び出しのトレースを記録 | ドキュメント |
| Cursor | Cursor 会話のトレースを記録 | ドキュメント |
| DeepSeek | DeepSeek LLM 呼び出しのトレースを記録 | ドキュメント |
| Dify | Dify エージェンシー実行のトレースを記録 | ドキュメント |
| DSPy | DSPy 実行のトレースを記録 | ドキュメント |
| Fireworks AI | Fireworks AI LLM 呼び出しのトレースを記録 | ドキュメント |
| Flowise AI | Flowise AI ビジュアルLLMアプリのトレースを記録 | ドキュメント |
| Gemini (Python) | Google Gemini LLM 呼び出しのトレースを記録 | ドキュメント |
| Gemini (TypeScript) | Google Gemini TypeScript SDK 呼び出しのトレースを記録 | ドキュメント |
| Groq | Groq LLM 呼び出しのトレースを記録 | ドキュメント |
| Guardrails | Guardrails AI 検証のトレースを記録 | ドキュメント |
| Haystack | Haystack 呼び出しのトレースを記録 | ドキュメント |
| Harbor | Harbor ベンチマーク評価トライアルのトレースを記録 | ドキュメント |
| Instructor | Instructor 経由のLLM呼び出しトレースを記録 | ドキュメント |
| LangChain (Python) | LangChain LLM 呼び出しのトレースを記録 | ドキュメント |
| LangChain (JS/TS) | LangChain JavaScript/TypeScript 呼び出しのトレースを記録 | ドキュメント |
| LangGraph | LangGraph 実行のトレースを記録 | ドキュメント |
| Langflow | Langflow ビジュアルAIビルダーのトレースを記録 | ドキュメント |
| LiteLLM | LiteLLM モデル呼び出しのトレースを記録 | ドキュメント |
| LiveKit Agents | LiveKit Agents AI エージェントフレームワーク呼び出しのトレースを記録 | ドキュメント |
| Mastra | Mastra AI ワークフローフレームワーク呼び出しのトレースを記録 | ドキュメント |
| Microsoft Agent Framework (Python) | Microsoft Agent Framework 呼び出しのトレースを記録 | ドキュメント |
| Microsoft Agent Framework (.NET) | Microsoft Agent Framework .NET 呼び出しのトレースを記録 | ドキュメント |
| Mistral AI | Mistral AI LLM 呼び出しのトレースを記録 | ドキュメント |
| n8n | n8n ワークフロー実行のトレースを記録 | ドキュメント |
| LlamaIndex | LlamaIndex LLM 呼び出しのトレースを記録 | ドキュメント |
| Ollama | Ollama LLM 呼び出しのトレースを記録 | ドキュメント |
| OpenAI (Python) | OpenAI LLM 呼び出しのトレースを記録 | ドキュメント |
| OpenAI (JS/TS) | OpenAI JavaScript/TypeScript 呼び出しのトレースを記録 | ドキュメント |
| OpenAI Agents | OpenAI Agents SDK 呼び出しのトレースを記録 | ドキュメント |
| OpenClaw | OpenClaw エージェント実行のトレースを記録 | ドキュメント |
| Novita AI | Novita AI LLM 呼び出しのトレースを記録 | ドキュメント |
| OpenRouter | OpenRouter LLM 呼び出しのトレースを記録 | ドキュメント |
| OpenTelemetry | OpenTelemetry 対応呼び出しのトレースを記録 | ドキュメント |
| OpenWebUI | OpenWebUI の会話のトレースを記録 | ドキュメント |
| Pipecat | Pipecat リアルタイム音声エージェント呼び出しのトレースを記録 | ドキュメント |
| Predibase | Predibase LLM 呼び出しのトレースを記録 | ドキュメント |
| Pydantic AI | PydanticAI エージェント呼び出しのトレースを記録 | ドキュメント |
| Ragas | Ragas 評価のトレースを記録 | ドキュメント |
| Smolagents | Smolagents エージェント呼び出しのトレースを記録 | ドキュメント |
| Semantic Kernel | Microsoft Semantic Kernel 呼び出しのトレースを記録 | ドキュメント |
| Spring AI | Spring AI フレームワーク呼び出しのトレースを記録 | ドキュメント |
| Strands Agents | Strands Agents 呼び出しのトレースを記録 | ドキュメント |
| Together AI | Together AI LLM 呼び出しのトレースを記録 | ドキュメント |
| Vercel AI SDK | Vercel AI SDK 呼び出しのトレースを記録 | ドキュメント |
| VoltAgent | VoltAgent エージェントフレームワーク呼び出しのトレースを記録 | ドキュメント |
| watsonx | IBM watsonx LLM 呼び出しのトレースを記録 | ドキュメント |
| xAI Grok | xAI Grok LLM 呼び出しのトレースを記録 | ドキュメント |
Tip
リストにないフレームワークを使用している場合は、Issueを開くかPRを提出してください。
フレームワークを使用しない場合は、track デコレータを使ってトレースを記録できます(詳細):
import opik
opik.configure(use_local=True) # ローカル実行
@opik.track
def my_llm_function(user_question: str) -> str:
# あなたのLLMコードをここに記述
return "こんにちは"Tip
trackデコレータは統合と併用でき、ネストされた関数呼び出しのトラッキングにも対応します。
Python Opik SDKにはLLM-as-a-judge用メトリクスが多数含まれており、LLMアプリの評価に役立ちます。詳細は メトリクスドキュメント をご覧ください。
使用例:
from opik.evaluation.metrics import Hallucination
metric = Hallucination()
score = metric.score(
input="フランスの首都は何ですか?",
output="パリ",
context=["フランスはヨーロッパの国です。"]
)
print(score)Opikには事前定義のヒューリスティックメトリクスも多数含まれており、独自メトリクスの作成も可能です。詳細は同じく メトリクスドキュメント をご覧ください。
開発中の評価には データセット と 実験 を活用できます。Opikダッシュボードは実験のチャートを強化し、大規模トレースの扱いを改善します。CI/CDへの組み込みには PyTest統合 をご利用ください。
Opikがお役に立ちましたら、ぜひスターをお願いします!コミュニティの拡大と製品改善の励みになります。
Opikへの貢献方法は多数あります:
- バグ報告 や 機能リクエスト を提出
- ドキュメントをレビューし、プルリクエスト を送信
- Opikについて講演や記事執筆を行い、連絡
- 人気の機能リクエスト に投票してサポートを示す
詳細は 貢献ガイドライン をご覧ください。