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.9.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.9-py3-none-any.whl (73.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fulcrum_ms-1.9.9.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.9.tar.gz
Algorithm Hash digest
SHA256 f39792c36b3cbe7253f80ff1f4b94aba61f2a59ee5208fed386d87630907fbb0
MD5 5678810e3cee8fb3593eb5c7f46da0fe
BLAKE2b-256 188d21c75e4a83d9689c16d992af9f78e80227cc9c0cff764540384ac1d786c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for fulcrum_ms-1.9.9.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.9-py3-none-any.whl.

File metadata

  • Download URL: fulcrum_ms-1.9.9-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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 5ae64481f5d4ec480bbdaeace65d9291f4d5d94b076d5cb9d4eb9d99cff81392
MD5 543d53a3867923854dc995706f612f12
BLAKE2b-256 1c64607dc504ff4d214cdd1b9658e0af0a82e7a572ab7ae3cbe110d465d891bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for fulcrum_ms-1.9.9-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

This release

1.9.9 This release

2 files

1.9.8

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