Using this to track some gaps as I go about monkey patching various APIs as part of the openinference donation stuff..
Gaps:
A generic way for the user to provide attributes that make it into the span.. We use a ContextVar to do this for the GenerateContent method, and could do the same for the other APIs..
Embeddings:
- We could allow capturing various
EmbedContentConfig in attributes the same way we do GenerateContentConfig in the generate_content instrumentation.
- Openinference captures the actual raw embeddings in their instrumentation -- that seems too big to put into an attribute..
Interactions:
- Execute tool span, and tool definitions.
- Need to capture interaction ID.
- Expand input / output messages to capture all inputs / outputs -- the SDK accepts so many different types
Using this to track some gaps as I go about monkey patching various APIs as part of the openinference donation stuff..
Gaps:
A generic way for the user to provide attributes that make it into the span.. We use a
ContextVarto do this for theGenerateContentmethod, and could do the same for the other APIs..Embeddings:
EmbedContentConfigin attributes the same way we doGenerateContentConfigin thegenerate_contentinstrumentation.Interactions: