Logo

dev-resources.site

for different kinds of informations.

Streamline your OpenAI Monitoring Experience with GreptimeAI

Published at
1/12/2024
Categories
ai
aiops
monitoring
database
Author
Greptime
Categories
4 categories in total
ai
open
aiops
open
monitoring
open
database
open
Streamline your OpenAI Monitoring Experience with GreptimeAI

With the rapid advancement of artificial intelligence technology, OpenAI has emerged as one of the leaders in the field. It excels in various language processing tasks, including machine translation, text classification, and text generation.

However, the critical role of continuous monitoring of API calls while using OpenAI should not be underestimated. This practice is crucial not only for identifying performance bottlenecks and analyzing usage patterns but also for swiftly detecting and addressing any issues that arise with the API.

GreptimeAI

GreptimeAI offers a tailor-made observability solution specifically designed for monitoring and managing large language model (LLM) applications. This solution provides comprehensive insights into the cost, performance, traffic, and security aspects of OpenAI usage. For more details about GreptimeAI, please refer to this article. Notably, GreptimeAI is built upon the open-source time-series database, GreptimeDB.

OpenAI Modules being Monitored

  • chat
  • completion
  • audio
  • images

Scenarios Supported

  • async
  • stream
  • with_raw_response
  • retry
  • error

User Guide

Installation

pip install --upgrade greptimeai

Registration

To get started, create a service by registering greptimeai, and get:

  • host
  • database
  • token

Setting up

export GREPTIMEAI_HOST='xxx'
export GREPTIMEAI_DATABASE='xxx'
export GREPTIMEAI_TOKEN='xxx'

Example

Here is a simple example to illustrate how to call OpenAI chat completion with GreptimeAI tracking enabled.

from greptimeai import openai_patcher
from openai import OpenAI

client = OpenAI()
openai_patcher.setup(client=client)

completion = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "How do I output all files in a directory using Python?",
        }
    ],
    model="gpt-4",
    user="<user_id_from_your_application>",
    stream=True,
)

How does it look like in GreptimeAI

Dashboard overview:

Image description

The following graph shows the trace detail with multiple spans.

Image description

Featured ones: