slicktune.recipes¶
Opinionated recipe helpers.
Submodules¶
Classes¶
Aggregate probe results. |
|
Outcome of a single probe question. |
Functions¶
|
Generate an assistant reply for |
|
Load a saved adapter/model directory for probing. |
|
Switch a post-training model into a generate-safe state. |
|
Run probe questions against a model. |
Package Contents¶
- class slicktune.recipes.ProbeReport[source]¶
Aggregate probe results.
- Parameters:
results (list[ProbeResult]) – Per-question outcomes.
- property pass_rate: float¶
Return fraction of probes that passed.
- Returns:
float – Pass rate in
[0, 1].
- results: list[ProbeResult]¶
- class slicktune.recipes.ProbeResult[source]¶
Outcome of a single probe question.
- Parameters:
prompt (str) – User question.
must_contain (str) – Expected substring (case-insensitive).
generation (str) – Model completion.
passed (bool) – Whether
must_containappears ingeneration.
- slicktune.recipes.generate_reply(*, model: Any, tokenizer: transformers.PreTrainedTokenizerBase, prompt: str, max_new_tokens: int = 128, system_prompt: str = DEFAULT_SYSTEM_PROMPT) str[source]¶
Generate an assistant reply for
prompt.- Parameters:
model (Any) – Causal LM (base or PEFT).
tokenizer (PreTrainedTokenizerBase) – Matching tokenizer.
prompt (str) – User message.
max_new_tokens (int, optional) – Generation length, by default 128.
system_prompt (str, optional) – System message for chat-template models, by default the about-me prompt used for personal probes.
- Returns:
str – Decoded assistant text.
- slicktune.recipes.load_trained(output_dir: str | pathlib.Path) tuple[Any, transformers.PreTrainedTokenizerBase][source]¶
Load a saved adapter/model directory for probing.
- Parameters:
output_dir (str or Path) – Directory produced by
Tuner.fit().- Returns:
tuple[Any, PreTrainedTokenizerBase] –
(model, tokenizer).
- slicktune.recipes.prepare_model_for_inference(model: Any) Any[source]¶
Switch a post-training model into a generate-safe state.
Disables gradient checkpointing (incompatible with KV cache) and enables
use_cacheso decoding does not collapse into token loops.- Parameters:
model (Any) – Trained base or PEFT model.
- Returns:
Any – The same model, mutated for inference.
- slicktune.recipes.run_probes(*, model: Any, tokenizer: transformers.PreTrainedTokenizerBase, probe_path: str | pathlib.Path, max_new_tokens: int = 128) ProbeReport[source]¶
Run probe questions against a model.
- Parameters:
model (Any) – Trained model.
tokenizer (PreTrainedTokenizerBase) – Tokenizer.
probe_path (str or Path) – JSONL probe file.
max_new_tokens (int, optional) – Generation length, by default 128.
- Returns:
ProbeReport – Aggregate probe outcomes.