AI Snowflake CortexにおけるObservability¶
Snowflake Cortex の AI Observability を使用して、生成的な AI アプリケーションを評価し、トレースします。AI Observabilityにより、アプリケーションの信頼性と透明性を高めることができます。系統的な評価を実行することで、 AI アプリケーションのパフォーマンスを測定するために使用します。評価から得られた情報を使用して、アプリケーションの構成を繰り返し、パフォーマンスを最適化することができます。また、デバッグのためにアプリケーションのトレースをログに記録することもできます。
AI Observabilityを使用してパフォーマンスをベンチマークすることで、アプリケーションの信頼性を高め、本番環境へのデプロイをより確実にします。
AI 観測可能性には次のような特徴があります。
評価: AI Observability を使用して、 LLM-as-a-judge テクニックを使用して、生成的な AI アプリケーションとエージェントのパフォーマンスを体系的に評価します。精度、レイテンシー、使用、コストなどのメトリクスを使用して、アプリケーションの構成を迅速に反復し、パフォーマンスを最適化できます。
比較: 複数の評価を並べて比較し、回答の質と正確さを評価します。LLMs、プロンプト、推論の構成を変えて回答を分析し、本番配備に最適な構成を特定することができます。
トレース: 入力プロンプト、取得されたコンテキスト、ツールの使用、 LLM 推論など、アプリケーション実行のすべてのステップをトレースします。個々の記録をデバッグし、精度、待ち時間、コストについてアプリを改良するために使用します。
AI 観測可能性は、検索支援生成 (RAG) や要約など、さまざまなタスクタイプの評価に使用できます。例えば、コンテキスト関連性スコアは、ユーザーのクエリに対応する検索結果の検索品質を検出するのに役立ちます。回答の関連性スコアと根拠スコアを使用して、検索されたコンテキストに基づいて、最終的な回答の真実性と関連性を検出することができます。
要約については、元の入力に基づいて LLM-生成された要約の事実上の正しさと包括性を測定し、生成的な AI アプリケーションで幻覚の頻度が高いプロンプトと LLMs を避けることができます。
まずは、 主な概念 について学び、 AI 観測可能性チュートリアル を使って簡単なウォークスルーを行ってください。その後、 AIアプリケーションの評価 の情報を使って詳細なウォークスルーができます。
特定のコンセプトを確認するには、 Snowflake AI 可観測性リファレンス をご参照ください。
アクセス制御と前提条件¶
AI Observability を使い始める前に:
実行内容を作成して実行するには、ロールに次のロールまたは権限が付与されている必要があります。詳細については、必要な権限: をご参照ください
CORTEX_USER データベースロール
スキーマに対する CREATE EXTERNAL AGENT 権限。
スキーマに対する CREATE TASK 権限。
EXECUTE TASK グローバル権限。
以下のTrulens PythonパッケージをPythonプロジェクトにインストールしてください。
trulens-coretrulens-connectors-snowflaketrulens-providers-cortex
The version of the package that you're using in your Python project should be version 2.1.2 or later.
TruLens は、Snowflakeがアプリケーションを追跡するために使用するプラットフォームです。詳細については、 TruLens ドキュメント をご参照ください。
主な概念¶
アプリケーション¶
アプリケーションは、 LLMs、ツール(検索リトリーバーや APIs)、および追加のカスタムロジックなどの複数のコンポーネントを使用して設計されたエンドツーエンドの生成的な AI アプリケーションです。たとえば、アプリケーションには、リトリーバー、リランカー、 LLMs が連鎖した RAG パイプラインを含むことができます。あらゆる環境(Snowflake、クラウド、オンプレミスなど)で実行可能なアプリケーションに対して、 AI observability を有効にできます。
外部エージェント¶
Applications are represented in Snowflake as EXTERNAL AGENT objects. An EXTERNAL AGENT object is used to store application and evaluation metadata (such as the application name, version name, or run name). It does not store the application code, application definition, execution traces, or evaluation results. While the application can be hosted in any environment (such as Snowflake, cloud, or on-premises), the execution traces and evaluation results are stored in an event table in your Snowflake account. For more information, see 観測可能データ.
アプリケーションと評価のメタデータを格納することに加えて、 EXTERNAL AGENT オブジェクトは、アプリケーションのトレースと評価結果へのアクセスを制御するためにも使用されます。詳細については、 必要な権限 をご参照ください。
バージョン¶
アプリケーションは複数のバージョンを持つことができます。各バージョンは異なる実装を表しています。例えば、これらのバージョンは、異なるリトリーバー、プロンプト、 LLMs または推論構成を表すことができます。
データセット¶
データセットは入力のセットを表します.アプリケーションをテストするために、期待される出力のセット(ground truth)を表すように構成することもできます。このデータセットを使ってアプリケーションを起動し、以下のタスクを実行することができます。
出力を生成します。
トレースをキャプチャします。
評価指標を計算します。
入力と生成された出力の両方を含むデータセットを使用すると、アプリケーションを起動せずに評価指標を計算できます。データセットでサポートされているフィールドのリストについては、 データセットと属性 をご参照ください。
実行¶
ランは評価の仕事。指定したデータセットとアプリケーション・バージョンを使用して、評価メトリクスを計算します。
A run has an invocation stage and a computation stage. The invocation stage triggers the application to generate the output and corresponding traces. The computation stage computes the evaluation metrics specified for the run. Multiple computations can be performed to add new metrics to an existing run. For the list of statuses associated with the execution of a run, see 実行.
メトリック¶
評価メトリクスは、独自の基準に基づいて生成 AI アプリケーションのパフォーマンスを評価するために使用するスコアです。これらの指標は、 LLMs を使用して出力を採点し、詳細な採点情報を提供します。メトリクスとその定義の包括的なリストについては、 評価メトリック をご参照ください。
トレース¶
トレースは、 LLM アプリケーションとのインタラクションの入力、出力、および中間ステップをキャプチャする包括的な記録です。トレースはアプリケーションの実行を詳細に表示します。トレースを使用して、各ステージにおけるモデルの動作を分析し、理解します。異なるバージョンのアプリケーションのトレースを比較して、改善点を特定し、問題をデバッグし、意図したパフォーマンスを検証することができます。各記録に関連するトレースへのアクセス情報については、 AIアプリケーションの評価 をご参照ください。
価格¶
AI Observabilityは、 LLM ジャッジを使用して評価指標を計算します。サーバーサイドの評価には、Cortex AI 上の LLMs が LLM のジャッジとして使用されます。LLM ジャッジは COMPLETE (SNOWFLAKE.CORTEX) 関数を介して呼び出され、評価を実行します。Cortex Complete関数の呼び出しに料金が発生します。LLM 評価の実施に使用されるものによって、料金が決まります。さらに、以下の料金も請求されます。
評価実行の管理に使用されるタスクのウェアハウス料金
評価指標の計算に使用されるクエリのウェアハウス料金
評価結果のストレージ料金
Snowsightで表示する評価結果を取得するためのウェアハウス料金