A dynamic, industry-agnostic AI agent framework for seamless multi-provider integration
Project description
Nijika AI Agent Framework
A dynamic, industry-agnostic AI agent framework designed for seamless integration across multiple AI providers and models.
๐ Overview
Nijika is a comprehensive Python-based AI agent framework that provides:
- Multi-Provider Support: Seamless integration with OpenAI, Anthropic, Google, Azure, and more
- Workflow Management: Visual workflow designer and execution engine
- Tools Integration: Extensible tool system for various functionalities
- RAG Capabilities: Built-in Retrieval-Augmented Generation support
- Planning & Execution: Advanced planning algorithms with execution monitoring
- Industry Agnostic: Adaptable to finance, healthcare, e-commerce, education, and more
๐๏ธ Architecture
nijika/
โโโ core/ # Core framework components
โ โโโ agent/ # Agent management and lifecycle
โ โโโ providers/ # AI provider abstractions
โ โโโ memory/ # Memory management system
โ โโโ config/ # Configuration management
โโโ workflows/ # Workflow management system
โ โโโ engine/ # Workflow execution engine
โ โโโ designer/ # Visual workflow designer
โ โโโ templates/ # Pre-built workflow templates
โโโ tools/ # Tool integration system
โ โโโ registry/ # Tool registry and discovery
โ โโโ builtin/ # Built-in tools
โ โโโ custom/ # Custom tool development
โโโ rag/ # RAG implementation
โ โโโ retrievers/ # Document retrieval systems
โ โโโ embeddings/ # Embedding management
โ โโโ storage/ # Vector storage backends
โโโ planning/ # Planning and reasoning
โ โโโ strategies/ # Planning strategies
โ โโโ executors/ # Execution engines
โ โโโ monitors/ # Execution monitoring
โโโ ui/ # User interface components
โ โโโ dashboard/ # Management dashboard
โ โโโ chat/ # Chat interface
โ โโโ api/ # REST API
โโโ examples/ # Example implementations
๐ฆ Key Features
1. Multi-Provider AI Integration
- Unified interface for various AI providers
- Dynamic model switching and load balancing
- Cost optimization and rate limiting
- Provider-specific optimizations
2. Workflow Management
- Visual drag-and-drop workflow designer
- Conditional logic and branching
- Parallel execution and synchronization
- Workflow templates for common use cases
3. Tools & Extensions
- Plugin architecture for custom tools
- Built-in tools for common operations
- Tool composition and chaining
- Security and sandboxing
4. RAG System
- Multiple vector database support
- Hybrid search capabilities
- Document chunking and preprocessing
- Context-aware retrieval
5. Planning & Execution
- Multi-step planning algorithms
- Self-correcting execution
- Progress monitoring and logging
- Rollback and error handling
๐ Quick Start
from nijika import Agent, WorkflowEngine, RAGSystem
# Create an agent with multiple providers
agent = Agent(
name="customer_service_agent",
providers=["openai", "anthropic"],
tools=["email", "database", "knowledge_base"]
)
# Setup RAG system
rag = RAGSystem(
documents_path="./knowledge_base",
embeddings_provider="openai",
vector_store="faiss"
)
# Create workflow
workflow = WorkflowEngine().create_workflow([
{"step": "understand_query", "tool": "nlp_processor"},
{"step": "retrieve_context", "tool": "rag_retriever"},
{"step": "generate_response", "tool": "llm_generator"},
{"step": "validate_response", "tool": "quality_checker"}
])
# Execute
result = agent.execute(
query="How can I return a product?",
workflow=workflow,
context=rag.get_context()
)
๐ญ Industry Applications
Finance
- Fraud detection and risk assessment
- Automated trading strategies
- Customer service and support
- Regulatory compliance monitoring
Healthcare
- Medical diagnosis assistance
- Patient care coordination
- Drug discovery research
- Clinical trial management
E-commerce
- Product recommendations
- Customer support automation
- Inventory management
- Price optimization
Education
- Personalized learning paths
- Automated grading and feedback
- Content generation
- Student support systems
๐ง Installation
pip install nijika
๐ Documentation
๐ค Contributing
We welcome contributions! Please see our Contributing Guide for details.
๐ License
MIT License - see LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nijika-1.0.0.tar.gz.
File metadata
- Download URL: nijika-1.0.0.tar.gz
- Upload date:
- Size: 67.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26d9596016e3192cef4d1a3d0245a4cd81298ce6d5975651b7660a7ee20d0c6b
|
|
| MD5 |
3275fdf8a4e0ab398a05e2a044dd0202
|
|
| BLAKE2b-256 |
ca7e063087574d0e3645308134b4f8df35530b4b4ad41d6a99e6ddd6786ddf41
|
File details
Details for the file nijika-1.0.0-py3-none-any.whl.
File metadata
- Download URL: nijika-1.0.0-py3-none-any.whl
- Upload date:
- Size: 40.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d51ca6835826c5d79ba744130e78e8fa2b209f414631c52e6a17a0b318691e02
|
|
| MD5 |
d20fc8e4ea46d0f07ad580c1c0a75ed9
|
|
| BLAKE2b-256 |
31a5c1b4ea83987973cf8be6f23bcc027fe3b63a15b7f4e434ab8b9dbdb3dea8
|