diff --git a/pyproject.toml b/pyproject.toml index 54e3a7cc..e65fef5a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,64 @@ +[build-system] +requires = ["setuptools >= 61.0"] +build-backend = "setuptools.build_meta" + +[project] +name = "blendsql" +description = "Query language for blending SQL logic and LLM reasoning across multi-modal data. [Findings of ACL 2024]" +authors = [ + {"name" = "Parker Glenn", "email" = "parkervg5@gmail.com"} +] +readme = "README.md" +requires-python = ">=3.9" +license = {file = "LICENSE"} +keywords = [ + "language models", + "query language", + "symbolic ai", + "sql" +] +classifiers = [ + "Development Status :: 4 - Beta", + "Intended Audience :: Developers", + "Intended Audience :: Science/Research", + "Topic :: Scientific/Engineering :: Artificial Intelligence", + "Topic :: Text Processing", + "Programming Language :: Python :: 3", +] +dependencies = [ + "guidance", + "pyparsing==3.1.1", + "pandas>=2.0.0", + "bottleneck>=1.3.6", + "python-dotenv==1.0.1", + "sqlglot==18.13.0", + "sqlalchemy>=2.0.0", + "skrub==0.2.0", + "scikit-learn==1.4.2", + "duckdb<1", + "huggingface_hub", + "datasets", + "platformdirs", + "attrs", + "tqdm", + "colorama", + "tabulate>=0.9.0", + "typeguard", + "rapidfuzz", + "httpx", + "setuptools", # For python 3.12 +] +dynamic = ["version"] + +[project.urls] +Documentation = "https://parkervg.github.io/blendsql/" + +[project.scripts] +blendsql = "blendsql.blend_cli:main" + +[tool.setuptools] +packages = ["blendsql"] + [tool.black] line-length = 88 diff --git a/setup.py b/setup.py deleted file mode 100644 index d4bf2293..00000000 --- a/setup.py +++ /dev/null @@ -1,93 +0,0 @@ -import os -import re -import codecs -from setuptools import setup, find_packages - -here = os.path.abspath(os.path.dirname(__file__)) - - -def read(*parts): - with codecs.open(os.path.join(here, *parts), "r") as fp: - return fp.read() - - -def find_version(*file_paths): - version_file = read(*file_paths) - version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", version_file, re.M) - if version_match: - return version_match.group(1) - raise RuntimeError("Unable to find version string.") - - -setup( - entry_points={ - "console_scripts": ["blendsql=blendsql.blend_cli:main"], - }, - name="blendsql", - python_requires=">=3.9", - version=find_version("blendsql", "__init__.py"), - url="https://github.com/parkervg/blendsql", - author="Parker Glenn", - author_email="parkervg5@gmail.com", - description="Query language for blending SQL logic and LLM reasoning across multi-modal data.", - long_description=open("README.md").read(), - long_description_content_type="text/markdown", - license="Apache License 2.0", - packages=find_packages(exclude=["examples", "research", "img"]), - include_package_data=True, - data_files=[ - "blendsql/grammars/_cfg_grammar.lark", - "blendsql/prompts/few_shot/hybridqa.txt", - ], - install_requires=[ - "outlines", - "pyparsing==3.1.1", - "pandas>=2.0.0", - "bottleneck>=1.3.6", - "python-dotenv==1.0.1", - "sqlglot==18.13.0", - "sqlalchemy>=2.0.0", - "skrub==0.2.0", - # https://github.com/skrub-data/skrub/issues/910 - "scikit-learn==1.4.2", - "duckdb<1", - "huggingface_hub", - "datasets", - "lark", - "exrex", - "platformdirs", - "attrs", - "tqdm", - "colorama", - "tabulate>=0.9.0", - "typeguard", - "rapidfuzz", - "httpx", - "pillow", - "setuptools", # For python 3.12 - ], - extras_require={ - "llama-cpp": ["llama-cpp-python"], - "ollama": ["ollama"], - "openai": ["openai>1.0.0"], - "transformers": ["transformers>=4.0.0", "datasets", "torch>=2.3.0"], - "research": [ - "datasets==2.16.1", - "nltk", - "wikiextractor", - "rouge_score", - "rapidfuzz", - "records", - "recognizers-text", - "recognizers-text-suite", - "emoji==1.7.0", - ], - "docs": [ - "mkdocs-material", - "mkdocstrings", - "mkdocs-section-index", - "mkdocstrings-python", - "mkdocs-jupyter", - ], - }, -)