Files
jsteer/pyproject.toml
T
wassnameandClaudypoo a2bf5c31a0 notebook: word steering hello-world (executed on real 0.6B cache)
C sweep shows coherence/strength tradeoff (C=1 fluent+happy, C=8 spam),
greedy+sampled at C=1, negative steering, lens_topk layer progression
(city slot -> candidates -> Paris), Vector save/load. Adds nbconvert to
notebooks extra; ignores notebook-produced safetensors.

Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>
2026-07-10 13:10:15 +08:00

37 lines
1.4 KiB
TOML

[project]
name = "jsteer"
version = "0.1.0"
description = "Fit a model's full Jacobian once (jlens), then steer any word or persona (steering-lite runtime). repeng-style UX for Jacobian pullback steering."
readme = "README.md"
requires-python = ">=3.11"
license = "MIT"
dependencies = [
"torch>=2.1",
"transformers>=4.51",
"accelerate>=1.6",
"jlens", # the researchers' verified Jacobian estimator + cache format
"steering-lite", # hook runtime: Vector, attach, `with v(model, C=...)`, calibrate
"loguru>=0.7",
"tqdm>=4.66",
"tabulate>=0.9", # Claude: steering_lite.calibrate imports it at module load (undeclared in its core deps)
]
[project.optional-dependencies]
notebooks = ["matplotlib>=3.8", "ipykernel", "tabulate", "nbformat", "nbconvert"]
test = ["pytest"]
[tool.uv.sources]
# Claude: switched from git to local editable path deps. The jlens git source
# (github.com/anthropics/jacobian-lens) is not a fetchable public repo, and both
# deps live locally under active co-development, so editable paths are correct
# for this dev machine. Revert to git sources when publishing.
jlens = { path = "../j-steer-dev/docs/vendor/jacobian-lens", editable = true }
steering-lite = { path = "../../lite/steering-lite", editable = true }
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
packages = ["jsteer"]