Skip to content

Releases: Mathews-Tom/FastADK

FastADK v0.2.0: Enterprise-Ready Agent Development Kit

Choose a tag to compare

@Mathews-Tom Mathews-Tom released this 09 Jul 19:52
27f735c

FastADK v0.2.0: Enterprise-Ready Agent Development Kit

Release Highlights

FastADK 0.2.0 is a major release that transforms the framework into an enterprise-ready agent development toolkit. This version introduces comprehensive token & cost tracking, advanced memory management, performance optimizations, extended integrations, improved developer experience, and robust observability features.

FastADK Banner

FastADK Poster

🚀 Major Features

💰 Token and Cost Management

  • Complete token usage tracking across all providers
  • Cost estimation based on provider-specific pricing
  • Configurable budgets with alerts and automatic cutoffs
  • Detailed metrics for token usage optimization

🧠 Advanced Context and Memory

  • Sliding window memory with automatic summarization
  • Vector store integration for semantic memory capabilities
  • Persistent storage backends (Redis, SQL) for production use
  • Customizable context policies for fine-grained control

⚡ Performance Optimizations

  • True async execution for all model and tool calls
  • Parallel workflow execution for complex operations
  • Intelligent caching to reduce redundant LLM calls
  • Lazy tool execution for improved efficiency
  • Batch processing utilities for high-throughput scenarios

🔌 Extensibility and Integrations

  • Pluggable model provider interface for custom backends
  • Dynamic plugin system for third-party extensions
  • Slack and Discord adapters for easy deployment
  • Multi-agent orchestration for complex scenarios
  • Fine-tuning helpers for specialized models

🛠️ Developer Experience

  • Interactive REPL mode for rapid prototyping
  • Enhanced CLI tools for project scaffolding and management
  • Comprehensive testing utilities with mocks and scenarios
  • VSCode integration with snippets and settings
  • Configuration validation and hot reload capabilities

📊 Observability and Monitoring

  • Structured logging for all agent events
  • OpenTelemetry integration for distributed tracing
  • Prometheus metrics for real-time monitoring
  • Sensitive data redaction for privacy compliance

📚 Documentation and Examples

  • Expanded cookbook with practical recipes
  • New example agents for real-world use cases
  • Streamlit UI example for web interfaces
  • Comprehensive API reference and conceptual guides

📋 Detailed Changelog

Added

Token and Cost Tracking

  • Added TokenUsage data class to record prompt, completion, and total tokens
  • Extended each provider client to capture usage from responses
  • Created CostCalculator utility for estimating costs based on token usage
  • Added TokenBudget component with configurable budgets and alerts
  • Added structured logging for token usage and costs
  • Added Prometheus metrics for token usage and cost estimation

Context Management and Memory Improvements

  • Added ContextPolicy abstract class with built-in policies (MostRecent, SummarizeOlder, HybridVectorRetrieval)
  • Implemented SummarizationService for LLM-based conversation summarization
  • Added vector store backend integration with VectorMemoryBackend
  • Implemented persistent memory backends for Redis and SQL
  • Added configuration options for memory policies

Scalability and Performance Optimizations

  • Improved async execution for all model and tool calls
  • Enhanced Workflow class to support concurrent sub-tasks
  • Implemented CacheManager with in-memory LRU and Redis options
  • Added lazy tool execution logic to improve efficiency
  • Created BatchUtils for common bulk operations

Extensibility and Integration

  • Defined ModelProviderABC interface for custom providers
  • Implemented PluginManager for discovering and loading custom modules
  • Added Slack and Discord adapters for integration
  • Added multi-agent orchestration API
  • Included fine-tuning helper module

Developer Experience and Tooling

  • Extended CLI with repl, init, and config validate commands
  • Added verbose debugging with chain-of-thought capture
  • Created MockLLM and MockTool classes for testing
  • Added test scenario decorators for structured testing
  • Added VSCode snippets and configuration support
  • Implemented config reload endpoint

Observability and Monitoring

  • Added structured JSON logging for all agent events
  • Integrated OpenTelemetry for traces and spans
  • Added Prometheus metrics endpoint
  • Implemented redaction filter for sensitive data

UI/UX and Documentation

  • Added cookbook, plugin guide, and performance tuning documentation
  • Expanded examples folder with new agent templates
  • Implemented project scaffolding with fastadk init
  • Added Streamlit chat UI example
  • Added community feedback links

Changed

  • Improved async performance and error handling
  • Enhanced memory management for long conversations
  • Optimized token usage and cost calculations
  • Upgraded provider integrations with the latest APIs

Fixed

  • Various bug fixes and stability improvements
  • Fixed memory leaks in long-running conversations
  • Addressed race conditions in async workflows
  • Improved error reporting and exception handling

🔧 Installation

pip install fastadk==0.2.0

Or using uv:

uv add fastadk==0.2.0

📖 Documentation

For comprehensive documentation, visit:
https://fastadk.dev

🎯 Example Usage

from fastadk.core import Agent, BaseAgent, tool

@Agent(
    model="gemini-1.5-pro",
    memory_backend="redis",
    cache_enabled=True
)
class WeatherAgent(BaseAgent):
    @tool
    def get_weather(self, location: str) -> str:
        """Get weather for a location."""
        # Implementation...
        return f"Weather for {location}: Sunny, 75°F"
    
    @tool
    def get_forecast(self, location: str, days: int = 5) -> list:
        """Get forecast for a location."""
        # Implementation...
        return [{"day": i, "forecast": "Sunny"} for i in range(1, days+1)]

# Create and run the agent
agent = WeatherAgent()
result = await agent.run("What's the weather in New York?")

❤️ Acknowledgements

Thank you to all contributors who helped make this release possible! Special thanks to our early adopters who provided valuable feedback and use cases.

🔜 What's Next

We're already planning the next release with:

  • Enhanced RAG capabilities
  • More third-party integrations
  • Function calling improvements
  • Multi-modal support

Stay tuned and join our community!

FastADK 0.1.0 Release Notes

Choose a tag to compare

@Mathews-Tom Mathews-Tom released this 05 Jul 18:47

FastADK 0.1.0 Release Notes

🚀 First Public Release

We're thrilled to announce the first public release of FastADK, now available on PyPI! FastADK is a developer-friendly framework for building AI agents with Google ADK, providing high-level abstractions, declarative APIs, and intuitive tooling to dramatically improve the agent development experience.

📦 Installation

FastADK can now be installed directly from PyPI:

## With pip
pip install fastadk

# With uv
uv add fastadk

✨ Key Features

  • Declarative Agent Creation: Create powerful AI agents with minimal boilerplate using the @agent decorator
  • Tool Management: Easily implement agent tools with the @tool decorator, with automatic type validation
  • Multi-Provider Support: Works with Gemini, OpenAI, and Anthropic models out of the box
  • Memory Integration: Built-in support for conversation memory with pluggable backends
  • Exception Handling: Comprehensive exception framework for robust error handling
  • HTTP API Integration: Serve agents via FastAPI with a few lines of code
  • Workflow Orchestration: Create complex agent workflows with sequential and parallel execution
  • Type Safety: Strong typing support throughout the framework for better IDE integration and runtime validation

📚 Examples

The package includes several examples demonstrating key features:

Basic Examples

  • Weather Agent: A simple agent that fetches real weather data and provides forecasts
  • Exception Demo: Demonstrates the comprehensive exception handling system

Advanced Examples

  • Travel Assistant: A fully-featured travel assistant with memory, multiple tools, and lifecycle hooks
  • Workflow Demo: Shows how to build complex workflows with conditional branching and parallel execution

API Examples

  • HTTP Agent: Multi-agent HTTP API server demonstrating how to serve agents via FastAPI

🛠️ Breaking Changes

  • This is the first public release, so there are no breaking changes to report.

🔜 Coming Soon

  • Enhanced vector memory support
  • More pre-built agent templates
  • Advanced caching mechanisms
  • Improved observability and monitoring
  • Fine-tuning integrations

🙏 Acknowledgments

We'd like to thank all the contributors who helped make this release possible. FastADK builds on the foundation provided by Google's Agent Development Kit and aims to bring a more developer-friendly experience to agent building.

Documentation

For complete documentation, visit our GitHub repository.

Issues and Feedback

If you encounter any issues or have feedback, please open an issue on our GitHub repository.