LiteLLM analytics installation
Note: LiteLLM can be used as a Python SDK or as a proxy server. PostHog observability requires LiteLLM version 1.77.3 or higher.
- 1
Install LiteLLM
RequiredChoose your installation method based on how you want to use LiteLLM:
- 2
Configure PostHog observability
RequiredConfigure PostHog by setting your project API key and host as well as adding
posthog
to your LiteLLM callback handlers. You can find your API key in your project settings. - 3
Call LLMs through LiteLLM
RequiredNow, when you use LiteLLM to call various LLM providers, PostHog automatically captures an
$ai_generation
event.Notes:
- This works with streaming responses by setting
stream=True
. - To disable logging for specific requests, add
{"no-log": true}
to metadata. - If you want to capture LLM events anonymously, don't pass a
user_id
in metadata. See our docs on anonymous vs identified events to learn more.
You can expect captured
$ai_generation
events to have the following properties:Property Description $ai_model
The specific model, like gpt-5-mini
orclaude-4-sonnet
$ai_latency
The latency of the LLM call in seconds $ai_tools
Tools and functions available to the LLM $ai_input
List of messages sent to the LLM $ai_input_tokens
The number of tokens in the input (often found in response.usage) $ai_output_choices
List of response choices from the LLM $ai_output_tokens
The number of tokens in the output (often found in response.usage
)$ai_total_cost_usd
The total cost in USD (input + output) ... See full list of properties - This works with streaming responses by setting
- 5
Capture embeddings
OptionalPostHog can also capture embedding generations as
$ai_embedding
events through LiteLLM: