Skip to main content

A next-level AgentOps monitoring library for Crew AI applications with enhanced metrics.

Project description

Agent Mont

Agent Mont Logo

Advanced Monitoring for AI Agents

Comprehensive metrics, insights, and visualization for Phidata and Crew AI applications

Python License Version


📊 Overview

Agent Mont is an advanced AgentOps monitoring library designed specifically for Phidata and Crew AI applications. It provides real-time insights into your AI agents' performance, resource utilization, and environmental impact.

✨ Key Features

  • 📝 Token Tracking - Precise accounting of input, output, and total tokens
  • 💰 Cost Analysis - Real-time cost calculation based on model-specific pricing
  • ⚡ Performance Metrics - Detailed execution time and resource utilization
  • 🔄 Throughput Monitoring - Tokens processed per second and operation latency
  • 🌱 Environmental Impact - Carbon emission estimates for responsible AI deployment
  • 📋 Comprehensive Logging - Detailed operational logs for debugging and analysis
  • 📊 Interactive Visualization - CLI summaries and Streamlit dashboard for visual insights

🚀 Installation

pip install agent-mont

🔍 Usage

Basic Example

from agent_mont import AgentMontExtended

# Initialize Agent Mont monitoring
mont = AgentMontExtended(model="gpt-4o")

# Start monitoring
mont.start()

# Your Crew AI operations go here
# result = your_ai_function()

# Set token counts
input_text = "Your input text here."
output_text = "Your output text here."
mont.set_token_counts(input_text=input_text, output_text=output_text)

# Measure operation latency
# result = mont.measure_operation(your_function, arg1, arg2)

# End monitoring
mont.end()

# Visualize the results
mont.visualize(method='cli')

Integration with Crew AI

from agent_mont import AgentMontExtended
from crewai import Crew, Agent, Task

# Initialize monitoring
mont = AgentMontExtended(model="gpt-4o")
mont.start()

# Define your Crew agents and tasks
agent = Agent(...)
task = Task(...)
crew = Crew(agents=[agent], tasks=[task])

# Run crew process
result = crew.kickoff()

# Extract token usage from crew output
mont.set_token_usage_from_crew_output(result)

# End monitoring and display metrics
mont.end()
mont.visualize(method='cli')

📖 API Reference

AgentMont Initialization

AgentMont(
    model: str,                      # LLM model identifier (e.g., "gpt-4o")
    enable_monitoring: bool = True,  # Toggle monitoring on/off
    encoding_name: str = "cl100k_base"  # Token encoding scheme
)

Core Methods

Method Description
start() Begin resource and metric monitoring
end() Stop monitoring and compute all metrics
set_token_counts(input_text, output_text) Set token usage based on text
measure_operation(func, *args, **kwargs) Wrap a function call to record its latency
set_token_usage_from_crew_output(crew_output) Extract token usage from a CrewOutput
visualize(method) Visualize metrics using CLI or Streamlit

📈 Visualization

CLI Summary

mont.visualize(method='cli')

Example output:

========== AGENT MONT METRICS ==========
Model: gpt-4o
Execution Time: 2.34s
Total Tokens: 1,245
Cost: $0.0237
Throughput: 532.1 tokens/sec
CPU Usage: 23.7%
Memory Usage: 145.2 MB
Carbon Emissions: 0.00021 gCO2eq
=======================================

Streamlit Dashboard

Create a visualization script:

# visualize.py
from agent_mont import AgentMontExtended

mont = AgentMontExtended(model="gpt-4o")
# Load metrics from logs or set directly
mont.set_token_counts("Example input", "Example output")
mont.end()
mont.visualize(method='streamlit')

Run the dashboard:

streamlit run visualize.py

📝 Logging

All events and metrics are logged to agent_mont.log with timestamps and event categories:

2025-03-15 14:32:17 [INFO] Agent Mont initialized with model: gpt-4o
2025-03-15 14:32:18 [INFO] Monitoring started
2025-03-15 14:32:20 [INFO] Token counts set: 145 input, 267 output
2025-03-15 14:32:21 [INFO] Monitoring ended
2025-03-15 14:32:21 [INFO] Metrics calculated: 412 tokens, $0.0082 cost, 1.73s execution time

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📧 Contact

Faisal Azeez - faisalazeeii786@gmail.com


Made with ❤️ for the AI agent community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_mont-0.1.1.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_mont-0.1.1-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file agent_mont-0.1.1.tar.gz.

File metadata

  • Download URL: agent_mont-0.1.1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for agent_mont-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2f99278d374b650884e60a9cdcb832a59aa87d4fb589180c2950e03575623253
MD5 e813e45834223ae49f4b2aa17a77f0ac
BLAKE2b-256 33c0bda8d8fd29db9bb366347d0a3987cf3815650c77f2cb7f5cd67d58a2dc50

See more details on using hashes here.

File details

Details for the file agent_mont-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: agent_mont-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for agent_mont-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f50b7e96ca0321ec460cff3277e8ca59733ec7c893ea9e85f8b6fe8c7beb39ef
MD5 349fd7cba07ef93063bcbc71142f1006
BLAKE2b-256 46c888708418a7f7e7038fe146f9691135a743213747fc8d338e2b82aef48fb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page