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.2.tar.gz (75.6 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.2-py3-none-any.whl (95.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pfnstudio_core-0.9.2.tar.gz
  • Upload date:
  • Size: 75.6 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.2.tar.gz
Algorithm Hash digest
SHA256 620cf1ae101a1be77d3af67ecfaadc73ebf3775847c20bd5793d14176bb8d61c
MD5 5c90078c8a65f098b7f84964db82ee08
BLAKE2b-256 34b9c17aaa79071fd144904a758b8f6d3993f266562eb939f86e2153f7f98688

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pfnstudio_core-0.9.2-py3-none-any.whl
  • Upload date:
  • Size: 95.9 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ffd726ac76b92670acfb3ffe33f2656223626211b4ef747d9f236625f43fe7a0
MD5 5bed534cd8045f7a9d5138e622d0de18
BLAKE2b-256 041a156eef695dcf6e99896fbaa8b5bdc31f2fb7ddadd6df76dae6ca4948b76c

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