aiecs


Nameaiecs JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryAI Execute Services - A middleware framework for AI-powered task execution and tool orchestration
upload_time2025-09-18 16:16:07
maintainerNone
docs_urlNone
authorNone
requires_python<3.13,>=3.10
licenseNone
keywords ai middleware llm orchestration async tools
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # AIECS - AI Execute Services

[![Python Version](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![PyPI version](https://badge.fury.io/py/aiecs.svg)](https://badge.fury.io/py/aiecs)

AIECS (AI Execute Services) is a powerful Python middleware framework for building AI-powered applications with tool orchestration, task execution, and multi-provider LLM support.

## Features

- **Multi-Provider LLM Support**: Seamlessly integrate with OpenAI, Google Vertex AI, and xAI
- **Tool Orchestration**: Extensible tool system for various tasks (web scraping, data analysis, document processing, etc.)
- **Asynchronous Task Execution**: Built on Celery for scalable task processing
- **Real-time Communication**: WebSocket support for live updates and progress tracking
- **Enterprise-Ready**: Production-grade architecture with PostgreSQL, Redis, and Google Cloud Storage integration
- **Extensible Architecture**: Easy to add custom tools and AI providers

## Installation

### From PyPI (Recommended)

```bash
pip install aiecs
```

### From Source

```bash
# Clone the repository
git clone https://github.com/aiecs-team/aiecs.git
cd aiecs

# Install in development mode
pip install -e .

# Or install with development dependencies
pip install -e ".[dev]"
```

### Post-Installation Setup

After installation, you can use the built-in tools to set up dependencies and verify your installation:

```bash
# Check all dependencies
aiecs-check-deps

# Quick dependency check
aiecs-quick-check

# Download required NLP models and data
aiecs-download-nlp-data

# Fix common dependency issues automatically
aiecs-fix-deps

# Apply Weasel library patch (if needed)
aiecs-patch-weasel
```

## Quick Start

### Basic Usage

```python
from aiecs import AIECS
from aiecs.domain.task.task_context import TaskContext

# Initialize AIECS
aiecs = AIECS()

# Create a task context
context = TaskContext(
    mode="execute",
    service="default",
    user_id="user123",
    metadata={
        "aiPreference": {
            "provider": "OpenAI",
            "model": "gpt-4"
        }
    },
    data={
        "task": "Analyze this text and extract key points",
        "content": "Your text here..."
    }
)

# Execute task
result = await aiecs.execute(context)
print(result)
```

### Using Tools

```python
from aiecs.tools import get_tool

# Get a specific tool
scraper = get_tool("scraper_tool")

# Execute tool
result = await scraper.execute({
    "url": "https://example.com",
    "extract": ["title", "content"]
})
```

### Custom Tool Development

```python
from aiecs.tools import register_tool
from aiecs.tools.base_tool import BaseTool

@register_tool("my_custom_tool")
class MyCustomTool(BaseTool):
    """Custom tool for specific tasks"""
    
    name = "my_custom_tool"
    description = "Does something specific"
    
    async def execute(self, params: dict) -> dict:
        # Your tool logic here
        return {"result": "success"}
```

## Configuration

Create a `.env` file with the following variables:

```env
# LLM Providers
OPENAI_API_KEY=your_openai_key
VERTEX_PROJECT_ID=your_gcp_project
VERTEX_LOCATION=us-central1
GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
XAI_API_KEY=your_xai_key

# Database
DB_HOST=localhost
DB_USER=postgres
DB_PASSWORD=your_password
DB_NAME=aiecs_db
DB_PORT=5432

# Redis (for Celery)
CELERY_BROKER_URL=redis://localhost:6379/0

# Google Cloud Storage
GOOGLE_CLOUD_PROJECT_ID=your_project_id
GOOGLE_CLOUD_STORAGE_BUCKET=your_bucket_name

# CORS
CORS_ALLOWED_ORIGINS=http://localhost:3000,https://yourdomain.com
```

## Command Line Tools

AIECS provides several command-line tools for setup and maintenance:

### Dependency Management

```bash
# Check all dependencies (comprehensive)
aiecs-check-deps

# Quick dependency check
aiecs-quick-check

# Automatically fix missing dependencies
aiecs-fix-deps --non-interactive

# Fix dependencies interactively (default)
aiecs-fix-deps
```

### Setup and Configuration

```bash
# Download required NLP models and data
aiecs-download-nlp-data

# Apply Weasel library patch (fixes validator conflicts)
aiecs-patch-weasel
```

### Main Application

```bash
# Start the AIECS server
aiecs

# Or start with custom configuration
aiecs --host 0.0.0.0 --port 8000
```

## Running as a Service

### Start the API Server

```bash
# Using the aiecs command (recommended)
aiecs

# Using uvicorn directly
uvicorn aiecs.main:app --host 0.0.0.0 --port 8000

# Or using the Python module
python -m aiecs
```

### Start Celery Workers

```bash
# Start worker
celery -A aiecs.tasks.worker.celery_app worker --loglevel=info

# Start beat scheduler (for periodic tasks)
celery -A aiecs.tasks.worker.celery_app beat --loglevel=info

# Start Flower (Celery monitoring)
celery -A aiecs.tasks.worker.celery_app flower
```

## API Endpoints

- `GET /health` - Health check
- `GET /api/tools` - List available tools
- `GET /api/services` - List available AI services
- `GET /api/providers` - List LLM providers
- `POST /api/execute` - Execute a task
- `GET /api/task/{task_id}` - Get task status
- `DELETE /api/task/{task_id}` - Cancel a task

## WebSocket Events

Connect to the WebSocket endpoint for real-time updates:

```javascript
const socket = io('http://localhost:8000');

socket.on('connect', () => {
    console.log('Connected to AIECS');
    
    // Register user for updates
    socket.emit('register', { user_id: 'user123' });
});

socket.on('progress', (data) => {
    console.log('Task progress:', data);
});
```

## Available Tools

AIECS comes with a comprehensive set of pre-built tools:

- **Web Tools**: Web scraping, search API integration
- **Data Analysis**: Pandas operations, statistical analysis
- **Document Processing**: PDF, Word, PowerPoint handling
- **Image Processing**: OCR, image manipulation
- **Research Tools**: Academic research, report generation
- **Chart Generation**: Data visualization tools

## Architecture

AIECS follows a clean architecture pattern with clear separation of concerns:

```
aiecs/
├── domain/         # Core business logic
├── application/    # Use cases and application services
├── infrastructure/ # External services and adapters
├── llm/           # LLM provider implementations
├── tools/         # Tool implementations
├── config/        # Configuration management
└── main.py        # FastAPI application entry point
```

## Development

### Setting up Development Environment

```bash
# Clone the repository
git clone https://github.com/yourusername/aiecs.git
cd aiecs

# Install dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Run linting
flake8 aiecs/
mypy aiecs/
```

### Contributing

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## Troubleshooting

### Common Issues

1. **Missing Dependencies**: Use the built-in dependency checker and fixer:
   ```bash
   # Check what's missing
   aiecs-check-deps

   # Automatically fix issues
   aiecs-fix-deps --non-interactive
   ```

2. **Weasel Library Validator Error**: If you encounter duplicate validator function errors:
   ```bash
   aiecs-patch-weasel
   ```

3. **Missing NLP Models**: Download required models and data:
   ```bash
   aiecs-download-nlp-data
   ```

4. **Database Connection Issues**: Ensure PostgreSQL is running and credentials are correct

5. **Redis Connection Issues**: Verify Redis is running for Celery task queue

### Dependency Check Output

The dependency checker provides detailed information about:
- ✅ Available dependencies
- ❌ Missing critical dependencies
- ⚠️ Missing optional dependencies
- 📦 System-level requirements
- 🤖 AI models and data files

Example output:
```
🔍 AIECS Quick Dependency Check
==================================================

📦 Critical Dependencies:
✅ All critical dependencies are available

🔧 Tool-Specific Dependencies:
   ✅ Image Tool
   ✅ Classfire Tool
   ✅ Office Tool
   ✅ Stats Tool
   ✅ Report Tool
   ✅ Scraper Tool

✅ All dependencies are satisfied!
```

## Development and Packaging

### Building the Package

To build the distribution packages:

```bash
# Clean previous builds
rm -rf build/ dist/ *.egg-info/

# Build both wheel and source distribution
python3 -m build --sdist --wheel
```

### Environment Cleanup

For development and before releasing, you may want to clean up the environment completely. Here's the comprehensive cleanup process:

#### 1. Clean Python Cache and Build Files

```bash
# Remove Python cache files
find . -name "__pycache__" -type d -exec rm -rf {} + 2>/dev/null || true
find . -name "*.pyc" -delete 2>/dev/null || true
find . -name "*.pyo" -delete 2>/dev/null || true

# Remove build and packaging artifacts
rm -rf build/ *.egg-info/ .eggs/

# Remove test and coverage cache
rm -rf .pytest_cache/ .coverage*
```

#### 2. Clean Log and Temporary Files

```bash
# Remove log files
rm -f *.log dependency_report.txt

# Remove temporary directories
rm -rf /tmp/wheel_*

# Remove backup files
find . -name "*.backup.*" -delete 2>/dev/null || true
```

#### 3. Uninstall AIECS Package (if installed)

```bash
# Uninstall the package completely
pip uninstall aiecs -y

# Verify removal
pip list | grep aiecs || echo "✅ aiecs package completely removed"
```

#### 4. Clean Downloaded NLP Data and Models

If you've used the AIECS NLP tools, you may want to remove downloaded data:

```bash
# Remove NLTK data (stopwords, punkt, wordnet, etc.)
rm -rf ~/nltk_data

# Remove spaCy models
pip uninstall en-core-web-sm zh-core-web-sm spacy-pkuseg -y 2>/dev/null || true

# Verify spaCy models removal
python3 -c "import spacy; print('spaCy models:', spacy.util.get_installed_models())" 2>/dev/null || echo "✅ spaCy models removed"
```

#### 5. Complete Cleanup Script

For convenience, here's a complete cleanup script:

```bash
#!/bin/bash
echo "🧹 Starting complete AIECS environment cleanup..."

# Python cache and build files
echo "📁 Cleaning Python cache and build files..."
find . -name "__pycache__" -type d -exec rm -rf {} + 2>/dev/null || true
find . -name "*.pyc" -delete 2>/dev/null || true
find . -name "*.pyo" -delete 2>/dev/null || true
rm -rf build/ *.egg-info/ .eggs/ .pytest_cache/ .coverage*

# Log and temporary files
echo "📝 Cleaning log and temporary files..."
rm -f *.log dependency_report.txt
rm -rf /tmp/wheel_*
find . -name "*.backup.*" -delete 2>/dev/null || true

# Uninstall package
echo "🗑️ Uninstalling AIECS package..."
pip uninstall aiecs -y 2>/dev/null || true

# Clean NLP data
echo "🤖 Cleaning NLP data and models..."
rm -rf ~/nltk_data
pip uninstall en-core-web-sm zh-core-web-sm spacy-pkuseg -y 2>/dev/null || true

# Verify final state
echo "✅ Cleanup complete! Final package state:"
ls -la dist/ 2>/dev/null || echo "No dist/ directory found"
echo "Environment is now clean and ready for release."
```

#### What Gets Preserved

The cleanup process preserves:
- ✅ Source code files
- ✅ Test files and coverage reports (for maintenance)
- ✅ Configuration files (`.gitignore`, `pyproject.toml`, etc.)
- ✅ Documentation files
- ✅ Final distribution packages in `dist/`

#### What Gets Removed

The cleanup removes:
- ❌ Python cache files (`__pycache__/`, `*.pyc`)
- ❌ Build artifacts (`build/`, `*.egg-info/`)
- ❌ Log files (`*.log`, `dependency_report.txt`)
- ❌ Installed AIECS package and command-line tools
- ❌ Downloaded NLP data and models (~110MB)
- ❌ Temporary and backup files

### Release Preparation

After cleanup, your `dist/` directory should contain only:

```
dist/
├── aiecs-1.0.0-py3-none-any.whl  # Production-ready wheel package
└── aiecs-1.0.0.tar.gz            # Production-ready source package
```

These packages are ready for:
- PyPI publication: `twine upload dist/*`
- GitHub Releases
- Private repository distribution

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- Built with FastAPI, Celery, and modern Python async patterns
- Integrates with leading AI providers
- Inspired by enterprise-grade middleware architectures

## Support

- Documentation: [https://aiecs.readthedocs.io](https://aiecs.readthedocs.io)
- Issues: [GitHub Issues](https://github.com/yourusername/aiecs/issues)
- Discussions: [GitHub Discussions](https://github.com/yourusername/aiecs/discussions)

---

Made with ❤️ by the AIECS Team

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "aiecs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.10",
    "maintainer_email": null,
    "keywords": "ai, middleware, llm, orchestration, async, tools",
    "author": null,
    "author_email": "AIECS Team <iretbl@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/58/ab/e33ec431ef9d0a063f6c0053ba6cc43c70090cc7e1329f99dcfc1a5a3b7e/aiecs-1.0.0.tar.gz",
    "platform": null,
    "description": "# AIECS - AI Execute Services\n\n[![Python Version](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![PyPI version](https://badge.fury.io/py/aiecs.svg)](https://badge.fury.io/py/aiecs)\n\nAIECS (AI Execute Services) is a powerful Python middleware framework for building AI-powered applications with tool orchestration, task execution, and multi-provider LLM support.\n\n## Features\n\n- **Multi-Provider LLM Support**: Seamlessly integrate with OpenAI, Google Vertex AI, and xAI\n- **Tool Orchestration**: Extensible tool system for various tasks (web scraping, data analysis, document processing, etc.)\n- **Asynchronous Task Execution**: Built on Celery for scalable task processing\n- **Real-time Communication**: WebSocket support for live updates and progress tracking\n- **Enterprise-Ready**: Production-grade architecture with PostgreSQL, Redis, and Google Cloud Storage integration\n- **Extensible Architecture**: Easy to add custom tools and AI providers\n\n## Installation\n\n### From PyPI (Recommended)\n\n```bash\npip install aiecs\n```\n\n### From Source\n\n```bash\n# Clone the repository\ngit clone https://github.com/aiecs-team/aiecs.git\ncd aiecs\n\n# Install in development mode\npip install -e .\n\n# Or install with development dependencies\npip install -e \".[dev]\"\n```\n\n### Post-Installation Setup\n\nAfter installation, you can use the built-in tools to set up dependencies and verify your installation:\n\n```bash\n# Check all dependencies\naiecs-check-deps\n\n# Quick dependency check\naiecs-quick-check\n\n# Download required NLP models and data\naiecs-download-nlp-data\n\n# Fix common dependency issues automatically\naiecs-fix-deps\n\n# Apply Weasel library patch (if needed)\naiecs-patch-weasel\n```\n\n## Quick Start\n\n### Basic Usage\n\n```python\nfrom aiecs import AIECS\nfrom aiecs.domain.task.task_context import TaskContext\n\n# Initialize AIECS\naiecs = AIECS()\n\n# Create a task context\ncontext = TaskContext(\n    mode=\"execute\",\n    service=\"default\",\n    user_id=\"user123\",\n    metadata={\n        \"aiPreference\": {\n            \"provider\": \"OpenAI\",\n            \"model\": \"gpt-4\"\n        }\n    },\n    data={\n        \"task\": \"Analyze this text and extract key points\",\n        \"content\": \"Your text here...\"\n    }\n)\n\n# Execute task\nresult = await aiecs.execute(context)\nprint(result)\n```\n\n### Using Tools\n\n```python\nfrom aiecs.tools import get_tool\n\n# Get a specific tool\nscraper = get_tool(\"scraper_tool\")\n\n# Execute tool\nresult = await scraper.execute({\n    \"url\": \"https://example.com\",\n    \"extract\": [\"title\", \"content\"]\n})\n```\n\n### Custom Tool Development\n\n```python\nfrom aiecs.tools import register_tool\nfrom aiecs.tools.base_tool import BaseTool\n\n@register_tool(\"my_custom_tool\")\nclass MyCustomTool(BaseTool):\n    \"\"\"Custom tool for specific tasks\"\"\"\n    \n    name = \"my_custom_tool\"\n    description = \"Does something specific\"\n    \n    async def execute(self, params: dict) -> dict:\n        # Your tool logic here\n        return {\"result\": \"success\"}\n```\n\n## Configuration\n\nCreate a `.env` file with the following variables:\n\n```env\n# LLM Providers\nOPENAI_API_KEY=your_openai_key\nVERTEX_PROJECT_ID=your_gcp_project\nVERTEX_LOCATION=us-central1\nGOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json\nXAI_API_KEY=your_xai_key\n\n# Database\nDB_HOST=localhost\nDB_USER=postgres\nDB_PASSWORD=your_password\nDB_NAME=aiecs_db\nDB_PORT=5432\n\n# Redis (for Celery)\nCELERY_BROKER_URL=redis://localhost:6379/0\n\n# Google Cloud Storage\nGOOGLE_CLOUD_PROJECT_ID=your_project_id\nGOOGLE_CLOUD_STORAGE_BUCKET=your_bucket_name\n\n# CORS\nCORS_ALLOWED_ORIGINS=http://localhost:3000,https://yourdomain.com\n```\n\n## Command Line Tools\n\nAIECS provides several command-line tools for setup and maintenance:\n\n### Dependency Management\n\n```bash\n# Check all dependencies (comprehensive)\naiecs-check-deps\n\n# Quick dependency check\naiecs-quick-check\n\n# Automatically fix missing dependencies\naiecs-fix-deps --non-interactive\n\n# Fix dependencies interactively (default)\naiecs-fix-deps\n```\n\n### Setup and Configuration\n\n```bash\n# Download required NLP models and data\naiecs-download-nlp-data\n\n# Apply Weasel library patch (fixes validator conflicts)\naiecs-patch-weasel\n```\n\n### Main Application\n\n```bash\n# Start the AIECS server\naiecs\n\n# Or start with custom configuration\naiecs --host 0.0.0.0 --port 8000\n```\n\n## Running as a Service\n\n### Start the API Server\n\n```bash\n# Using the aiecs command (recommended)\naiecs\n\n# Using uvicorn directly\nuvicorn aiecs.main:app --host 0.0.0.0 --port 8000\n\n# Or using the Python module\npython -m aiecs\n```\n\n### Start Celery Workers\n\n```bash\n# Start worker\ncelery -A aiecs.tasks.worker.celery_app worker --loglevel=info\n\n# Start beat scheduler (for periodic tasks)\ncelery -A aiecs.tasks.worker.celery_app beat --loglevel=info\n\n# Start Flower (Celery monitoring)\ncelery -A aiecs.tasks.worker.celery_app flower\n```\n\n## API Endpoints\n\n- `GET /health` - Health check\n- `GET /api/tools` - List available tools\n- `GET /api/services` - List available AI services\n- `GET /api/providers` - List LLM providers\n- `POST /api/execute` - Execute a task\n- `GET /api/task/{task_id}` - Get task status\n- `DELETE /api/task/{task_id}` - Cancel a task\n\n## WebSocket Events\n\nConnect to the WebSocket endpoint for real-time updates:\n\n```javascript\nconst socket = io('http://localhost:8000');\n\nsocket.on('connect', () => {\n    console.log('Connected to AIECS');\n    \n    // Register user for updates\n    socket.emit('register', { user_id: 'user123' });\n});\n\nsocket.on('progress', (data) => {\n    console.log('Task progress:', data);\n});\n```\n\n## Available Tools\n\nAIECS comes with a comprehensive set of pre-built tools:\n\n- **Web Tools**: Web scraping, search API integration\n- **Data Analysis**: Pandas operations, statistical analysis\n- **Document Processing**: PDF, Word, PowerPoint handling\n- **Image Processing**: OCR, image manipulation\n- **Research Tools**: Academic research, report generation\n- **Chart Generation**: Data visualization tools\n\n## Architecture\n\nAIECS follows a clean architecture pattern with clear separation of concerns:\n\n```\naiecs/\n\u251c\u2500\u2500 domain/         # Core business logic\n\u251c\u2500\u2500 application/    # Use cases and application services\n\u251c\u2500\u2500 infrastructure/ # External services and adapters\n\u251c\u2500\u2500 llm/           # LLM provider implementations\n\u251c\u2500\u2500 tools/         # Tool implementations\n\u251c\u2500\u2500 config/        # Configuration management\n\u2514\u2500\u2500 main.py        # FastAPI application entry point\n```\n\n## Development\n\n### Setting up Development Environment\n\n```bash\n# Clone the repository\ngit clone https://github.com/yourusername/aiecs.git\ncd aiecs\n\n# Install dependencies\npip install -e \".[dev]\"\n\n# Run tests\npytest\n\n# Run linting\nflake8 aiecs/\nmypy aiecs/\n```\n\n### Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## Troubleshooting\n\n### Common Issues\n\n1. **Missing Dependencies**: Use the built-in dependency checker and fixer:\n   ```bash\n   # Check what's missing\n   aiecs-check-deps\n\n   # Automatically fix issues\n   aiecs-fix-deps --non-interactive\n   ```\n\n2. **Weasel Library Validator Error**: If you encounter duplicate validator function errors:\n   ```bash\n   aiecs-patch-weasel\n   ```\n\n3. **Missing NLP Models**: Download required models and data:\n   ```bash\n   aiecs-download-nlp-data\n   ```\n\n4. **Database Connection Issues**: Ensure PostgreSQL is running and credentials are correct\n\n5. **Redis Connection Issues**: Verify Redis is running for Celery task queue\n\n### Dependency Check Output\n\nThe dependency checker provides detailed information about:\n- \u2705 Available dependencies\n- \u274c Missing critical dependencies\n- \u26a0\ufe0f Missing optional dependencies\n- \ud83d\udce6 System-level requirements\n- \ud83e\udd16 AI models and data files\n\nExample output:\n```\n\ud83d\udd0d AIECS Quick Dependency Check\n==================================================\n\n\ud83d\udce6 Critical Dependencies:\n\u2705 All critical dependencies are available\n\n\ud83d\udd27 Tool-Specific Dependencies:\n   \u2705 Image Tool\n   \u2705 Classfire Tool\n   \u2705 Office Tool\n   \u2705 Stats Tool\n   \u2705 Report Tool\n   \u2705 Scraper Tool\n\n\u2705 All dependencies are satisfied!\n```\n\n## Development and Packaging\n\n### Building the Package\n\nTo build the distribution packages:\n\n```bash\n# Clean previous builds\nrm -rf build/ dist/ *.egg-info/\n\n# Build both wheel and source distribution\npython3 -m build --sdist --wheel\n```\n\n### Environment Cleanup\n\nFor development and before releasing, you may want to clean up the environment completely. Here's the comprehensive cleanup process:\n\n#### 1. Clean Python Cache and Build Files\n\n```bash\n# Remove Python cache files\nfind . -name \"__pycache__\" -type d -exec rm -rf {} + 2>/dev/null || true\nfind . -name \"*.pyc\" -delete 2>/dev/null || true\nfind . -name \"*.pyo\" -delete 2>/dev/null || true\n\n# Remove build and packaging artifacts\nrm -rf build/ *.egg-info/ .eggs/\n\n# Remove test and coverage cache\nrm -rf .pytest_cache/ .coverage*\n```\n\n#### 2. Clean Log and Temporary Files\n\n```bash\n# Remove log files\nrm -f *.log dependency_report.txt\n\n# Remove temporary directories\nrm -rf /tmp/wheel_*\n\n# Remove backup files\nfind . -name \"*.backup.*\" -delete 2>/dev/null || true\n```\n\n#### 3. Uninstall AIECS Package (if installed)\n\n```bash\n# Uninstall the package completely\npip uninstall aiecs -y\n\n# Verify removal\npip list | grep aiecs || echo \"\u2705 aiecs package completely removed\"\n```\n\n#### 4. Clean Downloaded NLP Data and Models\n\nIf you've used the AIECS NLP tools, you may want to remove downloaded data:\n\n```bash\n# Remove NLTK data (stopwords, punkt, wordnet, etc.)\nrm -rf ~/nltk_data\n\n# Remove spaCy models\npip uninstall en-core-web-sm zh-core-web-sm spacy-pkuseg -y 2>/dev/null || true\n\n# Verify spaCy models removal\npython3 -c \"import spacy; print('spaCy models:', spacy.util.get_installed_models())\" 2>/dev/null || echo \"\u2705 spaCy models removed\"\n```\n\n#### 5. Complete Cleanup Script\n\nFor convenience, here's a complete cleanup script:\n\n```bash\n#!/bin/bash\necho \"\ud83e\uddf9 Starting complete AIECS environment cleanup...\"\n\n# Python cache and build files\necho \"\ud83d\udcc1 Cleaning Python cache and build files...\"\nfind . -name \"__pycache__\" -type d -exec rm -rf {} + 2>/dev/null || true\nfind . -name \"*.pyc\" -delete 2>/dev/null || true\nfind . -name \"*.pyo\" -delete 2>/dev/null || true\nrm -rf build/ *.egg-info/ .eggs/ .pytest_cache/ .coverage*\n\n# Log and temporary files\necho \"\ud83d\udcdd Cleaning log and temporary files...\"\nrm -f *.log dependency_report.txt\nrm -rf /tmp/wheel_*\nfind . -name \"*.backup.*\" -delete 2>/dev/null || true\n\n# Uninstall package\necho \"\ud83d\uddd1\ufe0f Uninstalling AIECS package...\"\npip uninstall aiecs -y 2>/dev/null || true\n\n# Clean NLP data\necho \"\ud83e\udd16 Cleaning NLP data and models...\"\nrm -rf ~/nltk_data\npip uninstall en-core-web-sm zh-core-web-sm spacy-pkuseg -y 2>/dev/null || true\n\n# Verify final state\necho \"\u2705 Cleanup complete! Final package state:\"\nls -la dist/ 2>/dev/null || echo \"No dist/ directory found\"\necho \"Environment is now clean and ready for release.\"\n```\n\n#### What Gets Preserved\n\nThe cleanup process preserves:\n- \u2705 Source code files\n- \u2705 Test files and coverage reports (for maintenance)\n- \u2705 Configuration files (`.gitignore`, `pyproject.toml`, etc.)\n- \u2705 Documentation files\n- \u2705 Final distribution packages in `dist/`\n\n#### What Gets Removed\n\nThe cleanup removes:\n- \u274c Python cache files (`__pycache__/`, `*.pyc`)\n- \u274c Build artifacts (`build/`, `*.egg-info/`)\n- \u274c Log files (`*.log`, `dependency_report.txt`)\n- \u274c Installed AIECS package and command-line tools\n- \u274c Downloaded NLP data and models (~110MB)\n- \u274c Temporary and backup files\n\n### Release Preparation\n\nAfter cleanup, your `dist/` directory should contain only:\n\n```\ndist/\n\u251c\u2500\u2500 aiecs-1.0.0-py3-none-any.whl  # Production-ready wheel package\n\u2514\u2500\u2500 aiecs-1.0.0.tar.gz            # Production-ready source package\n```\n\nThese packages are ready for:\n- PyPI publication: `twine upload dist/*`\n- GitHub Releases\n- Private repository distribution\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Built with FastAPI, Celery, and modern Python async patterns\n- Integrates with leading AI providers\n- Inspired by enterprise-grade middleware architectures\n\n## Support\n\n- Documentation: [https://aiecs.readthedocs.io](https://aiecs.readthedocs.io)\n- Issues: [GitHub Issues](https://github.com/yourusername/aiecs/issues)\n- Discussions: [GitHub Discussions](https://github.com/yourusername/aiecs/discussions)\n\n---\n\nMade with \u2764\ufe0f by the AIECS Team\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "AI Execute Services - A middleware framework for AI-powered task execution and tool orchestration",
    "version": "1.0.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/aiecs-team/aiecs/issues",
        "Documentation": "https://aiecs.readthedocs.io",
        "Homepage": "https://github.com/aiecs-team/aiecs"
    },
    "split_keywords": [
        "ai",
        " middleware",
        " llm",
        " orchestration",
        " async",
        " tools"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "21d12e33a8a07710f4183b0d48061579b503acea6d04a87ee59776a00fa8ea0e",
                "md5": "4c43d76877ba454687a715636ccd0c64",
                "sha256": "cb8e669369bb535f9df07a624139ba7ca2233288f386641968844b5424617f1b"
            },
            "downloads": -1,
            "filename": "aiecs-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4c43d76877ba454687a715636ccd0c64",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.10",
            "size": 190258,
            "upload_time": "2025-09-18T16:16:06",
            "upload_time_iso_8601": "2025-09-18T16:16:06.250594Z",
            "url": "https://files.pythonhosted.org/packages/21/d1/2e33a8a07710f4183b0d48061579b503acea6d04a87ee59776a00fa8ea0e/aiecs-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "58abe33ec431ef9d0a063f6c0053ba6cc43c70090cc7e1329f99dcfc1a5a3b7e",
                "md5": "d255a2de7afe3af495f51ffa74f009c9",
                "sha256": "28abd3b3215e16943499c4e54413ece568671502567ae0378bc58652a7eab812"
            },
            "downloads": -1,
            "filename": "aiecs-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d255a2de7afe3af495f51ffa74f009c9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.10",
            "size": 161797,
            "upload_time": "2025-09-18T16:16:07",
            "upload_time_iso_8601": "2025-09-18T16:16:07.672858Z",
            "url": "https://files.pythonhosted.org/packages/58/ab/e33ec431ef9d0a063f6c0053ba6cc43c70090cc7e1329f99dcfc1a5a3b7e/aiecs-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-18 16:16:07",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "aiecs-team",
    "github_project": "aiecs",
    "github_not_found": true,
    "lcname": "aiecs"
}
        
Elapsed time: 4.38285s