Skip to main content
複雑な LLM ワークフローを構築する際には、精度、 コスト、または call のレイテンシに応じて、異なるモデルにプロンプトを送る必要がある場合があります。Not Diamond を使用すると、これらのワークフロー内でプロンプトを ニーズに最適なモデルへ振り分けることができ、 モデルのコストを抑えながら精度の最大化に役立ちます。 このガイドでは、ルーティングされたモデルの Call を Weave が自動的にトレースできるように Not Diamond を W&B Weave と統合する方法と、独自のパフォーマンスデータに基づいてプロンプトを振り分けるために Weave Evaluations を使用してカスタムルーターをトレーニングする方法を説明します。

はじめに

Weave で Not Diamond を使用するには、Not Diamond のアカウントとAPIキーが必要です。アカウントを作成 し、APIキーを生成 してから、API キーを環境変数 NOTDIAMOND_API_KEY として設定してください。 APIキーを作成 ここから、次のいずれかを実行できます。

トレース

Weave は Not Diamond の Python ライブラリ と連携し、API Call を自動的にログする ため、 ルーティングの判断やプロバイダーの応答を、他の Weave トレースとあわせて確認できます。 ワークフローの開始時に weave.init() を実行し、その後は通常どおりルーティングされた プロバイダーを使用してください:

カスタムルーティング

特殊なユースケースでは、評価に基づいて独自の[カスタムルーター]をトレーニングできます。これにより、 Not Diamond はデフォルトのルーティング ポリシーではなく、評価のパフォーマンスに基づいてプロンプトをルーティングできるようになります。 まず、カスタムルーター をトレーニングします。train_router 呼び出しでは、後で使用するトレーニング済みルーターを識別するための preference_id が返されます。
この preference ID を任意の model_select リクエストに渡すと、カスタムルーターを再利用して、 評価データに基づき、パフォーマンスを最大化しつつコストを最小化するようにプロンプトをルーティングできます。

追加サポート

さらにサポートが必要な場合は、ドキュメントを確認するか、メッセージを送信してください。