Skip to main content

Drop your experiments in, get the next batch to run. Chem · chem-eng · bio.

Project description

nextup-lab

PyPI Python License: Proprietary

Find the best experimental conditions faster.

nextup-lab picks which experiments to run next when you're optimizing yield, selectivity, EC50 — anything you can measure. Hand it the conditions you've already tested and the candidates you haven't, and it ranks the candidates most likely to beat your current best.

from nextup_lab import suggest

next_batch = suggest(history, candidates, objective="yield", k=4)

Try it in Colab · 中文 README


Why this exists

A single round of experiments — catalysts, solvents, temperatures, substrates — can burn weeks of lab time, and most of the results are mediocre. nextup-lab reads what you've measured so far and ranks every untested condition by its probability of beating your current best, so each next batch is closer to optimal.

It's domain-agnostic: synthesis, formulation, microbial strain screening, process optimization — anywhere a condition is a row in a table.

How the input looks

One CSV. One column is what you measure (yield, conversion, EC50, …). Tested rows have a value; untested rows leave it blank. Everything else is conditions — numbers, category labels, or molecule SMILES, mixed freely.

catalyst solvent temp_C substrate yield
Pd-A toluene 80 CC(=O)Oc1ccccc1 73
Ni-B DMF 100 CC(=O)Oc1ccccc1 12
Pd-A toluene 100 Cc1ccccc1O

Column types are auto-detected; you don't have to label anything.

Quickstart

import pandas as pd
from nextup_lab import suggest

df = pd.read_csv("my_experiments.csv")
history    = df[df["yield"].notna()]
candidates = df[df["yield"].isna()].drop(columns=["yield"])

next_batch = suggest(history, candidates, objective="yield", k=4)
print(next_batch)

next_batch is the top-4 candidate rows, sorted best-first, with a nextup_rank column and a nextup_score column (higher = more confident the row is in the top-5% region of the response). Run those four, fill in the results, call suggest() again. Repeat.

Install

pip install nextup-lab

Python 3.10, 3.11, 3.12, on Linux / macOS / Windows. CPU-only — no GPU required. Typical call is well under a minute on pools of a few hundred candidates.

How it works (briefly)

Bayesian optimization under the hood: fit a surrogate to what you've measured, score every candidate by tail probability against your current best, return top-k. For very small inputs (fewer than 5 tested rows, or fewer than 20 candidates) it falls back to a diversity-spread pick — Bayesian methods underperform random in that regime, so it doesn't pretend otherwise.

The default model was selected from a 5-dataset × 165-config × 64-seed screen on published optimization benchmarks (Doyle Pd, Stevens Ni, Perera Suzuki, DeoxyF Ag, others). The benchmark and selection method are described in the project notes.

License

Proprietary. The package on PyPI is distributed under the license in LICENSE — closed-source binary distribution only. No source code is included in the wheel.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

nextup_lab-0.1.0-cp312-cp312-win_amd64.whl (78.3 kB view details)

Uploaded CPython 3.12Windows x86-64

nextup_lab-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (103.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nextup_lab-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (83.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

nextup_lab-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl (87.9 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

nextup_lab-0.1.0-cp311-cp311-win_amd64.whl (81.3 kB view details)

Uploaded CPython 3.11Windows x86-64

nextup_lab-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (109.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nextup_lab-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (84.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

nextup_lab-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (87.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

nextup_lab-0.1.0-cp310-cp310-win_amd64.whl (80.7 kB view details)

Uploaded CPython 3.10Windows x86-64

nextup_lab-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (110.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nextup_lab-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (84.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

nextup_lab-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (89.1 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file nextup_lab-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: nextup_lab-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 78.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nextup_lab-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e215bfda51a8d4561c5db9571847faaa798e5cf812e36c3e308674df9d48f315
MD5 c7c3c654b865ae5cdd7fc7088de10e54
BLAKE2b-256 d4e6e3bf611265f76e2262b2a71a5b8b9cccb85b380f74649d0091b3b2ab66ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 561a1aa5ce59ea0214bc85264025293f2f1e6d0a54120f4f6d21185226c8c36a
MD5 c64c3bd5c2d57058f459d169d1d86309
BLAKE2b-256 12863b0084247c045873cc22a2a62954c9b3dc7d1726ce592714e3d0066a983e

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b92665eb15fc3783fa0e4421efcdedbd69b54e0a93466e644efcea009b33d0f
MD5 344ea81f6999f2464b8e1f26261f1f5c
BLAKE2b-256 9c5bfe95b671237bdcd618dd05befea2d8d995532bcca3ccb6431816e97f726a

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 96b0250e080433008e61889ed0ef92801c897c566d07fce51751e031e245b667
MD5 292d79c74382d83913ed2e42761ac3ab
BLAKE2b-256 927bcd0e3e80063c4ab7430bed369a8eea4031e7c3242bf011720bc3e12e68cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: nextup_lab-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 81.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nextup_lab-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 eb2872497b025c08c0f62f0bda93b8afc71cb03c73e4b7cf6d42432f0be17088
MD5 e5c6a000b7f289df66dfdd84385e748e
BLAKE2b-256 7243596f56ded1619777302695020f15d994f5cdf26e2874fd8b56b4831d8fe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 36945517acaa674dc088e169b2aad7968d472456662c8200e31cee10e6fd3198
MD5 dff68be481d976112da44542e90c60c3
BLAKE2b-256 869b402fd2ab6962a96a89835bed8f349e652de15f790c9904cd60cda1825ed4

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4a4f9e8f78c6baea76875481146e2765959be5c48743bbc18b9911f3f8bb820d
MD5 c87e068a856bb3cfa9252c0fe7631c8c
BLAKE2b-256 99137d93226584e5d8bdb7df6b31b638a78e82c5c5f14231246b6675e2fcb1cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 118624894a1f00b1f2796efe2d113e833fccc497c19c16ed0a79e8693a357618
MD5 15574dd003080ca0d1cb544ac7275bf1
BLAKE2b-256 fb2fe22a020e473865606594960542bf5566863c8593d51901b2ec98ca445fd1

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: nextup_lab-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 80.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nextup_lab-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9b7c0b26cffe5bbc2d9e114e9eeb850ff3a0de6d0d70d819dc223883f19af532
MD5 733faec272d778a0001b6542d7b9083b
BLAKE2b-256 c866f0df409baff459e757abe54c7455a5ac223f87b9f966ff3bc1c2df9e1ece

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp310-cp310-win_amd64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6ec40981d78e4948d68890ae384613a4649df65ea6476694c1e19f91b4aa1adf
MD5 9d18627afa3c92f3902ef30ccc15a093
BLAKE2b-256 4302ba4f0215efd28af11fc61e27230229dabd6c10a8fc237924b1ae103044a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0287c2216f0099b2f7ff18b9ef2ea1ced0336fb483fd468243a8bb4420ce1a4d
MD5 5ae8ea2a68f2b566d742ce05496ec03e
BLAKE2b-256 4f47b6b16c6a1481dcee8bf5cf65f78e853f1bbac9f0521be6325db0a45b606d

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nextup_lab-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for nextup_lab-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 eef8a3a89ba146ab05d7cdb4941b74b0c33bd1548886588cd1a9c1755ae3a042
MD5 ed3637f4a39d7e0533aad733afc77eed
BLAKE2b-256 d35fcdf26beb290b61b86152557d96931aa8fa0c81dbbcf920f1dfb2c0292ffa

See more details on using hashes here.

Provenance

The following attestation bundles were made for nextup_lab-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build.yml on hg125chinese-sketch/nextup-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page