import pathlib
from setuptools import setup, find_packages

setup(
    name="samosila-core",
    version="0.0.3",
    author="Mohammad Javad Hosseini",
    author_email="johndoe2561357@protonmail.com",
    description="",
    long_description=pathlib.Path("README.md").read_text(),
    long_description_content_type="text/markdown",
    license="MIT",
    python_requires=">=3.10,<3.12",
    packages=find_packages(),
    include_package_data=True,
    install_requires=[
        "appdirs",
        "certifi",
        "cryptography",
        "regex",
        "requests",
        "requests-file",
        "requests-html",
        "tokenizers>=0.15",
        "Pillow>=10",
        "python-dotenv>=1",
        "pydantic_settings>=2",
        "six",
        "tiktoken>=0.5",
        "unstructured>=0.11",
        "validators",
        "httpx>=0.25",
        "pydantic>=2",
        "tenacity>=8.2.3",
        "openai>=1",
        "aiohttp"
    ],
    extras_require={
        "full": [
            "cohere",
            "context-python",
            "ctranslate2",
            "datasets",
            "deepeval",
            "edge-tts",
            "elevenlabs",
            "faster-whisper>=0.10",
            "fireworks-ai>=0.9",
            "faiss-cpu>=1.7",
            "g4f",
            "google-generativeai>=0.3",
            "gptcache>=0.1.43",
            "gradientai",
            "huggingface-hub>=0.19",
            "jsonschema",
            "langchain>=0.0.350",
            "librosa>=0.10",
            "llama-index",
            "llama_cpp_python",
            "llmlingua",
            "lunary",
            "nltk>=3.8",
            "novita_client>=0.4",
            "omegaconf>=2.3",
            "prompt-toolkit>=3",
            "promptlayer",
            "PyAudio",
            "pymilvus>=2",
            "sentence-transformers>=2.2",
            "sentencepiece",
            "sentry-sdk>=1",
            "soundfile",
            "timm>=0.4.12",
            "together",
            "torch>=2",
            "torchaudio>=2",
            "torchvision>=0.15",
            "transformers>=4.36",
            "TTS>=0.22",
            "voyageai",
            "chromadb>=0.4",
            "deeplake",
            "pinecone-client>=2.2",
            "qdrant-client",
            "redis>=4.3",
            "replicate>=0.21",
            "weaviate-client>=3.25",
            "ai21",
            "lancedb"
        ]
    }
)
