instrument=True scans for the libraries below and turns on the ones present.
Prefer to be explicit? Call a single instrumentor yourself — the table shows how.
In TypeScript/JavaScript, add any OpenTelemetry GenAI instrumentation to your
NodeSDK and ship it with bryelSpanProcessor — see TypeScript. Any other language can send over the HTTP API.Provider SDKs
| Provider | Package | Instrumentor |
|---|---|---|
| OpenAI | openinference-instrumentation-openai | OpenAIInstrumentor |
| Anthropic | openinference-instrumentation-anthropic | AnthropicInstrumentor |
| Amazon Bedrock | openinference-instrumentation-bedrock | BedrockInstrumentor |
| Google GenAI | openinference-instrumentation-google-genai | GoogleGenAIInstrumentor |
| VertexAI | openinference-instrumentation-vertexai | VertexAIInstrumentor |
| Groq | openinference-instrumentation-groq | GroqInstrumentor |
| Mistral | openinference-instrumentation-mistralai | MistralAIInstrumentor |
| LiteLLM | openinference-instrumentation-litellm | LiteLLMInstrumentor |
| Instructor | openinference-instrumentation-instructor | InstructorInstrumentor |
Agent SDKs
| SDK | Package | Instrumentor |
|---|---|---|
| OpenAI Agents | openinference-instrumentation-openai-agents | OpenAIAgentsInstrumentor |
| Google ADK | openinference-instrumentation-google-adk | GoogleADKInstrumentor |
Frameworks
| Framework | Package | Instrumentor |
|---|---|---|
| LangChain / LangGraph | openinference-instrumentation-langchain | LangChainInstrumentor |
| LlamaIndex | openinference-instrumentation-llama-index | LlamaIndexInstrumentor |
| CrewAI | openinference-instrumentation-crewai | CrewAIInstrumentor |
| DSPy | openinference-instrumentation-dspy | DSPyInstrumentor |
| Haystack | openinference-instrumentation-haystack | HaystackInstrumentor |
| smolagents | openinference-instrumentation-smolagents | SmolagentsInstrumentor |
| Agno | openinference-instrumentation-agno | AgnoInstrumentor |
| AutoGen | openinference-instrumentation-autogen | AutogenInstrumentor |
| Guardrails | openinference-instrumentation-guardrails | GuardrailsInstrumentor |
Two special cases:
- AutoGen instruments the classic
ConversableAgentAPI (theag2package), not the newerautogen-agentchatrewrite. - MCP (
openinference-instrumentation-mcp→MCPInstrumentor) propagates trace context across the MCP client/server boundary so tool calls stay on the same trace — it stitches spans rather than emitting model spans itself. Add it alongside the instrumentor for whatever runs your model.
Turning one on explicitly
Install the instrumentor and call it afterbryel.init():
instrument=True does — it just calls every instrumentor
it finds. Use the explicit form when you want to trace one library and not the
rest.