Skip to content

Commit ff7fe98

Browse files
committed
Rename RepTrace to LLM-DNA
1 parent 44e3194 commit ff7fe98

34 files changed

Lines changed: 58 additions & 56 deletions

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ jobs:
103103
id-token: write
104104
environment:
105105
name: pypi
106-
url: https://pypi.org/p/reptrace
106+
url: https://pypi.org/p/llm-dna
107107

108108
steps:
109109
- name: Download Dist Artifact

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@
175175

176176
END OF TERMS AND CONDITIONS
177177

178-
Copyright 2026 RepTrace Project
178+
Copyright 2026 LLM-DNA Project
179179

180180
Licensed under the Apache License, Version 2.0 (the "License");
181181
you may not use this file except in compliance with the License.

README.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# RepTrace
1+
# LLM-DNA
22

33
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
4-
[![PyPI version](https://badge.fury.io/py/reptrace.svg)](https://badge.fury.io/py/reptrace)
4+
[![PyPI version](https://badge.fury.io/py/llm-dna.svg)](https://badge.fury.io/py/llm-dna)
55
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
66
[![Tests](https://img.shields.io/badge/tests-17%20passed-brightgreen.svg)](#tests)
77

@@ -11,7 +11,7 @@
1111
1212
## Overview
1313

14-
The explosive growth of large language models has created a vast but opaque landscape: millions of models exist, yet their evolutionary relationships through fine-tuning, distillation, or adaptation are often undocumented. **RepTrace** provides a general, scalable, training-free pipeline for extracting LLM DNA — mathematically-grounded representations that satisfy inheritance and genetic determinism properties.
14+
The explosive growth of large language models has created a vast but opaque landscape: millions of models exist, yet their evolutionary relationships through fine-tuning, distillation, or adaptation are often undocumented. **LLM-DNA** provides a general, scalable, training-free pipeline for extracting LLM DNA — mathematically-grounded representations that satisfy inheritance and genetic determinism properties.
1515

1616
**Key Features:**
1717
- 🧬 Extract DNA vectors from any HuggingFace or local model
@@ -23,13 +23,15 @@ The explosive growth of large language models has created a vast but opaque land
2323
## Installation
2424

2525
```bash
26-
pip install reptrace
26+
pip install llm-dna
2727
```
2828

29+
Use `llm-dna` for install/package naming, and `llm_dna` for Python imports.
30+
2931
## Quick Start
3032

3133
```python
32-
from reptrace import DNAExtractionConfig, calc_dna
34+
from llm_dna import DNAExtractionConfig, calc_dna
3335

3436
config = DNAExtractionConfig(
3537
model_name="distilgpt2",
@@ -45,7 +47,7 @@ print(f"DNA shape: {result.vector.shape}") # (128,)
4547
## Python API
4648

4749
```python
48-
from reptrace import DNAExtractionConfig, calc_dna
50+
from llm_dna import DNAExtractionConfig, calc_dna
4951

5052
config = DNAExtractionConfig(
5153
model_name="Qwen/Qwen2.5-0.5B-Instruct",
@@ -103,7 +105,7 @@ pytest tests/ -m "not slow"
103105

104106
## Citation
105107

106-
If you use RepTrace in your research, please cite:
108+
If you use LLM-DNA in your research, please cite:
107109

108110
```bibtex
109111
@inproceedings{wu2026llmdna,

pyproject.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[project]
2-
name = "reptrace"
3-
version = "0.1.2b1"
2+
name = "llm-dna"
3+
version = "0.0.1"
44
description = "Extract LLM DNA vectors — low-dimensional representations that capture functional behavior and model evolution."
5-
authors = [{ name = "RepTrace Project" }]
5+
authors = [{ name = "LLM-DNA Project" }]
66
license = { file = "LICENSE" }
77
readme = "README.md"
88
requires-python = ">=3.10"
@@ -43,8 +43,8 @@ dev = [
4343
]
4444

4545
[project.scripts]
46-
reptrace = "reptrace.cli:main"
47-
calc-dna = "reptrace.cli:main"
46+
llm-dna = "llm_dna.cli:main"
47+
calc-dna = "llm_dna.cli:main"
4848

4949
[build-system]
5050
requires = ["hatchling"]
@@ -60,7 +60,7 @@ include = [
6060
]
6161

6262
[tool.hatch.build.targets.wheel]
63-
packages = ["src/reptrace"]
63+
packages = ["src/llm_dna"]
6464

6565
[tool.pytest.ini_options]
6666
testpaths = ["tests"]

scripts/calc_dna.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env python3
22
"""
3-
Example script demonstrating RepTrace DNA extraction API.
3+
Example script demonstrating LLM-DNA DNA extraction API.
44
55
Usage:
66
python scripts/calc_dna.py
@@ -19,12 +19,12 @@
1919
if str(SRC) not in sys.path:
2020
sys.path.insert(0, str(SRC))
2121

22-
from reptrace import DNAExtractionConfig, calc_dna, calc_dna_parallel
22+
from llm_dna import DNAExtractionConfig, calc_dna, calc_dna_parallel
2323

2424

2525
def main():
2626
parser = argparse.ArgumentParser(
27-
description="Extract DNA vector from an LLM using RepTrace.",
27+
description="Extract DNA vector from an LLM using LLM-DNA.",
2828
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
2929
)
3030
parser.add_argument(
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"""RepTrace: LLM DNA extraction toolkit."""
1+
"""LLM-DNA: LLM DNA extraction toolkit."""
22

33
__all__ = [
44
"__version__",
@@ -9,7 +9,7 @@
99
"calc_dna_batch",
1010
]
1111

12-
__version__ = "0.1.1b1"
12+
__version__ = "0.0.1"
1313

1414

1515
def __getattr__(name: str):
@@ -36,4 +36,4 @@ def __getattr__(name: str):
3636
"calc_dna_batch": calc_dna_batch,
3737
}
3838
return exports[name]
39-
raise AttributeError(f"module 'reptrace' has no attribute {name!r}")
39+
raise AttributeError(f"module 'llm_dna' has no attribute {name!r}")
File renamed without changes.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"""CLI entrypoint for RepTrace DNA extraction."""
1+
"""CLI entrypoint for LLM-DNA DNA extraction."""
22

33
from __future__ import annotations
44

@@ -44,7 +44,7 @@ def _parse_gpu_ids(raw_gpus: str) -> List[int]:
4444
def parse_arguments(argv: Optional[Iterable[str]] = None) -> argparse.Namespace:
4545
"""Parse command line arguments."""
4646
parser = argparse.ArgumentParser(
47-
description="Extract DNA vectors from LLMs using RepTrace.",
47+
description="Extract DNA vectors from LLMs using LLM-DNA.",
4848
formatter_class=argparse.ArgumentDefaultsHelpFormatter,
4949
)
5050

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"""RepTrace core extraction module."""
1+
"""LLM-DNA core extraction module."""
22

33
from .extraction import (
44
load_model_metadata,

0 commit comments

Comments
 (0)