Skip to main content
fulcrum logo

Fulcrum Pipeline™ is a search pipeline for extreme-scale proteomics experiments. It's based on composable, modular implementations using Spark to attain near-infinite scalability.

Installation

This library requires Python 3.10+ and can be installed with pip:

pip install fulcrum-ms

You may also need to install Java if you intend to run workflows locally.

Using Fulcrum on Databricks

Fulcrum is built to quickly run in a Databricks notebook environment. After setting up a cluster, you can install directly from your notebook:

%pip install fulcrum-ms

When invoking Fulcrum you should specify the SparkSession in use using the spark keyword parameter:

from fulcrum import fulcrum

fulcrum(spark=spark, **params)

CLI Usage

Fulcrum includes a CLI that permits running a workflow using TOML parameters:

fulcrum -v --param-toml '
workflow = "v0"

[search]
backend = "read_existing"
engine = "encyclopedia"
location = "data/2017dec27_overlap_dia_6b_rep1_604to616.dia.features.txt"
'

The CLI will accept JSON or TOML as either a string or a file:

# JSON string
fulcrum --param-json '{
    "workflow": "v0",
    "search": {
      "backend": "read_existing",
      "engine": "encyclopedia",
      "location": "data/2017dec27_overlap_dia_6b_rep1_604to616.dia.features.txt"
    }
}'

# JSON file
fulcrum --json-file path/to/file.json

# TOML file
fulcrum --toml-file path/to/file.toml

Python Usage

The full flexibility of Fulcrum is available through the Python library's fulcrum function. Usage is similar from a REPL or notebook interface:

>>> import logging; logging.getLogger().setLevel("INFO")
>>> from fulcrum import fulcrum
>>> fulcrum(
...   workflow = "v0",
...   search = dict(
...     backend = "read_existing",
...     engine = "encyclopedia",
...     location = "data/2017dec27_overlap_dia_6b_rep1_604to616.dia.features.txt",
...   )
... )
INFO:fulcrum.workflow.v0:Search stage found 1770 PSMs in 4.24 sec
INFO:fulcrum.workflow.v0:Built rescoring model in 3.57 sec
INFO:fulcrum.workflow.v0:Assigning confidence across the dataset using "mokapot score" (ascending)
INFO:fulcrum.workflow.v0:Assigned confidence to 832 PSMs or peptides in 2.81 sec
INFO:fulcrum.workflow.v0:Found 522 PSMs or peptides at 1% FDR

Configuring Spark

You may configure a connection to a Spark cluster by providing an appropriate spark_config section in the workflow parameters:

[spark_config]
"spark.master"="local[*]"
"driver.memory"="4g"

When calling Fulcrum from Python, you can either specify a spark_config dict or pass a SparkSession using the spark parameter.

fulcrum(
    spark=spark_session,
)

# OR

fulcrum(
    spark_config={
        "spark.master": "local[*]",
        "driver.memory": "4g",
    },
)

Download files

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

Source Distribution

fulcrum_ms-1.9.8.tar.gz (438.1 kB view details)

Uploaded Source

Built Distribution

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

fulcrum_ms-1.9.8-py3-none-any.whl (73.3 kB view details)

Uploaded Python 3

File details

Details for the file fulcrum_ms-1.9.8.tar.gz.

File metadata

  • Download URL: fulcrum_ms-1.9.8.tar.gz
  • Upload date:
  • Size: 438.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fulcrum_ms-1.9.8.tar.gz
Algorithm Hash digest
SHA256 f1cf16452983834ddb0df9e50e9e38a9119a979105d00635f48dcfdf61b36401
MD5 db4ca2b814d4293673240d7a1bcecd91
BLAKE2b-256 ba4f8d43b0d8613335e495ca648f25f0c97e50aac5532d46f0779da184715f75

See more details on using hashes here.

Provenance

The following attestation bundles were made for fulcrum_ms-1.9.8.tar.gz:

Publisher: publish.yml on seerbio/fulcrum

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

File details

Details for the file fulcrum_ms-1.9.8-py3-none-any.whl.

File metadata

  • Download URL: fulcrum_ms-1.9.8-py3-none-any.whl
  • Upload date:
  • Size: 73.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fulcrum_ms-1.9.8-py3-none-any.whl
Algorithm Hash digest
SHA256 20f1dc5b02bdd68d01b34382031c9d87688512717a016da89961348d594a42d4
MD5 f15e4b31cb79eb36fb72500c64c2c06e
BLAKE2b-256 cf387c84e18b8e3baaa347f90eed0ee241a7c442ff11b01da34e348d10b66f88

See more details on using hashes here.

Provenance

The following attestation bundles were made for fulcrum_ms-1.9.8-py3-none-any.whl:

Publisher: publish.yml on seerbio/fulcrum

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

Release history Release notifications | RSS feed

1.9.9

2 files

This release

1.9.8 This release

2 files

1.9.7

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page