feat: add LiteLLM Responses API attribute extraction and test canary#1413
Closed
icohangar-ops wants to merge 1 commit into
Closed
feat: add LiteLLM Responses API attribute extraction and test canary#1413icohangar-ops wants to merge 1 commit into
icohangar-ops wants to merge 1 commit into
Conversation
Adds a LiteLLM instrumentation provider directory with attribute extraction for the LiteLLM Responses API endpoint. The handler normalizes ResponsesAPIResponse fields (input_tokens/output_tokens) to the standard OTel span attribute format. Partially addresses #1028
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Partially addresses #1028
Summary
Adds the LiteLLM instrumentation provider with attribute extraction for the Responses API endpoint (
litellm.responses()). The handler normalizesResponsesAPIResponsefields to standard OTel span attributes.Changes
agentops/instrumentation/providers/litellm/__init__.py— LiteLLM instrumentation provider package markeragentops/instrumentation/providers/litellm/wrappers/— wrapper modulesagentops/instrumentation/providers/litellm/wrappers/responses.py— attribute extraction from ResponsesAPIResponse objects (input_tokens/output_tokens → prompt_tokens/completion_tokens mapping)tests/core_manual_tests/providers/litellm_canary.py— integration test for chat completion, streaming, and async pathsNotes
This is the attribute extraction layer. Full wiring into LiteLLM's callback pipeline (success_callback = ["agentops"]) requires additional changes in the LiteLLM callback integration modules.