forked from nlweb-ai/NLWeb_Core
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.py
More file actions
111 lines (101 loc) · 3.65 KB
/
Copy pathsetup.py
File metadata and controls
111 lines (101 loc) · 3.65 KB
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
from setuptools import setup, find_packages
import os
# Read README for long description
with open("README.md", "r", encoding="utf-8") as fh:
long_description = fh.read()
setup(
name="nlweb-core",
version="0.1.0",
packages=find_packages(where='packages/core') +
find_packages(where='packages/dataload') +
find_packages(where='packages/network'),
package_dir={
'': 'packages/core',
'nlweb_dataload': 'packages/dataload/nlweb_dataload',
'nlweb_network': 'packages/network/nlweb_network',
},
include_package_data=True,
python_requires=">=3.8",
install_requires=[
# Core dependencies
"aiohttp>=3.8.0",
"pyyaml>=6.0",
"python-dotenv>=0.19.0",
# Azure dependencies
"azure-search-documents>=11.4.0",
"azure-identity>=1.12.0",
"azure-core>=1.26.0",
# OpenAI
"openai>=1.12.0",
],
extras_require={
# Development dependencies
"dev": [
"pytest>=7.0",
"black>=22.0",
"flake8>=4.0",
],
# Optional LLM providers
"anthropic": ["anthropic>=0.18.0"],
"gemini": ["google-generativeai>=0.3.0"],
"huggingface": ["huggingface_hub>=0.31.0"],
# Optional embedding providers
"ollama": ["ollama>=0.5.1"],
# Optional vector databases
"qdrant": ["qdrant-client>=1.7.0"],
"elasticsearch": ["elasticsearch>=8.0.0"],
"opensearch": ["opensearch-py>=2.0.0"],
"postgres": ["psycopg2-binary>=2.9.0"],
"milvus": ["pymilvus>=2.3.0"],
# Optional utilities
"snowflake": ["httpx>=0.28.1"],
# Web server extras
"cors": ["aiohttp-cors>=0.7.0"],
# All optional dependencies
"all": [
"anthropic>=0.18.0",
"google-generativeai>=0.3.0",
"huggingface_hub>=0.31.0",
"ollama>=0.5.1",
"qdrant-client>=1.7.0",
"elasticsearch>=8.0.0",
"opensearch-py>=2.0.0",
"psycopg2-binary>=2.9.0",
"pymilvus>=2.3.0",
"httpx>=0.28.1",
"aiohttp-cors>=0.7.0",
],
},
author="Microsoft Corporation",
author_email="",
description="NLWeb Core library for building natural language web applications with vector database retrieval and LLM-based ranking",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://github.com/yourusername/NLWeb_Core",
project_urls={
"Bug Tracker": "https://github.com/yourusername/NLWeb_Core/issues",
"Documentation": "https://github.com/yourusername/NLWeb_Core/blob/main/README.md",
"Source Code": "https://github.com/yourusername/NLWeb_Core",
},
classifiers=[
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Internet :: WWW/HTTP :: HTTP Servers",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"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",
],
keywords="nlp, llm, vector-database, rag, retrieval, azure, openai, search",
entry_points={
"console_scripts": [
"nlweb-server=nlweb_core.simple_server:main",
],
},
)