|
|
import os |
|
|
|
|
|
from setuptools import find_packages, setup |
|
|
|
|
|
current_dir = os.path.abspath(os.path.dirname(__file__)) |
|
|
|
|
|
with open(os.path.join(current_dir, 'README.md'), "r", encoding="utf-8") as f: |
|
|
long_description = f.read() |
|
|
|
|
|
long_description = long_description.replace("[!NOTE]", "") |
|
|
|
|
|
INSTALL_REQUIRE = [ |
|
|
"requests", |
|
|
"aiohttp", |
|
|
"brotli", |
|
|
"pycryptodome", |
|
|
"nest_asyncio", |
|
|
] |
|
|
|
|
|
EXTRA_REQUIRE = { |
|
|
'all': [ |
|
|
"curl_cffi>=0.6.2", |
|
|
"certifi", |
|
|
"browser_cookie3", |
|
|
"ddgs", |
|
|
"beautifulsoup4", |
|
|
"platformdirs", |
|
|
"aiohttp_socks", |
|
|
"pillow", |
|
|
"cairosvg", |
|
|
"werkzeug", "flask", |
|
|
"fastapi", |
|
|
"uvicorn", |
|
|
"nodriver", |
|
|
"python-multipart", |
|
|
"a2wsgi", |
|
|
"pywebview", |
|
|
"plyer", |
|
|
"setuptools", |
|
|
"markitdown[all]", |
|
|
"python-dotenv" |
|
|
], |
|
|
'slim': [ |
|
|
"curl_cffi>=0.6.2", |
|
|
"certifi", |
|
|
"browser_cookie3", |
|
|
"ddgs", |
|
|
"beautifulsoup4", |
|
|
"aiohttp_socks", |
|
|
"pillow", |
|
|
"werkzeug", "flask", |
|
|
"fastapi", |
|
|
"uvicorn", |
|
|
"python-multipart", |
|
|
"a2wsgi", |
|
|
"markitdown[all]", |
|
|
"python-dotenv" |
|
|
], |
|
|
"image": [ |
|
|
"pillow", |
|
|
"cairosvg", |
|
|
"beautifulsoup4" |
|
|
], |
|
|
"webview": [ |
|
|
"pywebview", |
|
|
"platformdirs", |
|
|
"plyer", |
|
|
"cryptography", |
|
|
], |
|
|
"api": [ |
|
|
"loguru", "fastapi", |
|
|
"uvicorn", |
|
|
"python-multipart", |
|
|
], |
|
|
"gui": [ |
|
|
"werkzeug", "flask", |
|
|
"beautifulsoup4", "pillow", |
|
|
"ddgs", |
|
|
], |
|
|
"search": [ |
|
|
"beautifulsoup4", |
|
|
"pillow", |
|
|
"ddgs", |
|
|
], |
|
|
"local": [ |
|
|
"gpt4all" |
|
|
], |
|
|
"files": [ |
|
|
"beautifulsoup4", |
|
|
"markitdown[all]" |
|
|
] |
|
|
} |
|
|
|
|
|
DESCRIPTION = ( |
|
|
'The official gpt4free repository | various collection of powerful language models' |
|
|
) |
|
|
|
|
|
|
|
|
setup( |
|
|
name='g4f', |
|
|
version=os.environ.get("G4F_VERSION"), |
|
|
author='Tekky', |
|
|
author_email='<support@g4f.ai>', |
|
|
description=DESCRIPTION, |
|
|
long_description_content_type='text/markdown', |
|
|
long_description=long_description, |
|
|
packages=find_packages(), |
|
|
package_data={ |
|
|
'g4f': [] |
|
|
}, |
|
|
include_package_data=True, |
|
|
install_requires=INSTALL_REQUIRE, |
|
|
extras_require=EXTRA_REQUIRE, |
|
|
entry_points={ |
|
|
'console_scripts': ['g4f=g4f.cli:main'], |
|
|
}, |
|
|
url='https://github.com/xtekky/gpt4free', |
|
|
project_urls={ |
|
|
'Source Code': 'https://github.com/xtekky/gpt4free', |
|
|
'Bug Tracker': 'https://github.com/xtekky/gpt4free/issues', |
|
|
}, |
|
|
keywords=[ |
|
|
"gpt4free", |
|
|
"gpt4free.js", |
|
|
"g4f", |
|
|
"g4f.dev", |
|
|
"javascript", |
|
|
"npm", |
|
|
"browser", |
|
|
"gpt", |
|
|
"chatgpt", |
|
|
"deepseek", |
|
|
"openai", |
|
|
"ai", |
|
|
"client", |
|
|
"sdk", |
|
|
"free", |
|
|
"ai", |
|
|
"gpt-4", |
|
|
"gpt-4o", |
|
|
"chat", |
|
|
"api", |
|
|
"browser", |
|
|
"ai", |
|
|
"ai", |
|
|
"js", |
|
|
"client", |
|
|
"text", |
|
|
"generation", |
|
|
"image", |
|
|
"generation", |
|
|
"in-browser", |
|
|
"ai", |
|
|
"frontend", |
|
|
"ai", |
|
|
"openai", |
|
|
"alternative", |
|
|
"javascript", |
|
|
"ai", |
|
|
"library", |
|
|
"nodejs", |
|
|
"prompt", |
|
|
"engineering", |
|
|
"chatbot", |
|
|
"ai", |
|
|
"integration" |
|
|
], |
|
|
classifiers=[ |
|
|
'Development Status :: 2 - Pre-Alpha', |
|
|
'Intended Audience :: Developers', |
|
|
'Programming Language :: Python :: 3', |
|
|
'Operating System :: Unix', |
|
|
'Operating System :: MacOS :: MacOS X', |
|
|
'Operating System :: Microsoft :: Windows', |
|
|
], |
|
|
) |
|
|
|