-
Notifications
You must be signed in to change notification settings - Fork 0
Supported Integrations
tmam auto-instruments 40+ LLM providers, agent frameworks, and vector databases the moment they are detected in your environment. No extra code is required — just call init() and use your libraries as normal.
Provider | Package | Async Support -- | -- | -- OpenAI | openai | ✅ Anthropic | anthropic | ✅ Cohere | cohere | ✅ Mistral | mistralai | ✅ AWS Bedrock | boto3 | — Google Vertex AI | vertexai | ✅ Google AI Studio | google-genai | — Azure AI Inference | azure-ai-inference | ✅ Groq | groq | ✅ Ollama | ollama | — vLLM | vllm | — Together AI | together | ✅ GPT4All | gpt4all | — LiteLLM | litellm | — Reka | reka-api | ✅ PremAI | premai | — AI21 | ai21 | — ElevenLabs | elevenlabs | ✅ AssemblyAI | assemblyai | — HuggingFace Transformers | transformers | —
Enable with collect_gpu_stats=True in init(). See GPU Monitoring.
Every LLM call captures:
- Model name and provider
- Input prompt tokens, output completion tokens, total tokens
- Estimated cost (based on published pricing)
- Request duration (ms)
- Time to first token (TTFT) for streaming calls
- Time between tokens (TBT) for streaming calls
- Finish reason
- Response ID
- Prompt and completion text (if
capture_message_content=True) - Exceptions and error messages
Agent spans capture:
- Agent name and role
- Tool calls made
- Sub-span hierarchy (agent → tool → LLM)
- Input/output at each step
Vector DB spans capture:
- Operation type (query, insert, delete, etc.)
- Collection/index name
- Number of results returned
- Query duration
from tmam import init
init(
url="...",
public_key="...",
secrect_key="...",
disabled_instrumentors=["openai", "chroma"], # skip these
)
For code not covered by auto-instrumentation, use the @trace decorator or start_trace() context manager.
tmam auto-instruments 40+ LLM providers, agent frameworks, and vector databases the moment they are detected in your environment. No extra code is required — just call init() and use your libraries as normal.
| Provider | Package | Async Support |
|---|---|---|
| OpenAI | openai |
✅ |
| Anthropic | anthropic |
✅ |
| Cohere | cohere |
✅ |
| Mistral | mistralai |
✅ |
| AWS Bedrock | boto3 |
— |
| Google Vertex AI | vertexai |
✅ |
| Google AI Studio | google-genai |
— |
| Azure AI Inference | azure-ai-inference |
✅ |
| Groq | groq |
✅ |
| Ollama | ollama |
— |
| vLLM | vllm |
— |
| Together AI | together |
✅ |
| GPT4All | gpt4all |
— |
| LiteLLM | litellm |
— |
| Reka | reka-api |
✅ |
| PremAI | premai |
— |
| AI21 | ai21 |
— |
| ElevenLabs | elevenlabs |
✅ |
| AssemblyAI | assemblyai |
— |
| HuggingFace Transformers | transformers |
— |
| Framework | Package |
|---|---|
| LangChain | langchain |
| LlamaIndex | llama-index |
| CrewAI | crewai |
| AG2 (AutoGen) | ag2 |
| Haystack | haystack-ai |
| Phidata | phidata |
| Dynamiq | dynamiq |
| ControlFlow | controlflow |
| Julep | julep |
| Mem0 | mem0ai |
| EmbedChain | embedchain |
| MultiOn | multion |
| Letta | letta |
| OpenAI Agents |
openai (agents SDK) |
| Database | Package |
|---|---|
| Chroma | chromadb |
| Pinecone | pinecone |
| Qdrant | qdrant-client |
| Milvus | pymilvus |
| Astra DB | astrapy |
| Tool | Package |
|---|---|
| Crawl4AI | crawl4ai |
| FireCrawl | firecrawl-py |
| GPU Vendor | Library |
|---|---|
| NVIDIA | pynvml |
| AMD | amdsmi |
Enable with collect_gpu_stats=True in init(). See [GPU Monitoring](GPU-Monitoring).
Every LLM call captures:
- Model name and provider
- Input prompt tokens, output completion tokens, total tokens
- Estimated cost (based on published pricing)
- Request duration (ms)
- Time to first token (TTFT) for streaming calls
- Time between tokens (TBT) for streaming calls
- Finish reason
- Response ID
- Prompt and completion text (if
capture_message_content=True) - Exceptions and error messages
Agent spans capture:
- Agent name and role
- Tool calls made
- Sub-span hierarchy (agent → tool → LLM)
- Input/output at each step
Vector DB spans capture:
- Operation type (query, insert, delete, etc.)
- Collection/index name
- Number of results returned
- Query duration
from tmam import init
init(
url="...",
public_key="...",
secrect_key="...",
disabled_instrumentors=["openai", "chroma"], # skip these
)For code not covered by auto-instrumentation, use the @trace decorator or start_trace() context manager.