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.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nijika-1.0.0.tar.gz
(67.6 kB
view details)
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
nijika-1.0.0-py3-none-any.whl
(40.4 kB
view details)
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
|