Skip to main content

Crate overbrainer

Crate overbrainer 

Source
Expand description

overbrainer: distill a parent LLM into a smaller child model.

Modules§

cli
Command line interface.
compare
overbrainer compare: the child against the parent on the eval set.
config
Typed configuration loaded from overbrainer.toml and OVERBRAINER_* env vars.
dataset
Dataset records, stable IDs and JSONL files.
dedup
Near-duplicate filtering of generated questions.
events
Progress events published by pipeline stages and training runs. The core never renders: the CLI turns events into log lines, the TUI (later) into views.
exec
Running a training job on a target: the Executor trait and its Local and Ssh implementations.
export
Export of a trained run to GGUF with llama.cpp, and its Ollama Modelfile.
history
The project’s stage history: .overbrainer/history.jsonl, one line per stage execution, appended when the stage ends. Never rewritten.
hub
Publishing to the Hugging Face Hub.
llm
LLM clients for the openai and anthropic wire protocols.
logging
Tracing setup: formatted lines on stderr for the command line, an in-memory buffer for the terminal UI.
metrics
Prometheus metrics of a project, served at GET /metrics while a command holds the project. Counters start from the stage history, then follow the events of every bus the command builds with them as its Observer, so they are cumulative per project. Retries are not in the history: they restart at zero with each process.
pipeline
Pipeline stages: subtopics, questions, answers, split.
pricing
Model prices read from the provider’s /models listing, when it exposes them.
project_format
The project format: .overbrainer/version, one integer line naming the layout of the project’s files. A project without it predates 0.4.0, whose format is 1; overbrainer migrate brings it up to date.
project_lock
One overbrainer process per project: an exclusive lock on the project directory itself, held until the process exits. The OS releases it when the process dies. .overbrainer/lock only holds the holding process’s PID, for the “another overbrainer (pid N)” message; it plays no part in exclusivity.
prompts
Prompt templates: built-in defaults, overridable per project in prompts/.
retry
Retries with exponential backoff and jitter, shared by the HTTP clients (the LLM providers and the Runpod API).
runpod
Runpod as a training target: a pod created for a run over the REST API (v2), reached over SSH with per-run keys, guarded by a watchdog running on the pod, and deleted once the run’s results are retrieved.
runs
Training runs: runs/<run-id>/ directories, their run.json record, and the train, attach and cancel flows.
secrets
Secret resolution (literal values or vault: references), and the redaction of log lines that come from outside overbrainer.
system
What the machine of a training run looks like: disk, CPU, memory and GPUs, read by one shell script in one round trip (probe_script) and parsed into a SystemSample (parse).
train
Fine-tuning: the Trainer trait and its Axolotl implementation.
tui
The terminal UI, overbrainer tui: the configuration and stats of the project, the dataset, the pipeline stages, training runs, the logs and the compares in six views. It runs the flows the command line runs, and writes nothing to stdout or stderr while the terminal shows it.
update
Looks up the latest overbrainer release on crates.io, at most once a day, and at most once an hour after an attempt that gave no answer.