Metadata-Version: 2.4
Name: aiccel
Version: 3.1.0
Summary: AIccel is a versatile Python library for building lightweight AI agents with multiple LLM providers
Author-email: AROMAL TR <aromaltr2000@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/AromalTR/aiccel
Project-URL: Repository, https://github.com/AromalTR/aiccel.git
Project-URL: Documentation, https://github.com/AromalTR/aiccel#readme
Project-URL: Bug Tracker, https://github.com/AromalTR/aiccel/issues
Keywords: ai,agents,automation,llm,openai,gemini,groq,multi-agent,agentic-ai,tools,rag
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: openai
Requires-Dist: chromadb
Requires-Dist: PyPDF2
Requires-Dist: requests
Requires-Dist: orjson
Requires-Dist: cachetools
Requires-Dist: tenacity
Requires-Dist: aiohttp
Requires-Dist: numpy
Requires-Dist: google-genai
Requires-Dist: textsplitter
Requires-Dist: FlagEmbedding
Requires-Dist: gliner
Requires-Dist: cryptography
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: pandas>=2.0.0; extra == "dev"
Provides-Extra: privacy
Requires-Dist: gliner>=0.1.0; extra == "privacy"
Provides-Extra: all
Requires-Dist: gliner>=0.1.0; extra == "all"
Requires-Dist: transformers; extra == "all"
Requires-Dist: torch; extra == "all"
Provides-Extra: safety
Requires-Dist: transformers; extra == "safety"
Requires-Dist: torch; extra == "safety"
Provides-Extra: execution
Requires-Dist: fastapi; extra == "execution"
Requires-Dist: uvicorn; extra == "execution"

# AICCEL Framework 3.1: The Production-Grade Agentic Library

**AICCEL (AI-Accelerated Agentic Library)** is a security-first, high-performance framework for building orchestrated AI systems. Designed for developers who need speed (~50ms startup), modularity, and enterprise-grade safety.

---

## 📦 Installation

AICCEL is modular. Install only what you need to keep your deployment lightweight.

```bash
# 🚀 Core Framework (Lightweight)
pip install aiccel

# 🛡️ Production Security (Jailbreak Detection & Transformers)
pip install aiccel[safety]

# 🕵️‍♀️ Privacy Suite (PII Masking with GLiNER)
pip install aiccel[privacy]

# 📦 The Full Suite (Recommended for Dev)
pip install aiccel[all]
```

---

## 🏗️ Building Agents

The `Agent` class handles LLM interaction, tool execution, and session memory.

### Quick Start
```python
from aiccel import Agent, GeminiProvider, AgentConfig

# 1. Setup
provider = GeminiProvider(api_key="...", model="gemini-2.5-flash")
config = AgentConfig(safety_enabled=True, verbose=True)

# 2. Initialize
agent = Agent(
    provider=provider, 
    config=config,
    instructions="You are a helpful analyst."
)

# 3. Run (Sync or Async)
result = agent.run("Summarize the impact of AI on medicine.")
print(result['response'])
```

### Advanced Configuration (`AgentConfig`)

| Flag | Default | Description |
| :--- | :--- | :--- |
| **`verbose`** | `False` | Enable detailed thinking & tool logs. |
| **`timeout`** | `60.0` | Max seconds per generation. |
| **`safety_enabled`**| `False` | Enable transformer-based Jailbreak guard. |
| **`lightweight`** | `False` | Disable heavy model loading for serverless/edge. |

---

## 🎼 Orchestration: The Agent Manager

Manage multiple specialized agents using the **Plan-Execute-Synthesize** workflow.

```python
from aiccel.manager import AgentManager

# 1. Initialize specialized agents
researcher = Agent(name="Researcher", description="Finds facts.")
writer = Agent(name="Writer", description="Writes articles.")

# 2. Orchestrate
manager = AgentManager(llm_provider=provider, agents=[researcher, writer])
response = await manager.collaborate_async("Research fusion energy and write a summary.")
```

---

## 🛡️ Security & Privacy Suite

### 1. Jailbreak Guard
Automatically blocks malicious prompts designed to bypass instructions.
```python
# Enabled via config.safety_enabled = True
# Uses 'traromal/AIccel_Jailbreak' model
```

### 2. PII Masking
Protects sensitive data (Email, Phone, Names) from leaving your server.
```python
from aiccel.privacy import mask_text, unmask_text

result = mask_text("Contact John at john@example.com")
# Output: "Contact [PERSON_1] at [EMAIL_1]"
```

### 3. Pandora: Isolated Execution
AICCEL's data analysis engine (Pandora) supports three isolation modes:
*   **`local`**: Restricted builtins (Fast).
*   **`subprocess`**: Fresh OS process (Medium Isolation).
*   **`service`**: Remote microservice (Maximum Security).

```python
from aiccel.pandora import Pandora
pan = Pandora(provider, execution_mode="subprocess")
df = pan.do(df, "Calculate growth rate and mask customer names")
```

---

## 🔀 Workflow DAGs

Build deterministic pipelines using a Directed Acyclic Graph.

```python
from aiccel import WorkflowBuilder, WorkflowExecutor

workflow = (
    WorkflowBuilder("data_pipeline")
    .add_agent("fetch", agent1, output_key="raw_data")
    .add_agent("process", agent2, input_key="raw_data")
    .chain("fetch", "process")
    .build()
)

result = await WorkflowExecutor().run(workflow, inputs)
```

---

## 🔌 API Reference & Extensibility

### Supported Providers
*   `GeminiProvider` (Google)
*   `OpenAIProvider` (OpenAI)
*   `GroqProvider` (Llama 3.1, Mixtral)

### Custom Tools
Subclass `BaseTool` to extend your agents' capabilities with JSON-schema validation.

---

*Built for speed, built for safety. Built by the AICCEL Team.*
