Skip to main content

A dynamic and flexible AI agent framework for building intelligent, multi-modal AI agents

Project description

GRAMI-AI: Dynamic AI Agent Framework

Version Python Versions License GitHub Stars

Vision and Purpose

GRAMI-AI is a revolutionary, async-first AI agent framework designed to solve complex computational challenges through intelligent, collaborative agent interactions. Our mission is to create a highly flexible, extensible platform that empowers developers to build sophisticated, context-aware AI systems capable of adapting and collaborating across diverse domains.

Framework Philosophy

The core philosophy of GRAMI-AI is to provide an abstraction layer that:

  • Enables dynamic creation of AI agents with specific roles and capabilities
  • Supports multiple Language Models (LLMs) with their unique interfaces
  • Allows seamless integration of communication protocols
  • Provides flexible memory management
  • Supports extensible tool ecosystems

Key Architectural Goals

1. Dynamic Agent Creation

  • Define agents with precise roles (e.g., Growth Manager, Content Creator)
  • Customize system instructions and behavior
  • Support multi-modal capabilities (text, image, video generation)

2. LLM Abstraction

  • Unified interface for different LLMs (Gemini, OpenAI, Anthropic, Ollama)
  • Handle provider-specific nuances (prompt building, chat interfaces)
  • Flexible function/tool integration

3. Communication Interfaces

  • Support multiple protocols (WebSocket, REST, Kafka)
  • Enable inter-agent communication
  • Implement global state management

4. Memory Management

  • Pluggable memory providers (In-Memory, Redis, DynamoDB)
  • Persistent conversation and task history
  • Scalable state storage

5. Tool Ecosystem

  • Default utility tools (Kafka publisher, web search)
  • Easy custom tool development
  • Provider-specific function handling

Roadmap and TODO List

Development Checklist

Core Framework Design

  • Implement AsyncAgent base class with dynamic configuration
  • Create flexible system instruction definition mechanism
  • Design abstract LLM provider interface
  • Develop dynamic role and persona assignment system
  • Implement multi-modal agent capabilities (text, image, video)

LLM Provider Abstraction

  • Unified interface for diverse LLM providers
    • Google Gemini integration (start_chat(), send_message())
    • OpenAI ChatGPT integration
    • Anthropic Claude integration
    • Ollama local LLM support
  • Standardize function/tool calling across providers
  • Dynamic prompt engineering support
  • Provider-specific configuration handling

Communication Interfaces

  • WebSocket real-time communication
  • REST API endpoint design
  • Kafka inter-agent communication
  • gRPC support
  • Event-driven agent notification system
  • Secure communication protocols

Memory and State Management

  • Pluggable memory providers
    • In-memory state storage
    • Redis distributed memory
    • DynamoDB scalable storage
    • S3 content storage
  • Conversation and task history tracking
  • Global state management for agent crews
  • Persistent task and interaction logs

Tool and Function Ecosystem

  • Extensible tool integration framework
  • Default utility tools
    • Kafka message publisher
    • Web search utility
    • Content analysis tool
  • Provider-specific function calling support
  • Community tool marketplace
  • Easy custom tool development

Agent Crew Collaboration

  • Inter-agent communication protocol
  • Workflow and task delegation mechanisms
  • Approval and review workflows
  • Notification and escalation systems
  • Dynamic team composition
  • Shared context and memory management

Use Case Implementations

  • Digital Agency workflow template
    • Growth Manager agent
    • Content Creator agent
    • Trend Researcher agent
    • Media Creation agent
  • Customer interaction management
  • Approval and revision cycles

Security and Compliance

  • Secure credential management
  • Role-based access control
  • Audit logging
  • Compliance with data protection regulations

Performance and Scalability

  • Async-first design
  • Horizontal scaling support
  • Performance benchmarking
  • Resource optimization

Testing and Quality

  • Comprehensive unit testing
  • Integration testing for agent interactions
  • Mocking frameworks for LLM providers
  • Continuous integration setup

Documentation and Community

  • Detailed API documentation
  • Comprehensive developer guides
  • Example use case implementations
  • Contribution guidelines
  • Community tool submission process
  • Regular maintenance and updates

Future Roadmap

  • Payment integration solutions
  • Advanced context understanding
  • Multi-language support
  • Enterprise-grade security features
  • AI agent marketplace

Conceptual Agent Example

agent = AsyncAgent(
    llm=GeminiProvider(),            # LLM Provider
    memory=RedisMemoryProvider(),    # Memory Management
    tools=[                          # Extensible Tools
        KafkaPublisher(),
        WebSearchTool(),
        ContentAnalysisTool()
    ],
    system_instructions="You are a Growth Manager...",  # Role Definition
    communication_interface=WebSocketInterface(),
    storage=S3StorageProvider(),     # Optional Storage
    crew_config={                    # Optional Crew Configuration
        'team_members': ['ContentCreator', 'Researcher'],
        'communication_protocol': 'kafka'
    }
)

Community Contribution

We envision GRAMI-AI as a collaborative ecosystem where developers can:

  • Create and share custom tools
  • Develop new LLM integrations
  • Build memory providers
  • Implement communication interfaces
  • Contribute to core framework development

Current Capabilities

  • Async-first architecture
  • Basic agent creation
  • Gemini LLM integration
  • Simple tool support
  • Advanced inter-agent communication
  • Multiple memory providers
  • Comprehensive LLM support

Getting Started

pip install grami-ai

License

MIT License - Empowering open-source innovation

About YAFATEK Solutions

Pioneering AI innovation through flexible, powerful frameworks.

Contact & Support


Star ⭐ the project if you believe in collaborative AI innovation!

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

grami_ai-0.3.112.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

grami_ai-0.3.112-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file grami_ai-0.3.112.tar.gz.

File metadata

  • Download URL: grami_ai-0.3.112.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for grami_ai-0.3.112.tar.gz
Algorithm Hash digest
SHA256 eaff57b539cff3900d755aab553f5e12103b5c275d6879fd485a7134ba4e0f93
MD5 dc6f4c3ea86cd244562a87f7ae67c7b6
BLAKE2b-256 86261e4dc78b8cabadf66d315328a9c01a0d08cadcbb87e7670ca88ae25e266c

See more details on using hashes here.

File details

Details for the file grami_ai-0.3.112-py3-none-any.whl.

File metadata

  • Download URL: grami_ai-0.3.112-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for grami_ai-0.3.112-py3-none-any.whl
Algorithm Hash digest
SHA256 5c2625ed8ea96b2efc778ff28421555076a8b2f460757db94f8b132ab63134f4
MD5 b0c3902cfdf88799c6840c476d871f05
BLAKE2b-256 5b4b95fd4c5be1f5fd857e540ef07536914b59a99c7c29bfe67ec618fe2eeb2e

See more details on using hashes here.

Supported by

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