{"library":"openlit","title":"OpenLit","description":"OpenLit is an OpenTelemetry-native auto-instrumentation library for monitoring LLM applications and GPUs, facilitating the integration of observability into GenAI projects. It offers automatic tracing, metrics, and evaluations for over 50 LLM providers, frameworks, and vector databases. The library is actively maintained with frequent releases, currently at version 1.40.3.","language":"python","status":"active","last_verified":"Fri May 15","install":{"commands":["pip install openlit","pip install openlit[gpu]"],"cli":null},"imports":["import openlit"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nimport openlit\nfrom openai import OpenAI\n\n# Configure OpenLIT (either via env vars or direct arguments to init)\n# For local development, omitting otlp_endpoint will print traces to console.\nos.environ['OPENLIT_APPLICATION_NAME'] = os.environ.get('OPENLIT_APPLICATION_NAME', 'my-genai-app')\nos.environ['OTEL_EXPORTER_OTLP_ENDPOINT'] = os.environ.get('OTEL_EXPORTER_OTLP_ENDPOINT', 'http://127.0.0.1:4318')\nos.environ['OPENAI_API_KEY'] = os.environ.get('OPENAI_API_KEY', 'YOUR_OPENAI_API_KEY') # Replace with actual key or set env var\n\n# Initialize OpenLIT for auto-instrumentation\n# Make sure this call happens *before* importing/instantiating LLM clients\nopenlit.init()\n\n# Example with OpenAI\nclient = OpenAI()\n\ntry:\n    response = client.chat.completions.create(\n        model=\"gpt-4o\",\n        messages=[{\"role\": \"user\", \"content\": \"What is OpenTelemetry?\"}]\n    )\n    print(response.choices[0].message.content)\nexcept Exception as e:\n    print(f\"An error occurred: {e}\")\n    print(\"Ensure OPENAI_API_KEY is set and OTLP endpoint is reachable if not using console output.\")","lang":"python","description":"This quickstart demonstrates how to initialize OpenLit for automatic instrumentation of an OpenAI LLM call. Ensure `openlit.init()` is called before any LLM client instantiation. By default, if `OTEL_EXPORTER_OTLP_ENDPOINT` is not set, traces will be printed to the console for development purposes. For production, configure the `OTEL_EXPORTER_OTLP_ENDPOINT` and authentication headers.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"1.42.0","pypi_latest":"1.42.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":13,"avg_import_s":4.5,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.57,"mem_mb":47.7,"disk_size":"131.6M"},{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.63,"mem_mb":47.7,"disk_size":"131.6M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":14.6,"import_time_s":3.24,"mem_mb":45.9,"disk_size":"128M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":14.4,"import_time_s":3.21,"mem_mb":45.9,"disk_size":"128M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":5.57,"mem_mb":50.7,"disk_size":"140.3M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":5.65,"mem_mb":50.7,"disk_size":"140.3M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":13,"import_time_s":4.79,"mem_mb":48.9,"disk_size":"137M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":13.3,"import_time_s":4.78,"mem_mb":48.9,"disk_size":"137M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":5.07,"mem_mb":50,"disk_size":"130.6M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.91,"mem_mb":50,"disk_size":"130.6M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":10.7,"import_time_s":4.87,"mem_mb":48.3,"disk_size":"127M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":10.3,"import_time_s":4.65,"mem_mb":48.3,"disk_size":"127M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.53,"mem_mb":51.8,"disk_size":"130.5M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.57,"mem_mb":51.8,"disk_size":"130.5M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":10.2,"import_time_s":4.41,"mem_mb":50,"disk_size":"127M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":10.3,"import_time_s":4.28,"mem_mb":50,"disk_size":"127M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.2,"mem_mb":49.4,"disk_size":"130.7M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":4.21,"mem_mb":49.4,"disk_size":"130.7M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"openlit","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":16.5,"import_time_s":3.94,"mem_mb":47.5,"disk_size":"127M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"gpu","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":16.5,"import_time_s":3.93,"mem_mb":47.5,"disk_size":"127M"}]}}