Spaces:
Running
Running
Fix make_async().
Browse files
lynxkite-bio/src/lynxkite_bio/nims.py
CHANGED
|
@@ -3,7 +3,9 @@
|
|
| 3 |
from lynxkite_graph_analytics import Bundle
|
| 4 |
from lynxkite.core import ops
|
| 5 |
import httpx
|
|
|
|
| 6 |
import pandas as pd
|
|
|
|
| 7 |
import os
|
| 8 |
|
| 9 |
from . import k8s
|
|
@@ -122,14 +124,15 @@ def view_molecule(
|
|
| 122 |
row_index: int = 0,
|
| 123 |
):
|
| 124 |
molecule_data = bundle.dfs[molecule_table][molecule_column].iloc[row_index]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
|
| 126 |
return {
|
| 127 |
"data": molecule_data,
|
| 128 |
-
"format": "pdb"
|
| 129 |
-
if molecule_data.startswith("ATOM")
|
| 130 |
-
else "sdf"
|
| 131 |
-
if molecule_data.startswith("CTfile")
|
| 132 |
-
else "smiles",
|
| 133 |
}
|
| 134 |
|
| 135 |
|
|
|
|
| 3 |
from lynxkite_graph_analytics import Bundle
|
| 4 |
from lynxkite.core import ops
|
| 5 |
import httpx
|
| 6 |
+
import io
|
| 7 |
import pandas as pd
|
| 8 |
+
import rdkit
|
| 9 |
import os
|
| 10 |
|
| 11 |
from . import k8s
|
|
|
|
| 124 |
row_index: int = 0,
|
| 125 |
):
|
| 126 |
molecule_data = bundle.dfs[molecule_table][molecule_column].iloc[row_index]
|
| 127 |
+
if isinstance(molecule_data, rdkit.Chem.Mol):
|
| 128 |
+
sio = io.StringIO()
|
| 129 |
+
with rdkit.Chem.SDWriter(sio) as w:
|
| 130 |
+
w.write(molecule_data)
|
| 131 |
+
molecule_data = sio.getvalue()
|
| 132 |
|
| 133 |
return {
|
| 134 |
"data": molecule_data,
|
| 135 |
+
"format": "pdb" if molecule_data.startswith("ATOM") else "sdf",
|
|
|
|
|
|
|
|
|
|
|
|
|
| 136 |
}
|
| 137 |
|
| 138 |
|
lynxkite-core/src/lynxkite/core/ops.py
CHANGED
|
@@ -254,8 +254,8 @@ def op(
|
|
| 254 |
_view = "image"
|
| 255 |
func = matplotlib_to_image(func)
|
| 256 |
if slow:
|
| 257 |
-
func = mem.cache(func)
|
| 258 |
func = make_async(func)
|
|
|
|
| 259 |
# Positional arguments are inputs.
|
| 260 |
inputs = [
|
| 261 |
Input(name=name, type=param.annotation)
|
|
|
|
| 254 |
_view = "image"
|
| 255 |
func = matplotlib_to_image(func)
|
| 256 |
if slow:
|
|
|
|
| 257 |
func = make_async(func)
|
| 258 |
+
func = mem.cache(func)
|
| 259 |
# Positional arguments are inputs.
|
| 260 |
inputs = [
|
| 261 |
Input(name=name, type=param.annotation)
|