-
Notifications
You must be signed in to change notification settings - Fork 1
/
setup.py
93 lines (86 loc) · 2.88 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
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",
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 doesn't currently support python<3.10: https://github.com/skrub-data/skrub/issues/815
"skrub==0.1.0 ; python_version>='3.10'",
# We fetch this branch which removes python 3.10 style type annotations instead, then
"skrub @ git+https://github.com/jeromedockes/skrub.git@strip-type-annotations ; python_version<'3.10'",
# https://github.com/skrub-data/skrub/issues/910
"scikit-learn==1.4.2",
"huggingface_hub",
"datasets",
"lark",
"exrex",
"platformdirs",
"attrs",
"tqdm",
"colorama",
"tabulate>=0.9.0",
"typeguard",
"rapidfuzz",
],
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",
],
"test": ["pytest", "pre-commit", "llama-cpp-python", "transformers", "torch"],
"docs": [
"mkdocs-material",
"mkdocstrings",
"mkdocs-section-index",
"mkdocstrings-python",
"mkdocs-jupyter",
],
"demo": ["chainlit"],
},
)