4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

New RelicのOpenAI ObservabilityでOpenAI APIの利用状況を可視化する

Last updated at Posted at 2023-10-31

概要

 オブザーバビリティプラットフォームの New Relic は、機械学習モデルのパフォーマンスモニタリングにも対応しています。New Relic を使用することで、機械学習モデルのAPIに関する平均リクエスト時間、総リクエスト数、総コストといったメトリクスを取得・可視化することができます。これにより、機械学習モデルのサービスが期待した通りに機能しているかを迅速に確認することが可能です。
 今回のアップデートにより、わずか2行のコードで OpenAI を用いたアプリケーションのモニタリングが可能になりました。これにより、New Relic 上でモデルのコスト、使用状況、パフォーマンスをリアルタイムに追跡できるようになりました。

このアップデートの詳細はこちら。
New Relic アップデート(2023年3月)
New Relic アップデート一覧

 OpenAI Observability は、現時点(2023年10月31日時点)で Python と Node.js のアプリケーションに対応しています。今回は、Python を使用した場合の設定手順を紹介します。
 では実際にやってみましょう。

設定手順

 OpenAI Observabilityのセットアップは非常に簡単です。まずはガイドに従って設定していきます。
 New Relic の GUI 上で[Add Data]を開き、検索窓に 「OpenAI」 と入力するとOpenAI Observability が表示されます。[Add Data]はショートカットキー「G + D」を使って開くことも可能です。
add_data.png

 今回はPythonアプリケーションで確認するため、Pythonを選択します。
add_data_python1.png

 [Give your application a name] に New Relic 上で表示するアプリケーション名を入力して[Save]をクリックして次のステップへ進みます。
appname.png

ここからPythonアプリケーションのコードを変更していきます。
codesettings_mask.png

下記のコマンドを実行してnr_openai_observabilityをインストールします。

packageのインストール
pip install nr_openai_observability

次にインストールしたPackageを使用するようにコードを変更しましょう。変更内容は非常に簡単で2行のコードを追加するだけです。

OpenAIのAPIを呼び出しているPythonアプリケーション
import os
import openai
+ # New RelicのOpenAI Observability用Packageのimport
+ from nr_openai_observability import monitor

<省略>

+ # New Relicで表示するアプリケーション名とAPIキーの設定
+ monitor.initialization(application_name="openai-sample", license_key=<NEWRELIC_API_KEY>)

# OpenAIのAPIキー
openai.api_key = os.getenv("OPENAI_API_KEY")

<省略>

 これでアプリケーションの設定は完了です。アプリケーションを実行するとOpenAIのAPIをコールした情報の New Relic へのデータ連携が開始されます。
設定画面で [Continue] ボタンをクリックして設定を進めましょう。

スクリーンショット 2023-10-30 0.02.21.png
 [Test connection] をクリックすると上記の画面のように接続テストが開始されます。アプリケーションから New Relic へデータが連携されたことが確認できるとStatusが更新されて [See your data] がアクティブにるため、クリックするとセットアップ手順は完了です。

確認

 それでは連携されたデータを確認していきましょう。

OpenAIの呼び出し状況を確認する

 まず New Relic で事前に用意された UI でデータの表示を確認していきましょう。[All Capabilities]から[Mobel Performance]を開くと今回設定を追加したアプリケーションが表示されます。
Entity.png

 このアプリケーション開くと下記のようなSummary画面が表示され、リクエスト数やレスポンスタイムだけではなく、トークン数も表示されています。
summary.png

 APIをリクエストした際のプロンプトとそれに対する返答も確認することが可能です。実行されているプロンプトの内容やその返答の精度や傾向を分析するために使用できます。
completion.png

まとめ

 New Relic の OpenAI Observability により、OpenAI API の利用状況を可視化できるようになりました。Pythonでの設定方法を紹介しましたが、Node.jsでも利用できます。また、Change Tracking と組み合わせることでプロンプトの変更やファインチューニングによって API の応答やパフォーマンスに影響を与えているのかどうかを確認することも可能です。

 ぜひアプリケーションのパフォーマンスを可視化する New Relic APM の加えて、 OpenAIのような機械学習モデルのパフォーマンスの可視化にトライしてみてください!

このアップデートの詳細はこちら。
New Relic アップデート(2023年3月)
New Relic アップデート一覧

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?