import os
from setuptools import setup, find_packages

# Read the README.md file
with open(os.path.join(os.path.dirname(__file__), "README.md"), encoding="utf-8") as f:
    long_description = f.read()

setup(
    name="langchain-g4f-chat",
    version="0.1.7",
    description="LangChain integration for g4f",
    long_description=long_description,
    long_description_content_type="text/markdown",
    packages=[
        "langchain_g4f_chat",
        "langchain_g4f_chat.text",
        "langchain_g4f_chat.g4f",
        "langchain_g4f_chat.g4f.api",
        "langchain_g4f_chat.g4f.cli",
        "langchain_g4f_chat.g4f.client",
        "langchain_g4f_chat.g4f.gui",
        "langchain_g4f_chat.g4f.image",
        "langchain_g4f_chat.g4f.integration",
        "langchain_g4f_chat.g4f.local",
        "langchain_g4f_chat.g4f.locals",
        "langchain_g4f_chat.g4f.Provider",
        "langchain_g4f_chat.g4f.providers",
        "langchain_g4f_chat.g4f.requests",
        "langchain_g4f_chat.g4f.tools",
        "langchain_g4f_chat.g4f.gui.server",
        "langchain_g4f_chat.g4f.integration.markitdown",
        "langchain_g4f_chat.g4f.Provider.audio",
        "langchain_g4f_chat.g4f.Provider.deprecated",
        "langchain_g4f_chat.g4f.Provider.hf_space",
        "langchain_g4f_chat.g4f.Provider.local",
        "langchain_g4f_chat.g4f.Provider.needs_auth",
        "langchain_g4f_chat.g4f.Provider.not_working",
        "langchain_g4f_chat.g4f.Provider.openai",
        "langchain_g4f_chat.g4f.Provider.qwen",
        "langchain_g4f_chat.g4f.Provider.search",
        "langchain_g4f_chat.g4f.Provider.template",
        "langchain_g4f_chat.g4f.Provider.needs_auth.bing",
        "langchain_g4f_chat.g4f.Provider.needs_auth.hf",
        "langchain_g4f_chat.g4f.Provider.needs_auth.mini_max",
        "langchain_g4f_chat.g4f.Provider.not_working.har",
        "langchain_g4f_chat.images",
        "langchain_g4f_chat.core",
    ],
    package_dir={"langchain_g4f_chat": "."},
    classifiers=[
        "Programming Language :: Python :: 3",
        "Programming Language :: Python :: 3.8",
        "Programming Language :: Python :: 3.9",
        "Programming Language :: Python :: 3.10",
        "Programming Language :: Python :: 3.11",
        "Programming Language :: Python :: 3.12",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
    python_requires=">=3.8",
    install_requires=[
        "langchain-core>=0.1.0",
        "pydantic>=2.0",
        "typing-extensions",
        "requests>=2.25.0",
        "aiohttp>=3.8.0",
        "curl-cffi>=0.6.2",
        "pycryptodome",
        "certifi",
        "browser_cookie3",
        "nest_asyncio",
        "werkzeug",
        "pillow",
        "platformdirs",
        "fastapi",
        "uvicorn",
        "flask",
        "brotli",
        "beautifulsoup4",
        "setuptools",
        "nodriver",
        "python-multipart",
        "a2wsgi",
        "python-dotenv",
        "ddgs",
    ],
    keywords="langchain, gpt4free, g4f, openai, chatgpt, llm",
)