Skip to main content

Backend-agnostic workflow scaffolding for Arabic morphology probing experiments.

Project description

Sarf Atlas

Sarf is a backend-agnostic research framework for Arabic morphology probing experiments. It organizes datasets, prompts, splits, extraction metadata, and evaluation artifacts, and is designed to let hidden states or logits come from Ember, llama.cpp, Transformers, or precomputed files.

Architecture slogan:

Sarf organizes.
Backends extract.
Auditors compare.

Sarf Atlas is not replacing Ember. Ember is currently the strongest local backend path, but Sarf should not depend on one inference engine. Sarf owns Arabic morphology schemas, task definitions, prompt templates, split strategies, experiment configs, expected artifact schemas, report scaffolding, backend-agnostic validation, and adapters for importing backend outputs.

Sarf does not own model execution internals, hidden-state extraction implementation, llama.cpp compilation as a required behavior, or Ember internals. Base Sarf works without local extraction backends installed.

The current split is:

  • ember: one validated backend/tooling path for extraction artifacts.
  • sarf-atlas: Arabic morphology research workspace, paper configs, notes, experiment manifests, package skeleton, and backend-agnostic workflow planning.
  • gguf-parity-tools: validation and parity harness.

Quickstart

Install Sarf Atlas:

pip install sarf-atlas

Generate the v0.1 toy workflow scaffold:

sarf example-workflow --out-dir /tmp/sarf-atlas-v0.1-example

This writes a toy morphology dataset, prompts, split metadata, Ember config placeholders, a Sarf artifact manifest, and an example workflow manifest. It is framework scaffolding only, not hidden-state extraction, Paper 1 reproduction, or research output.

Current adapter namespace:

  • sarf.backends.ember
  • sarf.backends.files
  • sarf.backends.llama_cpp

Future optional adapters may cover Transformers/HF, vLLM, and additional precomputed hidden-state formats.

Optional Backends

Sarf v0.1 can inspect local backend availability, but detection is optional and does not make llama.cpp, Ember, Transformers/HF, or hidden-state extraction part of the base package:

sarf backends list
sarf backend llama-cpp doctor
sarf backend ember doctor

llama.cpp detection checks LLAMA_TOKENIZE_BIN, LLAMA_CLI_BIN, LLAMA_SIMPLE_BIN, and common PATH names. Default llama.cpp is useful for some local tokenization/logits workflows, but it should not be treated as emitting Sarf-compatible hidden-state artifacts.

Ember detection checks EMBER_BIN, PATH ember, and whether ember validate-run --help is callable when an Ember binary is found. Ember is optional; Sarf can still organize workflows and import artifacts from files.

Users may bring artifacts from llama.cpp, Ember, HF/Transformers, or precomputed files. Hidden-state extraction is not built into base Sarf and requires an emitting backend such as Ember, patched llama.cpp, HF/Transformers, or precomputed Sarf-compatible artifacts.

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

sarf_atlas-0.1.0.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

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

sarf_atlas-0.1.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file sarf_atlas-0.1.0.tar.gz.

File metadata

  • Download URL: sarf_atlas-0.1.0.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for sarf_atlas-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fff9ae40b5dd3fe8611911f98fe3f1c7a9960631370159f5fc42552fdd7baaac
MD5 491750d03de83747f3bc20974d810801
BLAKE2b-256 db57cc516006634f63108db2752ce9aa6309ff3f72de1693633a2bfe5d3edbba

See more details on using hashes here.

File details

Details for the file sarf_atlas-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sarf_atlas-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for sarf_atlas-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 afb86affb8f5ab587445b04b9bab1aea5bcb856955f29a2a8f6b840cb6c7d8ed
MD5 07523aa69773bd0fb19e2f07387e5099
BLAKE2b-256 0640671637765843b3c9b206411c72e3db4ece59d724b1fd7f6ad805cd7c5462

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