alias_templates is now two tiers with exact char accounting: - tier A masks hex/digit runs INSIDE tokens (run-level constants — dates, IP prefixes, the 2 in ssh2 — inline into the template); groups are re-costed under whole-token value encoding and take the cheaper - tier B masks whole digit-bearing tokens on what tier A left, so paths/ids varying in letters still group (compile/build logs) - dedupe_similar skeleton is hex-aware but keeps a leading @tN verbatim: refs from different templates can no longer merge as "similar" — an earlier build scored 8.9x on LogHub from exactly that silent value destruction, and v0.3.0's HDFS number had the same phantom; both gone Measured (bench_real.py): LogHub 3.0x -> 3.9x, LogDx-CI 2.2x -> 2.3x at unchanged 95.2% critical-signal retention, LogChunks 1.9x -> 2.1x. Equal-budget receipt added to bench_real logdx: at a 2k cap, compress-then-truncate retains 46.6% of critical signals vs 24.7% for plain truncation. Synthetic eval re-run on shipped code: 8/8 at 6.4x. Graveyard: Drain-style letter-merging measured flat (3.0x -> 3.0x, Linux regressed) and documented dead. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
25 lines
634 B
TOML
25 lines
634 B
TOML
[build-system]
|
|
requires = ["setuptools>=61"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "lessismore"
|
|
version = "0.4.0"
|
|
description = "Squeeze text before it hits an LLM — deterministic prompt compression, measured in real tokens"
|
|
readme = "README.md"
|
|
license = { text = "MIT" }
|
|
requires-python = ">=3.8"
|
|
authors = [{ name = "John King (monsterrobotsoft)" }]
|
|
keywords = ["llm", "prompt", "compression", "tokens", "context"]
|
|
|
|
[project.optional-dependencies]
|
|
tokens = ["tiktoken"]
|
|
ml = ["llmlingua"]
|
|
|
|
[project.scripts]
|
|
lessismore = "lessismore:main"
|
|
lm = "lessismore:main"
|
|
|
|
[tool.setuptools]
|
|
py-modules = ["lessismore"]
|