Skip to content
Open
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
0db286f
working on packaging
Andrewq11 Oct 7, 2024
ec127fb
updating install script
Andrewq11 Oct 7, 2024
648ae10
packaging for pypi
Andrewq11 Oct 11, 2024
8d24f8f
packaging wip
Andrewq11 Oct 28, 2024
ad26fe9
conda package wip
Andrewq11 Oct 29, 2024
ffca704
removing ipu work
Andrewq11 Nov 5, 2024
3ae124c
Merge branch 'graphium_3.0' into andrew/packaging
Andrewq11 Nov 5, 2024
00daea5
debug wip
Andrewq11 Nov 5, 2024
f2d8f4e
Merge branch 'graphium_3.0' into andrew/packaging
Andrewq11 Nov 5, 2024
522dfb3
wip
Andrewq11 Nov 6, 2024
7530e7d
linking library that is now randomly needed
Andrewq11 Nov 6, 2024
6bfbcb7
packaging updates
Andrewq11 Nov 6, 2024
00f896d
doxygen, updating install docs, updating workflows
Andrewq11 Nov 6, 2024
65cf137
small comments
Andrewq11 Nov 6, 2024
95e0450
removing extra ipu file
Andrewq11 Nov 6, 2024
a000689
updating python version pinning
Andrewq11 Nov 6, 2024
7ce838e
fixing paste error
Andrewq11 Nov 6, 2024
0a4c1b6
updating pyproject.toml deps
Andrewq11 Nov 6, 2024
ea73e46
updating pyproject.toml deps
Andrewq11 Nov 6, 2024
072a4fa
deleting post-install script
Andrewq11 Nov 6, 2024
782b500
updating main page of graphium_cpp
Andrewq11 Nov 7, 2024
4d16e29
updating version pinnings
Andrewq11 Nov 7, 2024
6d193b4
doc updates, workflow updates
Andrewq11 Nov 7, 2024
73ffd37
updating testing workflow
Andrewq11 Nov 7, 2024
3050f60
updating test matrix
Andrewq11 Nov 7, 2024
bba8167
fix syntax err
Andrewq11 Nov 7, 2024
c72d45e
removing support for py39
Andrewq11 Nov 7, 2024
cc674bb
adding pytest to workflow
Andrewq11 Nov 7, 2024
bc03e1b
updating workflow
Andrewq11 Nov 7, 2024
004970e
reverting updated tests
Andrewq11 Nov 7, 2024
1368b4c
fixing os runner issue
Andrewq11 Nov 7, 2024
ed3264c
fixing os runner issue
Andrewq11 Nov 7, 2024
27ff22a
updating test workflow
Andrewq11 Nov 7, 2024
d70341b
updating env file for windows
Andrewq11 Nov 7, 2024
b9247bc
debug windows build
Andrewq11 Nov 7, 2024
9e29c69
Adding pytorch channel
Andrewq11 Nov 7, 2024
55b4076
updating linking order
Andrewq11 Nov 9, 2024
84d5489
updating compiler flags for windows
Andrewq11 Nov 12, 2024
79ce0f0
formatting & adding 3.10 windows test
Andrewq11 Nov 12, 2024
fe714d7
updating lib path for python 310, dll import error
Andrewq11 Nov 12, 2024
938ea74
debugging github runner
Andrewq11 Nov 12, 2024
f4275b1
adding new step for windows debug
Andrewq11 Nov 12, 2024
90dc934
windows runner debug
Andrewq11 Nov 12, 2024
1b1aa99
force re-install env
Andrewq11 Nov 12, 2024
050829d
force re-install rdkit
Andrewq11 Nov 12, 2024
17346f8
updating failing test on windows
Andrewq11 Nov 12, 2024
3a10b45
fixing CI on Windows & re-enabling other OS'
Andrewq11 Nov 13, 2024
03a1a5f
black format
Andrewq11 Nov 13, 2024
773d188
Changed the overview page to match the Readme
DomInvivo Nov 13, 2024
a4bab4e
add env_windows.yml note to developer install
Andrewq11 Nov 13, 2024
2f4ebf5
adding os-specific env files
Andrewq11 Nov 13, 2024
da58ea8
minor doc change
DomInvivo Nov 14, 2024
c0b3805
removing rdkit pinning
Andrewq11 Nov 14, 2024
b7da3bc
removing rdkit version pinning
Andrewq11 Nov 14, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/doc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@ jobs:

echo "Auto-generating typer docs"
typer graphium.cli.__main__ utils docs --name graphium --output docs/cli/graphium.md

echo "Generating Graphium C++ docs"
doxygen Doxyfile

echo "Get the gh-pages branch"
git fetch origin gh-pages
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,9 @@ jobs:

- name: Deploy the doc
run: |
echo "Generating Graphium C++ docs"
doxygen Doxyfile

echo "Get the gh-pages branch"
git fetch origin gh-pages

Expand Down
2,862 changes: 2,862 additions & 0 deletions Doxyfile

Large diffs are not rendered by default.

20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,23 @@ A deep learning library focused on graph representation learning for real-world

Visit https://graphium-docs.datamol.io/.

## Installation for developers
## Installation for users
### conda-forge
conda-forge is the recommended method for installing Graphium. To install Graphium via conda-forge, run the following command:
```
conda install graphium
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
conda install graphium
mamba install graphium -c conda-forge

```

Note: we recommend using [`mamba`](https://github.com/mamba-org/mamba) instead of `conda`. It is a faster and better alternative.

Use [`mamba`](https://github.com/mamba-org/mamba), a faster and better alternative to `conda`.
### PyPi
To install Graphium via PyPi, run the following command:
```
pip install graphium
```
Note: the latest available version of Graphium on PyPi is `2.4.7`. This is due to the addition of C++ code in version `3.0.0` that depends on packages only available via conda-forge. There are plans to eventually support Graphium `>=3.0.0` on PyPi.

## Installation for developers

If you are using a GPU, we recommend enforcing the CUDA version that you need with `CONDA_OVERRIDE_CUDA=XX.X`.

Expand All @@ -47,7 +61,7 @@ mamba env create -f env.yml -n graphium

# Install Graphium in dev mode
mamba activate graphium
pip install --no-deps -e .
pip install --no-deps --no-build-isolation -e .
```

## Training a model
Expand Down
120 changes: 120 additions & 0 deletions docs/graphium_cpp/docs/annotated.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.11.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Graphium C++: Class List</title>
<link rel="icon" href="logo-mini-dark.png" type="image/x-icon" />
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="logo-mini-white-doxygen.png"/></td>
<td id="projectalign">
<div id="projectname">Graphium C++<span id="projectnumber">&#160;3.0.0</span>
</div>
<div id="projectbrief">C++ accelerations of Graphium&#39;s featurization and data loading processes</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.11.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="doc-content">
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
<div class="headertitle"><div class="title">Class List</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_compact_atom.html" target="_self">CompactAtom</a></td><td class="desc">Most of the data needed about an atom </td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_compact_bond.html" target="_self">CompactBond</a></td><td class="desc">Most of the data needed about a bond </td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_feature_values.html" target="_self">FeatureValues</a></td><td class="desc"></td></tr>
<tr id="row_3_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_feature_values_3_01double_01_4.html" target="_self">FeatureValues&lt; double &gt;</a></td><td class="desc">Explicit instantiation of <code><a class="el" href="struct_feature_values.html">FeatureValues</a></code> for <code>double</code> (FP64) </td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_feature_values_3_01float_01_4.html" target="_self">FeatureValues&lt; float &gt;</a></td><td class="desc">Explicit instantiation of <code><a class="el" href="struct_feature_values.html">FeatureValues</a></code> for <code>float</code> (FP32) </td></tr>
<tr id="row_5_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_feature_values_3_01int16__t_01_4.html" target="_self">FeatureValues&lt; int16_t &gt;</a></td><td class="desc"></td></tr>
<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_graph_data.html" target="_self">GraphData</a></td><td class="desc">Data representing a molecule before featurization </td></tr>
<tr id="row_7_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_init_numpy_array_module.html" target="_self">InitNumpyArrayModule</a></td><td class="desc"></td></tr>
<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_laplacian_data.html" target="_self">LaplacianData</a></td><td class="desc">Structure for caching eigendecomposition of the graph Laplacian matrix </td></tr>
<tr id="row_9_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_mol_brief_data.html" target="_self">MolBriefData</a></td><td class="desc"></td></tr>
<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_mol_key.html" target="_self">MolKey</a></td><td class="desc"></td></tr>
<tr id="row_11_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_neighbor_data.html" target="_self">NeighborData</a></td><td class="desc"></td></tr>
<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_normalization_options.html" target="_self">NormalizationOptions</a></td><td class="desc"></td></tr>
<tr id="row_13_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_one_hot_lookup.html" target="_self">OneHotLookup</a></td><td class="desc"></td></tr>
<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_positional_options.html" target="_self">PositionalOptions</a></td><td class="desc"></td></tr>
<tr id="row_15_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_types.html" target="_self">Types</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.11.0
</small></address>
</div><!-- doc-content -->
</body>
</html>
Binary file added docs/graphium_cpp/docs/bc_s.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/graphium_cpp/docs/bc_sd.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
105 changes: 105 additions & 0 deletions docs/graphium_cpp/docs/class_one_hot_lookup-members.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.11.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Graphium C++: Member List</title>
<link rel="icon" href="logo-mini-dark.png" type="image/x-icon" />
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="logo-mini-white-doxygen.png"/></td>
<td id="projectalign">
<div id="projectname">Graphium C++<span id="projectnumber">&#160;3.0.0</span>
</div>
<div id="projectbrief">C++ accelerations of Graphium&#39;s featurization and data loading processes</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.11.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">OneHotLookup&lt; NUM_IN, MAX_OUT &gt; Member List</div></div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="class_one_hot_lookup.html">OneHotLookup&lt; NUM_IN, MAX_OUT &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>OneHotLookup</b>(const size_t list[MAX_OUT]) (defined in <a class="el" href="class_one_hot_lookup.html">OneHotLookup&lt; NUM_IN, MAX_OUT &gt;</a>)</td><td class="entry"><a class="el" href="class_one_hot_lookup.html">OneHotLookup&lt; NUM_IN, MAX_OUT &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator[]</b>(size_t i) const (defined in <a class="el" href="class_one_hot_lookup.html">OneHotLookup&lt; NUM_IN, MAX_OUT &gt;</a>)</td><td class="entry"><a class="el" href="class_one_hot_lookup.html">OneHotLookup&lt; NUM_IN, MAX_OUT &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.11.0
</small></address>
</div><!-- doc-content -->
</body>
</html>
Loading
Loading