Metadata-Version: 2.4
Name: multimind-sdk
Version: 0.1.1
Summary: A unified interface for multiple LLM providers and local models
Home-page: https://github.com/multimindlabs/multimind-sdk
Author: AI2Innovate Team
Author-email: contact@multimind.dev
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
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
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: openai>=1.0.0
Requires-Dist: anthropic>=0.5.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: fastapi>=0.100.0
Requires-Dist: python-jose[cryptography]>=3.3.0
Requires-Dist: python-multipart>=0.0.6
Requires-Dist: click>=8.1.0
Requires-Dist: rich>=13.0.0
Requires-Dist: requests>=2.26.0
Requires-Dist: typing-extensions>=4.5.0
Requires-Dist: pytest>=7.0.0
Requires-Dist: pytest-asyncio>=0.21.0
Requires-Dist: black>=23.0.0
Requires-Dist: isort>=5.12.0
Requires-Dist: mypy>=1.0.0
Requires-Dist: ruff>=0.1.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Provides-Extra: gateway
Requires-Dist: fastapi>=0.68.0; extra == "gateway"
Requires-Dist: uvicorn>=0.15.0; extra == "gateway"
Requires-Dist: groq>=0.3.0; extra == "gateway"
Requires-Dist: huggingface-hub>=0.16.0; extra == "gateway"
Requires-Dist: httpx>=0.23.0; extra == "gateway"
Requires-Dist: pytest-cov>=2.12.0; extra == "gateway"
Provides-Extra: full
Requires-Dist: accelerate==1.7.0; extra == "full"
Requires-Dist: aiohappyeyeballs==2.6.1; extra == "full"
Requires-Dist: aiohttp==3.12.2; extra == "full"
Requires-Dist: aiosignal==1.3.2; extra == "full"
Requires-Dist: annotated-types==0.7.0; extra == "full"
Requires-Dist: anthropic==0.52.1; extra == "full"
Requires-Dist: anyio==4.9.0; extra == "full"
Requires-Dist: asgiref==3.8.1; extra == "full"
Requires-Dist: async-timeout==5.0.1; extra == "full"
Requires-Dist: attrs==25.3.0; extra == "full"
Requires-Dist: backoff==2.2.1; extra == "full"
Requires-Dist: backports.tarfile==1.2.0; extra == "full"
Requires-Dist: bcrypt==4.3.0; extra == "full"
Requires-Dist: bitsandbytes==0.46.0; extra == "full"
Requires-Dist: black==25.1.0; extra == "full"
Requires-Dist: build==1.2.2.post1; extra == "full"
Requires-Dist: cachetools==5.5.2; extra == "full"
Requires-Dist: certifi==2025.4.26; extra == "full"
Requires-Dist: cffi==1.17.1; extra == "full"
Requires-Dist: charset-normalizer==3.4.2; extra == "full"
Requires-Dist: chromadb==1.0.10; extra == "full"
Requires-Dist: click==8.1.8; extra == "full"
Requires-Dist: colorama==0.4.6; extra == "full"
Requires-Dist: coloredlogs==15.0.1; extra == "full"
Requires-Dist: cryptography==45.0.2; extra == "full"
Requires-Dist: datasets==3.6.0; extra == "full"
Requires-Dist: Deprecated==1.2.18; extra == "full"
Requires-Dist: dill==0.3.8; extra == "full"
Requires-Dist: distro==1.9.0; extra == "full"
Requires-Dist: docutils==0.21.2; extra == "full"
Requires-Dist: durationpy==0.10; extra == "full"
Requires-Dist: EbookLib==0.19; extra == "full"
Requires-Dist: ecdsa==0.19.1; extra == "full"
Requires-Dist: eval_type_backport==0.2.2; extra == "full"
Requires-Dist: exceptiongroup==1.3.0; extra == "full"
Requires-Dist: faiss-cpu==1.11.0; extra == "full"
Requires-Dist: fastapi==0.115.9; extra == "full"
Requires-Dist: filelock==3.18.0; extra == "full"
Requires-Dist: flatbuffers==25.2.10; extra == "full"
Requires-Dist: frozenlist==1.6.0; extra == "full"
Requires-Dist: fsspec==2025.3.0; extra == "full"
Requires-Dist: google-auth==2.40.2; extra == "full"
Requires-Dist: googleapis-common-protos==1.70.0; extra == "full"
Requires-Dist: greenlet==3.2.2; extra == "full"
Requires-Dist: grpcio==1.71.0; extra == "full"
Requires-Dist: h11==0.16.0; extra == "full"
Requires-Dist: hippo-api==1.1.0rc3; extra == "full"
Requires-Dist: httpcore==1.0.9; extra == "full"
Requires-Dist: httptools==0.6.4; extra == "full"
Requires-Dist: httpx==0.28.1; extra == "full"
Requires-Dist: huggingface-hub==0.32.0; extra == "full"
Requires-Dist: humanfriendly==10.0; extra == "full"
Requires-Dist: id==1.5.0; extra == "full"
Requires-Dist: idna==3.10; extra == "full"
Requires-Dist: importlib_metadata==8.6.1; extra == "full"
Requires-Dist: importlib_resources==6.5.2; extra == "full"
Requires-Dist: iniconfig==2.1.0; extra == "full"
Requires-Dist: isort==6.0.1; extra == "full"
Requires-Dist: jaraco.classes==3.4.0; extra == "full"
Requires-Dist: jaraco.context==6.0.1; extra == "full"
Requires-Dist: jaraco.functools==4.1.0; extra == "full"
Requires-Dist: Jinja2==3.1.6; extra == "full"
Requires-Dist: jiter==0.10.0; extra == "full"
Requires-Dist: joblib==1.5.1; extra == "full"
Requires-Dist: jsonschema==4.23.0; extra == "full"
Requires-Dist: jsonschema-specifications==2025.4.1; extra == "full"
Requires-Dist: keyring==25.6.0; extra == "full"
Requires-Dist: kubernetes==32.0.1; extra == "full"
Requires-Dist: lxml==5.4.0; extra == "full"
Requires-Dist: markdown-it-py==3.0.0; extra == "full"
Requires-Dist: MarkupSafe==3.0.2; extra == "full"
Requires-Dist: mdurl==0.1.2; extra == "full"
Requires-Dist: mistralai==1.8.1; extra == "full"
Requires-Dist: mmh3==5.1.0; extra == "full"
Requires-Dist: more-itertools==10.7.0; extra == "full"
Requires-Dist: mpmath==1.3.0; extra == "full"
Requires-Dist: multidict==6.4.4; extra == "full"
Requires-Dist: multiprocess==0.70.16; extra == "full"
Requires-Dist: mypy==1.15.0; extra == "full"
Requires-Dist: mypy_extensions==1.1.0; extra == "full"
Requires-Dist: networkx==3.4.2; extra == "full"
Requires-Dist: nh3==0.2.21; extra == "full"
Requires-Dist: numpy==2.2.6; extra == "full"
Requires-Dist: oauthlib==3.2.2; extra == "full"
Requires-Dist: onnxruntime==1.22.0; extra == "full"
Requires-Dist: openai==1.82.0; extra == "full"
Requires-Dist: opentelemetry-api==1.33.1; extra == "full"
Requires-Dist: opentelemetry-exporter-otlp-proto-common==1.33.1; extra == "full"
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc==1.33.1; extra == "full"
Requires-Dist: opentelemetry-instrumentation==0.54b1; extra == "full"
Requires-Dist: opentelemetry-instrumentation-asgi==0.54b1; extra == "full"
Requires-Dist: opentelemetry-instrumentation-fastapi==0.54b1; extra == "full"
Requires-Dist: opentelemetry-proto==1.33.1; extra == "full"
Requires-Dist: opentelemetry-sdk==1.33.1; extra == "full"
Requires-Dist: opentelemetry-semantic-conventions==0.54b1; extra == "full"
Requires-Dist: opentelemetry-util-http==0.54b1; extra == "full"
Requires-Dist: orjson==3.10.18; extra == "full"
Requires-Dist: overrides==7.7.0; extra == "full"
Requires-Dist: packaging==25.0; extra == "full"
Requires-Dist: pandas==2.2.3; extra == "full"
Requires-Dist: pathspec==0.12.1; extra == "full"
Requires-Dist: pdf2image==1.17.0; extra == "full"
Requires-Dist: peft==0.15.2; extra == "full"
Requires-Dist: pillow==11.2.1; extra == "full"
Requires-Dist: pinecone-client==6.0.0; extra == "full"
Requires-Dist: pinecone-plugin-interface==0.0.7; extra == "full"
Requires-Dist: platformdirs==4.3.8; extra == "full"
Requires-Dist: pluggy==1.6.0; extra == "full"
Requires-Dist: posthog==4.1.0; extra == "full"
Requires-Dist: propcache==0.3.1; extra == "full"
Requires-Dist: protobuf==5.29.4; extra == "full"
Requires-Dist: psutil==7.0.0; extra == "full"
Requires-Dist: pyarrow==20.0.0; extra == "full"
Requires-Dist: pyasn1==0.6.1; extra == "full"
Requires-Dist: pyasn1_modules==0.4.1; extra == "full"
Requires-Dist: pycparser==2.22; extra == "full"
Requires-Dist: pydantic==2.11.5; extra == "full"
Requires-Dist: pydantic_core==2.33.2; extra == "full"
Requires-Dist: Pygments==2.19.1; extra == "full"
Requires-Dist: PyPDF2==3.0.1; extra == "full"
Requires-Dist: PyPika==0.48.9; extra == "full"
Requires-Dist: pyproject_hooks==1.2.0; extra == "full"
Requires-Dist: pyreadline3==3.5.4; extra == "full"
Requires-Dist: pytesseract==0.3.13; extra == "full"
Requires-Dist: pytest==8.3.5; extra == "full"
Requires-Dist: pytest-asyncio==1.0.0; extra == "full"
Requires-Dist: python-dateutil==2.9.0.post0; extra == "full"
Requires-Dist: python-dotenv==1.1.0; extra == "full"
Requires-Dist: python-jose==3.5.0; extra == "full"
Requires-Dist: python-multipart==0.0.20; extra == "full"
Requires-Dist: pytz==2025.2; extra == "full"
Requires-Dist: pywin32-ctypes==0.2.3; extra == "full"
Requires-Dist: PyYAML==6.0.2; extra == "full"
Requires-Dist: readme_renderer==44.0; extra == "full"
Requires-Dist: referencing==0.36.2; extra == "full"
Requires-Dist: regex==2024.11.6; extra == "full"
Requires-Dist: requests==2.32.3; extra == "full"
Requires-Dist: requests-oauthlib==2.0.0; extra == "full"
Requires-Dist: requests-toolbelt==1.0.0; extra == "full"
Requires-Dist: rfc3986==2.0.0; extra == "full"
Requires-Dist: rich==14.0.0; extra == "full"
Requires-Dist: rpds-py==0.25.1; extra == "full"
Requires-Dist: rsa==4.9.1; extra == "full"
Requires-Dist: ruff==0.11.11; extra == "full"
Requires-Dist: safetensors==0.5.3; extra == "full"
Requires-Dist: scikit-learn==1.6.1; extra == "full"
Requires-Dist: scipy==1.15.3; extra == "full"
Requires-Dist: sentence-transformers==4.1.0; extra == "full"
Requires-Dist: shellingham==1.5.4; extra == "full"
Requires-Dist: six==1.17.0; extra == "full"
Requires-Dist: sniffio==1.3.1; extra == "full"
Requires-Dist: SQLAlchemy==2.0.41; extra == "full"
Requires-Dist: starlette==0.45.3; extra == "full"
Requires-Dist: sympy==1.14.0; extra == "full"
Requires-Dist: tenacity==9.1.2; extra == "full"
Requires-Dist: threadpoolctl==3.6.0; extra == "full"
Requires-Dist: tokenizers==0.21.1; extra == "full"
Requires-Dist: tomli==2.2.1; extra == "full"
Requires-Dist: torch==2.7.0; extra == "full"
Requires-Dist: tqdm==4.67.1; extra == "full"
Requires-Dist: transformers==4.52.3; extra == "full"
Requires-Dist: twine==6.1.0; extra == "full"
Requires-Dist: typer==0.15.4; extra == "full"
Requires-Dist: typing-inspection==0.4.1; extra == "full"
Requires-Dist: typing_extensions==4.13.2; extra == "full"
Requires-Dist: tzdata==2025.2; extra == "full"
Requires-Dist: urllib3==2.4.0; extra == "full"
Requires-Dist: uvicorn==0.34.2; extra == "full"
Requires-Dist: watchfiles==1.0.5; extra == "full"
Requires-Dist: websocket-client==1.8.0; extra == "full"
Requires-Dist: websockets==15.0.1; extra == "full"
Requires-Dist: wrapt==1.17.2; extra == "full"
Requires-Dist: xxhash==3.5.0; extra == "full"
Requires-Dist: yarl==1.20.0; extra == "full"
Requires-Dist: zipp==3.21.0; extra == "full"
Requires-Dist: fastapi>=0.68.0; extra == "full"
Requires-Dist: uvicorn>=0.15.0; extra == "full"
Requires-Dist: groq>=0.3.0; extra == "full"
Requires-Dist: huggingface-hub>=0.16.0; extra == "full"
Requires-Dist: httpx>=0.23.0; extra == "full"
Requires-Dist: pytest-cov>=2.12.0; extra == "full"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

<!--
  MultiMind SDK - Unified AI Development Toolkit
  Description: A powerful Python SDK for fine-tuning, RAG systems, and AI agent development with enterprise-grade compliance
  Keywords: AI development, fine-tuning, RAG, LLM, machine learning, Python SDK, LangChain, CrewAI, LiteLLM, SuperAGI, AI compliance, healthcare compliance, GDPR, HIPAA
  Author: MultimindLAB Team
  Version: 0.1.0
-->

<!-- Logo -->
<p align="center">
  <img src="assets/Logo-with-name-final2.png" alt="MultiMind SDK - Unified AI Development Toolkit Logo" width="320"/>
</p>

<h1 align="center">MultiMind SDK: Unified AI Development Toolkit</h1>

<p align="center">
  <strong>Build, Fine-Tune, and Deploy Advanced AI Applications with Enterprise-Grade Compliance</strong>
</p>

<p align="center">
  <a href="https://github.com/multimind-dev/multimind-sdk/blob/main/LICENSE"><img src="https://img.shields.io/github/license/multimind-dev/multimind-sdk.svg" alt="MultiMind SDK License"></a>
  <a href="https://github.com/multimind-dev/multimind-sdk/stargazers"><img src="https://img.shields.io/github/stars/multimind-dev/multimind-sdk.svg" alt="MultiMind SDK GitHub Stars"></a>
  <a href="https://github.com/multimind-dev/multimind-sdk/actions"><img src="https://img.shields.io/github/actions/workflow/status/multimind-dev/multimind-sdk/ci.yml" alt="CI Status"></a>
</p>

<div align="center">
  <h2>🚧 Project Status: In Active Development 🚧</h2>
  <p>Join the future of AI development! We're actively building MultiMind SDK and looking for contributors. Check our <a href="docs/TODO.md">TODO list</a> to see what's implemented and what's coming next. Connect with our growing community on <a href="https://discord.gg/K64U65je7h" aria-label="Join MultiMind SDK Discord Community">Discord</a> to discuss ideas, get help, and contribute to the project.</p>
</div>

<p align="center">
  <a href="#why-multimind-sdk">Why MultiMind SDK?</a> •
  <a href="#key-features">Key Features</a> •
  <a href="#compliance">Compliance</a> •
  <a href="#quick-start">Quick Start</a> •
  <a href="#documentation">Documentation</a> •
  <a href="#examples">Examples</a> •
  <a href="#contributing">Contributing</a>
</p>

[![🐦 Follow on X](https://img.shields.io/twitter/follow/multimindsdk?label=%F0%9F%90%A6%20Follow%20on%20X&style=for-the-badge&logo=x&logoColor=white)](https://x.com/multimindsdk)

## 🚀 Why MultiMind SDK?

> 🧠 **MultiMind SDK is the only open-source toolkit that unifies Fine-Tuning, RAG, Agent Orchestration, and Enterprise Compliance** — all in one modular, extensible Python framework.
Forget silos. While others focus on chaining, agents, or retrieval alone, **MultiMind integrates them into one coherent developer-first experience**, with:
- 🪄 Declarative YAML + CLI + SDK interfaces
- 📚 RAG with hybrid (vector + knowledge graph) retrieval
- 🤖 Role-based agents with memory, tools, and task flow
- 🔁 Self-improving agents with cognitive loop support
- 🔐 Enterprise-ready: logging, compliance, GDPR, HIPAA, cost tracking
- 🌍 Cloud + Edge deploy (Jetson, RPi, Offline mode)

📑 Check out our [Strategic Roadmap](docs/roadmap.md) to see where we're headed!

### Key Benefits

- **🚀 Unified Interface**: Streamline your AI development with one consistent API
- **💡 Production-Ready**: Enterprise-grade deployment, monitoring, and scaling
- **🛠️ Framework Agnostic**: Seamless integration with LangChain, CrewAI, and more
- **🔌 Extensible**: Customizable architecture for your specific needs
- **📊 Enterprise Features**: Comprehensive logging, monitoring, and cost tracking
- **🔒 Compliance Ready**: Built-in support for GDPR, HIPAA, and other regulations

## ✨ Key Features

### 1. Advanced Fine-Tuning

- **Parameter-Efficient Methods**: LoRA, Adapters, Prefix Tuning, and more
- **Meta-Learning**: MAML, Reptile, and prototype-based few-shot learning
- **Transfer Learning**: Layer transfer and multi-task optimization
- **Resource-Aware Training**: Automatic device selection and optimization

### 2. RAG System

- **Document Processing**: Smart chunking and metadata management
- **Vector Storage**: Support for FAISS and ChromaDB
- **Embedding Models**: Integration with OpenAI, HuggingFace, and custom models
- **Query Optimization**: Efficient similarity search and context management

### 3. Agent Development

- **Tool Integration**: Built-in support for common tools and custom extensions
- **Memory Management**: Short and long-term memory systems
- **Task Orchestration**: Complex workflow management and prompt chaining
- **Model Composition**: Protocol for combining multiple models and tools

### 4. Framework Integrations

- **LangChain**: Seamless integration with LangChain components
- **CrewAI**: Support for multi-agent systems
- **LiteLLM**: Unified model interface
- **SuperAGI**: Advanced agent capabilities

### 5. Enterprise Compliance

- **Real-time Monitoring**: Continuous compliance checks and alerts
- **Healthcare Compliance**: HIPAA, GDPR, and healthcare-specific regulations
- **Privacy Protection**: Differential privacy and zero-knowledge proofs
- **Audit Trail**: Comprehensive logging and documentation
- **Alert Management**: Configurable alerts and notifications
- **Compliance Dashboard**: Interactive monitoring and reporting

### 6. Model Conversion

- **Format Support**: PyTorch, TensorFlow, ONNX, GGUF, TFLite, Safetensors
- **Optimization**: Quantization, pruning, graph optimization
- **Hardware Acceleration**: CUDA, CPU, Neural Engine support
- **Conversion Pipeline**: Validation, optimization, and verification
- **Custom Converters**: Extensible converter architecture
- **Enterprise Features**: Batch processing, streaming, and monitoring

[Learn more about model conversion →](examples/model_conversion/README.md)

## 🔒 Compliance Features

MultiMind SDK provides comprehensive compliance support for enterprise AI applications:

### Core Compliance Features
- Real-time compliance monitoring
- Healthcare-specific compliance checks
- Interactive compliance dashboard
- Alert management system
- Compliance trend analysis

### Advanced Compliance Mechanisms
- Federated compliance shards
- Zero-knowledge proofs
- Differential privacy feedback loops
- Self-healing patches
- Model watermarking and fingerprint tracking
- Dynamic regulatory change detection

[Learn more about our compliance features →](docs/compliance.md)

## 🚀 Quick Start

### Installation

```bash
# Basic installation
pip install multimind-sdk

# With compliance support
pip install multimind-sdk[compliance]

# With development dependencies
pip install multimind-sdk[dev]

# With gateway support
pip install multimind-sdk[gateway]

# Full installation with all features
pip install multimind-sdk[all]
```

### Environment Setup

Copy the example environment file and add your API keys and configuration values:

```bash
cp examples/multi-model-wrapper/.env.example examples/multi-model-wrapper/.env
```

> **Note:** Never commit your `.env` file to version control. Only `.env.example` should be tracked in git.

### Build Your First RAG Application

```python
from multimind.client.rag_client import RAGClient, Document

# Initialize the client
client = RAGClient()

# Add documents
docs = [
    Document(
        text="MultiMind SDK is a powerful AI development toolkit.",
        metadata={"type": "introduction"}
    )
]
await client.add_documents(docs)

# Query the system
results = await client.query("What is MultiMind SDK?")
print(results)
```

### Fine-Tuning a Model

```python
from multimind.fine_tuning import UniPELTPlusTuner

# Initialize the tuner
tuner = UniPELTPlusTuner(
    base_model_name="bert-base-uncased",
    output_dir="./output",
    available_methods=["lora", "adapter"]
)

# Train the model
tuner.train(
    train_dataset=your_dataset,
    eval_dataset=your_eval_dataset
)
```

### Agent Development Example

```python
from multimind.agents import Agent

# Initialize an agent
agent = Agent(name="ExampleAgent")

# Add tools and memory
agent.add_tool("search", tool_function=search_tool)
agent.add_memory("short_term", memory_capacity=10)

# Run the agent
response = agent.run("What is the capital of France?")
print(response)
```

### Compliance Monitoring Example

```python
from multimind.compliance import ComplianceMonitor

# Initialize compliance monitor
monitor = ComplianceMonitor(
    organization_id="org_123",
    enabled_regulations=["HIPAA", "GDPR"]
)

# Run compliance check
results = await monitor.check_compliance(
    model_id="model_123",
    data_categories=["health_data"]
)

# Get compliance dashboard
dashboard = await monitor.get_dashboard_metrics(
    time_range="7d",
    use_case="medical_diagnosis"
)
```

## 📚 Documentation

- [API Reference](docs/api_reference/README.md) - Complete API documentation
- [Compliance Guide](docs/compliance.md) - Enterprise compliance features
- [Model Conversion Guide](examples/model_conversion/README.md) - Model format conversion
- [Examples](examples/README.md) - Production-ready code examples
- [Architecture](docs/architecture.md) - Detailed system design
- [Contributing Guide](CONTRIBUTING.md) - Join our development team
- [Code of Conduct](CODE_OF_CONDUCT.md) - Community guidelines
- [Issue Tracker](https://github.com/multimind-dev/multimind-sdk/issues) - Report bugs or request features

### Project Structure

```
multimind-sdk/
├── multimind/                    # Core SDK package
│   ├── gateway/                 # Gateway implementation
│   │   ├── api/                # API endpoints
│   │   ├── middleware/         # Request/response middleware
│   │   └── utils/              # Gateway utilities
│   ├── client/                 # Client libraries
│   │   ├── rag_client.py      # RAG system client
│   │   ├── agent_client.py    # Agent system client
│   │   └── compliance_client.py # Compliance client
│   ├── fine_tuning/           # Fine-tuning modules
│   │   ├── methods/           # Fine-tuning methods
│   │   ├── optimizers/        # Optimization strategies
│   │   └── trainers/          # Training implementations
│   ├── model_conversion/      # Model conversion modules
│   │   ├── converters/        # Format converters
│   │   │   ├── pytorch/      # PyTorch converters
│   │   │   ├── tensorflow/   # TensorFlow converters
│   │   │   ├── onnx/         # ONNX converters
│   │   │   └── ollama/       # Ollama converters
│   │   ├── optimizers/        # Conversion optimizers
│   │   │   ├── quantization/ # Quantization methods
│   │   │   ├── pruning/      # Model pruning
│   │   │   └── graph/        # Graph optimization
│   │   ├── validators/        # Format validators
│   │   └── utils/            # Conversion utilities
│   ├── compliance/            # Compliance features
│   │   ├── monitors/         # Compliance monitoring
│   │   ├── validators/       # Compliance validation
│   │   └── reporting/        # Compliance reporting
│   └── utils/                # Utility functions
├── examples/                  # Example implementations
│   ├── cli/                  # Command-line examples
│   │   ├── rag_cli.py       # RAG CLI tool
│   │   └── agent_cli.py     # Agent CLI tool
│   ├── api/                  # API and integration examples
│   │   ├── fastapi/         # FastAPI examples
│   │   └── flask/           # Flask examples
│   ├── model_conversion/     # Model conversion examples
│   │   ├── converters/      # Converter examples
│   │   │   ├── pytorch_to_gguf.py
│   │   │   ├── tensorflow_to_tflite.py
│   │   │   ├── onnx_to_ort.py
│   │   │   ├── pytorch_to_safetensors.py
│   │   │   └── tensorflow_to_onnx.py
│   │   ├── docker/          # Docker examples
│   │   │   ├── Dockerfile
│   │   │   └── docker-compose.yml
│   │   └── cli/             # CLI examples
│   │       └── cli_example.py
│   └── streamlit-ui/        # Streamlit-based UI examples
├── tests/                    # Test suite
│   ├── unit/                # Unit tests
│   ├── integration/         # Integration tests
│   └── e2e/                 # End-to-end tests
├── docs/                    # Documentation
│   ├── api_reference/       # API documentation
│   ├── guides/             # User guides
│   └── architecture/       # Architecture docs
└── scripts/                # Development scripts
    ├── setup/             # Setup scripts
    ├── deployment/        # Deployment scripts
    └── maintenance/       # Maintenance scripts
```

## 🤝 Contributing

We love your input! We want to make contributing to MultiMind SDK as easy and transparent as possible.

- [Contributing Guide](CONTRIBUTING.md) - How to contribute
- [Code of Conduct](CODE_OF_CONDUCT.md) - Community guidelines
- [Issue Tracker](https://github.com/multimind-dev/multimind-sdk/issues) - Report bugs or request features

### Development Setup

```bash
# Clone the repository
git clone https://github.com/multimind-dev/multimind-sdk.git
cd multimind-sdk

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

# Run tests
pytest

# Start documentation
cd multimind-docs
npm install
npm start
```


## Docker Setup

The MultiMind SDK can be run using Docker and Docker Compose. This setup includes:
- The main MultiMind SDK service
- Redis for caching and session management
- Chroma for vector storage
- Ollama for local model support

### Prerequisites

1. Install Docker and Docker Compose
2. Set up your environment variables in a `.env` file:
```bash
# API Keys
OPENAI_API_KEY=your_openai_api_key_here
CLAUDE_API_KEY=your_claude_api_key_here
HF_TOKEN=your_huggingface_token_here

# Redis Configuration
REDIS_HOST=redis
REDIS_PORT=6379

# Chroma Configuration
CHROMA_HOST=chroma
CHROMA_PORT=8000

# Application Configuration
APP_HOST=0.0.0.0
APP_PORT=8000
DEBUG=false
LOG_LEVEL=INFO

# Model Configuration
DEFAULT_MODEL=gpt-3.5-turbo
EMBEDDING_MODEL=text-embedding-ada-002
VISION_MODEL=gpt-4-vision-preview

# RAG Configuration
CHUNK_SIZE=1000
CHUNK_OVERLAP=200
TOP_K=3
```

### Running with Docker

1. Build and start the services:
```bash
docker-compose up --build
```

2. Access the services:
- MultiMind API: http://localhost:8000
- Chroma API: http://localhost:8001
- Redis: localhost:6379

3. Stop the services:
```bash
docker-compose down
```

### Development with Docker

For development, the project files are mounted as a volume, so changes to the code will be reflected immediately. The setup includes:

- Hot reloading for Python code
- Persistent storage for Redis and Chroma
- Ollama model persistence
- Environment variable management

### Services

1. **MultiMind Service**
   - Main API and SDK functionality
   - Port: 8000
   - Hot reloading enabled
   - Mounts local Ollama models

2. **Redis**
   - Caching and session management
   - Port: 6379
   - Persistent storage
   - AOF enabled for data durability

3. **Chroma**
   - Vector storage for RAG
   - Port: 8001
   - Persistent storage
   - Telemetry disabled

### Volumes

- `redis_data`: Persistent Redis storage
- `chroma_data`: Persistent Chroma storage
- `~/.ollama`: Local Ollama models

### Building Custom Images

To build a custom image:

```bash
docker build -t multimind-sdk:custom .
```

To use a custom image in docker-compose:

```yaml
services:
  multimind:
    image: multimind-sdk:custom
    # ... other configuration
```


## 💖 Support MultiMind SDK

If you find MultiMind SDK helpful, please consider supporting us to sustain development and grow the community.

Your support will help fund:

- ⚙️ Feature development and maintenance
- 📖 Better documentation and onboarding
- 🌍 Community outreach and support
- 🧪 Infrastructure, testing, and CI/CD

👉 <a href="https://opencollective.com/multimind-sdk" aria-label="Join MultiMind SDK Community">Contribute here</a>

## 📝 License

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

For more information about the Apache License 2.0, visit [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0).

## 🌟 Support

- [Discord Community](https://discord.gg/K64U65je7h) - Join our active developer community
- [GitHub Issues](https://github.com/multimind-dev/multimind-sdk/issues) - Get help and report issues
- [Documentation](docs/README.md) - Comprehensive guides

## 📣 About

MultiMind SDK is developed and maintained by the MultimindLAB team, dedicated to simplifying AI development for everyone. Visit [multimind.dev](https://www.multimind.dev) to learn more about our mission to democratize AI development.

---

<p align="center">
  Made with ❤️ by the AI2Innovate & MultimindLAB Team | <a href="https://github.com/multimind-dev/multimind-sdk/blob/main/LICENSE">License</a>
</p>

<!-- SEO CTAs -->
<div align="center">
  <h3>Ready to Build Enterprise-Grade AI Applications?</h3>
  <p>
    <a href="https://github.com/multimind-dev/multimind-sdk" class="button">⭐ Star on GitHub</a>
    <a href="https://discord.gg/K64U65je7h" class="button">💬 Join Discord</a>
    <a href="docs/quickstart.md" class="button">🚀 Get Started</a>
  </p>
  <p>
    <a href="docs/compliance.md" class="button">🔒 Learn About Compliance</a>
    <a href="examples/README.md" class="button">📚 View Examples</a>
  </p>
</div>
