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

Overview

GRAMI-AI is a revolutionary, async-first AI agent framework designed to create intelligent, collaborative, and highly customizable AI agents across multiple domains.

Key Features

  • Dynamic AI Agent Creation
  • Multi-LLM Support (Gemini, OpenAI, Anthropic, Ollama)
  • Extensible Tool Ecosystem
  • Multiple Communication Interfaces
  • Flexible Memory Management
  • Secure and Scalable Architecture

Installation

Using pip

pip install grami-ai

From Source

git clone https://github.com/YAFATEK/grami-ai.git
cd grami-ai
pip install -e .

Quick Start

Basic Agent Creation

from grami.agent import Agent
from grami.providers import GeminiProvider

# Initialize a Gemini-powered Agent
agent = Agent(
    name="AssistantAI",
    role="Helpful Digital Assistant",
    llm_provider=GeminiProvider(api_key="YOUR_API_KEY"),
    tools=[WebSearchTool(), CalculatorTool()]
)

# Send a message
response = await agent.send_message("Help me plan a trip to Paris")
print(response)

Examples

We provide a variety of example implementations to help you get started:

Available Examples

  1. Basic Agents

    • examples/gemini_example.py: Multi-tool Gemini Agent
    • examples/openai_example.py: OpenAI-powered Agent
    • examples/anthropic_example.py: Claude Agent Implementation
  2. Advanced Scenarios

    • examples/agent_crew_example.py: Multi-Agent Collaboration
    • examples/web_research_agent.py: Web Research Specialist
    • examples/content_creation_agent.py: Content Generation Agent
  3. Tool Integration

    • examples/custom_tool_example.py: Creating Custom Tools
    • examples/kafka_communication_example.py: Inter-Agent Communication

Documentation

For detailed documentation, visit our Documentation Website

Contributing

We welcome contributions! Please see our Contribution Guidelines

License

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

Community

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

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.114.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

grami_ai-0.3.114-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: grami_ai-0.3.114.tar.gz
  • Upload date:
  • Size: 10.2 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.114.tar.gz
Algorithm Hash digest
SHA256 dc92f75ab4442e20d4616b824841a40671fbf9e9f9036e763326f5945cd50369
MD5 669d21169f082883a719bc051323f324
BLAKE2b-256 a76f1d589612803666794355295ffca59dcd67826f27375d821774a6102ec09a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: grami_ai-0.3.114-py3-none-any.whl
  • Upload date:
  • Size: 12.9 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.114-py3-none-any.whl
Algorithm Hash digest
SHA256 1e7f063f9b156643ed241521c6d4e7a1b78e0f2458be3bd515803ebb5a2b618b
MD5 71336438b08f1da261a1480a17806d3a
BLAKE2b-256 e2e252dafb823d32498d11607a9b287a5b40ef60479fd77d343c59861c9bb269

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