Skip to main content

Core abstractions for PFN Studio — Prior, Model, Eval, Run, and the block registry.

Project description

pfnstudio-core

The Python contract for PFN Studio FM projects.

from pfnstudio_core import Prior, Model, Run, register_block, register_prior, register_scorer
from pfnstudio_core.scorers.base import DatasetScorer, ScorerResult

@register_prior("my_prior")
class MyPrior(Prior):
    def sample(self, seed: int): ...

@register_block("my_attention")
class MyAttention:
    def __init__(self, d_model: int, n_heads: int): ...

# Paper-specific scorer — ships in the template beside evals/<slug>.yaml.
@register_scorer("my_eval")
class MyScorer(DatasetScorer):
    def score(self, *, model, eval_spec, loader, run_spec) -> ScorerResult: ...

The CLI discovers anything registered via these decorators and validates models/*.yaml references against the registry.

Layout

  • prior.pyPrior ABC and built-in prior loader
  • model.pyModel config + block-composition
  • eval.pyEvalSpec — the declarative benchmark spec (dataset + metrics + baselines)
  • scorers/DatasetScorer — the executable scoring pipeline; core ships only generic scorers, paper-specific ones live in templates
  • run.pyRun manifest + executor protocol
  • registry.py@register_prior, @register_block, @register_scorer and discovery
  • loaders.py — load YAML artifacts into typed objects
  • blocks/ — built-in architecture blocks (transformer encoder, causal attention, heads)
  • training/ — minimal in-process training loop for the local compute adapter

Project details


Download files

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

Source Distribution

pfnstudio_core-0.9.0.tar.gz (74.7 kB view details)

Uploaded Source

Built Distribution

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

pfnstudio_core-0.9.0-py3-none-any.whl (95.0 kB view details)

Uploaded Python 3

File details

Details for the file pfnstudio_core-0.9.0.tar.gz.

File metadata

  • Download URL: pfnstudio_core-0.9.0.tar.gz
  • Upload date:
  • Size: 74.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for pfnstudio_core-0.9.0.tar.gz
Algorithm Hash digest
SHA256 2d5f9d0aded3127bb135091ec44c62b6e50ad96cbf81b4e460edd0ca4f631ad0
MD5 030bf4763b54873884d61fb083dde912
BLAKE2b-256 21301db2df18d29127f451fa799c4f326170de32f09601e36e8f37cce4a8c3ed

See more details on using hashes here.

File details

Details for the file pfnstudio_core-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: pfnstudio_core-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 95.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for pfnstudio_core-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 27fae000cb055ec32efeb9db213980ae40efb8451ed17156b6fb7220834844ce
MD5 efd35c7b4c24de256caa7243c67dbd3f
BLAKE2b-256 08524006f0cf38945092c46f8b902b11a2550ed0feaea7eb6a96bd98d7ce9dde

See more details on using hashes here.

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