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.3.tar.gz (76.0 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.3-py3-none-any.whl (96.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pfnstudio_core-0.9.3.tar.gz
  • Upload date:
  • Size: 76.0 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.3.tar.gz
Algorithm Hash digest
SHA256 449c99de57b1828ff63bf3b9937d387c71a838df98795398ee773938e31fdaae
MD5 b2ce9e38ae5e30bebfa43a44576d36df
BLAKE2b-256 ca08fddfff9aa2d3f81a567dc764eace068920a5aa15d5ba5a7abb82116da62d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pfnstudio_core-0.9.3-py3-none-any.whl
  • Upload date:
  • Size: 96.4 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 83fd0b5a331202df182ee8b5ed888ab9067221e40cc211750a4fbdc1cd08da62
MD5 e10d2bcfc2e80016f397de3509d59ab3
BLAKE2b-256 391b7ad8ced671ae4e139c5ebc0685b5a6d16aa91ac5b6333298997bc482fc3f

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