Skip to content

Open source platform for AI Engineering: OpenTelemetry-native LLM Observability, GPU Monitoring, Guardrails, Evaluations, Prompt Management, Vault, Playground. ๐Ÿš€๐Ÿ’ป Integrates with 30+ LLM Providers, VectorDBs, Frameworks and GPUs.

License

Notifications You must be signed in to change notification settings

openlit/openlit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
OpenLIT Logo

Observability, Evaluations, Guardrails, Prompts, Vault, Playground

Open Source Platform for AI Engineering

Documentation | Quickstart | Python SDK | Typescript SDK |

Roadmap | Feature Request | Report a Bug

OpenLIT License Downloads GitHub Last Commit GitHub Contributors

Slack X


OpenLIT Banner

OpenLIT allows you to simplify your AI development workflow, especially for Generative AI and LLMs. It streamlines essential tasks like experimenting with LLMs, organizing and versioning prompts, and securely handling API keys. With just one line of code, you can enable OpenTelemetry-native observability, offering full-stack monitoring that includes LLMs, vector databases, and GPUs. This enables developers to confidently build AI features and applications, transitioning smoothly from testing to production.

This project proudly follows and maintains the Semantic Conventions with the OpenTelemetry community, consistently updating to align with the latest standards in Observability.

โšก Features

  • ๐Ÿ“ˆ Analytics Dashboard: Monitor your AI application's health and performance with detailed dashboards that track metrics, costs, and user interactions, providing a clear view of overall efficiency.

  • ๐Ÿ”Œ OpenTelemetry-native Observability SDKs: Vendor-neutral SDKs to send traces and metrics to your existing observability tools.

  • ๐Ÿ’ฒ Cost Tracking for Custom and Fine-Tuned Models: Tailor cost estimations for specific models using custom pricing files for precise budgeting.

  • ๐Ÿ› Exceptions Monitoring Dashboard: Quickly spot and resolve issues by tracking common exceptions and errors with a dedicated monitoring dashboard.

  • ๐Ÿ’ญ Prompt Management: Manage and version prompts using Prompt Hub for consistent and easy access across applications.

  • ๐Ÿ”‘ API Keys and Secrets Management: Securely handle your API keys and secrets centrally, avoiding insecure practices.

  • ๐ŸŽฎ Experiemnt with different LLMs: Use OpenGround to explore, test and compare various LLMs side by side.

๐Ÿš€ Getting Started with LLM Observability

flowchart TB;
    subgraph " "
        direction LR;
        subgraph " "
            direction LR;
            OpenLIT_SDK[OpenLIT SDK] -->|Sends Traces & Metrics| OTC[OpenTelemetry Collector];
            OTC -->|Stores Data| ClickHouseDB[ClickHouse];
        end
        subgraph " "
            direction RL;
            OpenLIT_UI[OpenLIT] -->|Pulls Data| ClickHouseDB;
        end
    end
Loading

Step 1: Deploy OpenLIT Stack

  1. Git Clone OpenLIT Repository

    Open your command line or terminal and run:

    git clone git@github.com:openlit/openlit.git
  2. Self-host using Docker

    Deploy and run OpenLIT with the following command:

    docker compose up -d

For instructions on installing in Kubernetes using Helm, refer to the Kubernetes Helm installation guide.

Step 2: Install OpenLIT SDK

Open your command line or terminal and run:

pip install openlit

For instructions on using the TypeScript SDK, visit the TypeScript SDK Installation guide.

Step 3: Initialize OpenLIT in your Application

Integrate OpenLIT into your AI applications by adding the following lines to your code.

import openlit

openlit.init()

Configure the telemetry data destination as follows:

Purpose Parameter/Environment Variable For Sending to OpenLIT
Send data to an HTTP OTLP endpoint otlp_endpoint or OTEL_EXPORTER_OTLP_ENDPOINT "http://127.0.0.1:4318"
Authenticate telemetry backends otlp_headers or OTEL_EXPORTER_OTLP_HEADERS Not required by default

๐Ÿ’ก Info: If the otlp_endpoint or OTEL_EXPORTER_OTLP_ENDPOINT is not provided, the OpenLIT SDK will output traces directly to your console, which is recommended during the development phase.

Example


Initialize using Function Arguments

Add the following two lines to your application code:

import openlit

openlit.init(
  otlp_endpoint="http://127.0.0.1:4318", 
)


Initialize using Environment Variables

Add the following two lines to your application code:

import openlit

openlit.init()

Then, configure the your OTLP endpoint using environment variable:

export OTEL_EXPORTER_OTLP_ENDPOINT = "http://127.0.0.1:4318"

Step 4: Visualize and Optimize!

With the Observability data now being collected and sent to OpenLIT, the next step is to visualize and analyze this data to get insights into your AI application's performance, behavior, and identify areas of improvement.

Just head over to OpenLIT at 127.0.0.1:3000 on your browser to start exploring. You can login using the default credentials

  • Email: user@openlit.io
  • Password: openlituser

๐Ÿ›ฃ๏ธ Roadmap

We are dedicated to continuously improving OpenLIT. Here's a look at what's been accomplished and what's on the horizon:

Feature Status
OpenTelemetry-native Observability SDK for Tracing and Metrics โœ… Completed
OpenTelemetry-native GPU Monitoring โœ… Completed
Exceptions and Error Monitoring โœ… Completed
Prompt Hub for Managing and Versioning Prompts โœ… Completed
OpenGround for Testing and Comparing LLMs โœ… Completed
Vault for Central Management of LLM API Keys and Secrets โœ… Completed
Cost Tracking for Custom Models โœ… Completed
Real-Time Guardrails Implementation โœ… Completed
Programmatic Evaluation for LLM Response โœ… Completed
Auto-Evaluation Metrics Based on Usage ๐Ÿ”œ Coming Soon
Human Feedback for LLM Events ๐Ÿ”œ Coming Soon
Dataset Generation Based on LLM Events ๐Ÿ”œ Coming Soon
Search over Traces ๐Ÿ”œ Coming Soon

๐ŸŒฑ Contributing

Whether it's big or small, we love contributions ๐Ÿ’š. Check out our Contribution guide to get started

Unsure where to start? Here are a few ways to get involved:

  • Join our Slack or Discord community to discuss ideas, share feedback, and connect with both our team and the wider OpenLIT community.

Your input helps us grow and improve, and we're here to support you every step of the way.

OpenLIT - One click observability, evals for LLMs & GPUs | Product Hunt Example Image

๐Ÿ’š Community & Support

Connect with OpenLIT community and maintainers for support, discussions, and updates:

  • ๐ŸŒŸ If you like it, Leave a star on our GitHub
  • ๐ŸŒ Join our Slack or Discord community for live interactions and questions.
  • ๐Ÿž Report bugs on our GitHub Issues to help us improve OpenLIT.
  • ๐• Follow us on X for the latest updates and news.

License

OpenLIT is available under the Apache-2.0 license.