-
Notifications
You must be signed in to change notification settings - Fork 25
/
setup.py
56 lines (49 loc) · 1.93 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
"""Gryffin: An algorithm for Bayesian optimization of categorical variables informed by expert knowledge
"""
__author__ = 'Florian Hase, Matteo Aldeghi'
import versioneer
from setuptools import setup, find_packages
from distutils.extension import Extension
import numpy as np
# readme file
def readme():
with open('README.md') as f:
return f.read()
# ----------
# Extensions
# ----------
ext_modules = [Extension('gryffin.bayesian_network.kernel_evaluations',
['src/gryffin/bayesian_network/kernel_evaluations.c'],
include_dirs=[np.get_include()]),
Extension('gryffin.bayesian_network.kernel_prob_reshaping',
['src/gryffin/bayesian_network/kernel_prob_reshaping.c'],
include_dirs=[np.get_include()])]
# -----
# Setup
# -----
setup(name='gryffin',
version=versioneer.get_version(),
cmdclass=versioneer.get_cmdclass(),
description='Bayesian optimization for continuous and categorical variables',
long_description=readme(),
long_description_content_type='text/markdown',
classifiers=[
'Development Status :: 4 - Beta',
'License :: OSI Approved :: Apache Software License',
'Programming Language :: Python',
'Intended Audience :: Science/Research',
'Topic :: Scientific/Engineering',
],
url='https://github.com/aspuru-guzik-group/gryffin',
author='Florian Hase, Matteo Aldeghi',
author_email='[email protected]',
license='Apache License 2.0',
packages=find_packages('./src'),
package_dir={'': 'src'},
zip_safe=False,
tests_require=['pytest'],
install_requires=['numpy', 'sqlalchemy', 'rich', 'pandas', 'matter-chimera', 'deap', 'torch', 'torchbnn'],
python_requires=">=3.7",
ext_modules=ext_modules,
entry_points={"console_scripts": ["gryffin = gryffin.cli:entry_point"]}
)