Overview
This guide shows you how to integrate Latitude Telemetry into an existing application that uses the official OpenAI SDK. After completing these steps:- Every OpenAI call (e.g.
chat.completions.create) can be captured as a log in Latitude. - Logs are grouped under a prompt, identified by a
path, inside a Latitude project. - You can inspect inputs/outputs, measure latency, and debug OpenAI-powered features from the Latitude dashboard.
You’ll keep calling OpenAI exactly as you do today — Telemetry simply observes
and enriches those calls.
Requirements
Before you start, make sure you have:- A Latitude account and API key
- A Latitude project ID
- A Node.js or Python-based project that uses the OpenAI SDK
Steps
1
Install requirements
Add the Latitude Telemetry package to your project:
- TypeScript
- Python
2
Wrap your OpenAI-powered feature
Initialize Latitude Telemetry and wrap the code that calls OpenAI using
telemetry.capture.- TypeScript
- Python
The
path:- Identifies the prompt in Latitude
- Can be new or existing
- Should not contain spaces or special characters (use letters, numbers,
- _ / .)
Streaming responses
When using streaming (stream: true), consume the stream inside your capture block so the span covers the entire operation.
- TypeScript
- Python
Consume the stream inside your
capture() callback. The span stays open until your callback completes:By consuming the stream inside capture, the span duration accurately reflects the total time of the operation, and all child spans from OpenAI instrumentation are properly nested.
Seeing your logs in Latitude
Once your feature is wrapped, logs will appear automatically.- Open the prompt in your Latitude dashboard (identified by
path) - Go to the Traces section
- Each execution will show:
- Input and output messages
- Model and token usage
- Latency and errors
- One trace per feature invocation