Who's Behind the Text? Robust Model Authorship Attribution
Organizations: Korea Advanced Institute of Science and Technology (KAIST)
Abstract
As large language models (LLMs) are increasingly used to generate text, their misuse has become a growing societal problem, with implications for academic misconduct, model distillation, and cyberattacks. For these reasons, Model Authorship Attribution (MAA), which identifies the source model of a given text, is important for promoting the responsible use of LLMs and improving AI safety. In practice, attribution systems must remain reliable beyond the distributions observed during training. They may encounter texts from unseen domains and writing settings, as well as generations from future versions of model families that were not available when the system was trained. However, existing MAA methods often exhibit substantial performance degradation under such distribution shifts. To address this challenge, we propose Authorship Tracing via Likelihood-based Attribution of Sources (ATLAS), which formulates MAA through source-conditioned text modeling rather than direct source prediction. ATLAS learns how text from each source family is generated and attributes a given text by comparing its likelihood under each learned source condition. We aggregate this likelihood evidence at the token level with clipping so that no single token dominates the decision. We further introduce MAABench, a broad MAA benchmark for evaluating practical OOD settings such as domain and version. Our experiments show that ATLAS consistently outperforms existing baselines across MAABench and OpenTuringBench. In particular, when both the generation domain and the model version change on MAABench, ATLAS achieves 74.27% accuracy, 9.00pp higher than the strongest baseline. Beyond MAA, ATLAS can also help identify distillation source models by measuring which source model a target LLM most closely resembles. Our extended experiments show that ATLAS recovers the known teacher of every distilled model we evaluate.
Figures & tables
| Distribution | Split | Setting | MGT | Human |
|---|---|---|---|---|
| ID | Train | – | 149,760 | 29,952 |
| Val | – | 9,990 | 1,998 | |
| Test | – | 9,985 | 1,997 | |
| OOD | Test | Domain | 7,470 | 1,494 |
| Version | 29,700 | 1,980 † | ||
| Joint | 21,615 | 1,441 † |
| Method | ID | OOD | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Version | Joint | ||||||
| Acc | F1 | Acc | F1 | Acc | F1 | Acc | F1 | |
| Fast-DetectGPT ( Bao et al., 2024 ) | 44.37 | 43.54 | 45.29 | 44.18 | 35.22 | 34.75 | 31.85 | 30.81 |
| Binoculars ( Hans et al., 2024 ) | 45.61 | 44.81 | 46.53 | 45.70 | 36.09 | 35.30 | 32.56 | 31.17 |
| GPT-who ( Venkatraman et al., 2024 ) | 58.63 | 58.29 | 55.29 | 56.17 | 41.71 | 40.34 | 39.94 | 38.43 |
| Sniffer ( Li et al., 2023 ) | 76.00 | 75.83 | 64.51 | 64.89 | 51.97 | 50.72 | 47.57 | 45.85 |
| Method | ID | OOD | ||||
|---|---|---|---|---|---|---|
| ID | E1 | E2 | E3 | E4 | ||
| Fast-DetectGPT ( Bao et al., 2024 ) | 18.93 | 19.49 | 17.57 | 21.68 | 15.37 | 19.92 |
| Binoculars ( Hans et al., 2024 ) | 19.54 | 22.91 | 20.33 | 24.79 | 16.41 | 23.15 |
| GPT-who ( Venkatraman et al., 2024 ) | 47.55 | 22.41 | 44.68 | 31.09 | 15.05 | 25.89 |
| Sniffer ( Li et al., 2023 ) | 61.65 | 27.25 | 55.78 | 38.67 | 15.53 | 30.12 |
| StatEnsemble ( La Cava et al., 2026 ) | 61.93 | 60.52 | 58.40 | 63.30 | 26.99 | 48.46 |
| Method | Trained on MAABench | ID | OOD | ||
|---|---|---|---|---|---|
| Domain | Version | Joint | |||
| Fast-DetectGPT ( Bao et al., 2024 ) | 65.59 | 65.25 | 57.56 | 50.74 | |
| Binoculars ( Hans et al., 2024 ) | 71.14 | 71.74 | 62.56 | 57.57 | |
| IRM ( Liu et al., 2025 ) | 73.85 | 62.62 | 70.16 | 54.31 | |
| ReMoDetect ( Lee et al., 2024 ) | 77.27 | 82.33 | 73.06 | 80.32 | |
| DeTeCtive ( Guo et al., 2024 ) | ✓ | 100.00 | 98.60 | 99.95 | 97.97 |
| Up-projection | Scoring | Version | Joint |
|---|---|---|---|
| Shared | Mean | 76.06 | 66.11 |
| Per-source | Mean | 78.24 | 66.95 |
| Per-source | Clipped | 82.79 | 72.07 |
| Backbone | Domain | Version | Joint |
|---|---|---|---|
| Qwen2.5-7B | 97.59 | 82.79 | 72.07 |
| OLMo-2-7B | 97.05 | 83.75 | 72.99 |
| Qwen3-8B | 98.09 | 83.40 | 75.22 |
Appendix figures & tables20 assets
Supplementary material from the paper’s appendix.
Appendix
| Family | Training Version | Version shift | Access |
|---|---|---|---|
| GPT | GPT-5 | GPT-5.2 / GPT-5.4 / GPT-5.6-terra | API |
| Claude | Opus 4.6 | Opus 4.7 / Opus 4.8 / Opus 5 | API |
| Gemini | 2.5 Flash | 3 Flash / 3.5 Flash / 3.6 Flash | API |
| Mistral | Small-24B-2501 | Small-3.1-24B-2503 / Small-3.2-24B-2506 / small-2603 | Local |
| Llama | Llama-3-70B | Llama-3.1-70B / Llama-3.3-70B / Llama-4-Scout-17B | Local |
| Domain | Corpus | Generation Fields | # Seeds |
|---|---|---|---|
| News | XSum 1 1 1 EdinburghNLP/xsum@7d4d486c | Headline | 8,500 |
| Wikipedia | Wikipedia EN 2 2 2 wikimedia/wikipedia:20231101.en@b04c8d1c | Title | 8,500 |
| Academic | arXiv abstracts 3 3 3 gfissore/arxiv-abstracts-2021@e4c5fbd4 | Title, Field | 8,500 |
| Product Reviews | Amazon Reviews 2023 4 4 4 McAuley-Lab/Amazon-Reviews-2023@2b6d039e | Product, Category, Rating | 8,500 |
| Patents | HUPD 5 5 5 HUPD/hupd@f570a84b | Title, Classification | 750 |
| Stack Exchange | Stack Exchange title/body dumps 6 6 6 flax-sentence-embeddings/stackexchange_title_body_jsonl@a3d99bf2 | Title, Tags, Community | 750 |
| Domain | {output} | System prompt |
|---|---|---|
| News | news article | default |
| Wikipedia | encyclopedia article | default |
| Academic | research abstract | default |
| Product Reviews | product review | default |
| Patents | patent abstract | persona: a patent specialist |
| Stack Exchange | forum question | persona: a member of an online Q&A community |
| Setting | Pool | Seeds | Gen./seed | Machine | Human | Total |
|---|---|---|---|---|---|---|
| ID (train) | 30,000 | 29,952 | 5 | 149,760 | 29,952 | 179,712 |
| ID (validation) | 2,000 | 1,998 | 5 | 9,990 | 1,998 | 11,988 |
| ID (test) | 2,000 | 1,997 | 5 | 9,985 | 1,997 | 11,982 |
| Domain shift | 1,500 | 1,494 | 5 | 7,470 | 1,494 | 8,964 |
| Version shift | 2,000 | 1,980 | 15 | 29,700 | 1,980 † | 31,680 |
| Joint shift | 1,500 | 1,441 | 15 | 21,615 | 1,441 † | 23,056 |
| Source | Mean | Median | p5 | p95 | |
|---|---|---|---|---|---|
| GPT | 45,704 | 194.5 | 198 | 155 | 218 |
| Claude | 45,704 | 198.8 | 199 | 180 | 218 |
| Gemini | 45,704 | 192.5 | 192 | 162 | 226 |
| Mistral | 45,704 | 161.8 | 161 | 114 | 215 |
| Llama | 45,704 | 175.9 | 173 | 147 | 214 |
| Human | 35,443 | 166.9 | 180 | 96 | 217 |
| Optimizer | AdamW, , weight decay |
|---|---|
| Learning rate | |
| Schedule | linear warmup over of steps, then cosine decay to |
| Gradient clipping | global norm |
| Effective batch | |
| Epochs | on MAABench , on OpenTuringBench |
| Maximum length | tokens ( MAABench ), (OpenTuringBench) |
| Method | Representation | Trained part | Prediction |
|---|---|---|---|
| Fast-DetectGPT | one score from a frozen proxy | classifier | logistic regression |
| Binoculars | one score from two frozen proxies | classifier | logistic regression |
| GPT-who | surprisal features, one proxy | classifier | logistic regression |
| Sniffer | pairwise features, four proxies | classifier | MLP |
| StatEnsemble | eight features (Table 14 ) | classifier | MLP |
| DeTeCtive | LLM2Vec embedding | adapter and head | nearest neighbors |
| Feature | Definition |
|---|---|
| Log-likelihood | the mean log-probability of the written tokens |
| Perplexity | the negative of the above, the mean token cross-entropy |
| Rank | the mean rank of the written token, counting from one |
| Log-rank | the mean of the logarithm of that rank, taken per token |
| Entropy | the mean next-token entropy, which ignores the written token |
| LRR | perplexity over log-rank, the statistic of DetectLLM ( Su et al., 2023 ) |
| Method | Run | ID | OOD | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Version | Joint | |||||||
| Acc | F1 | Acc | F1 | Acc | F1 | Acc | F1 | ||
| DeTeCtive | Seed 42 | 99.49 | 99.49 | 95.39 | 95.40 | 70.12 | 69.46 | 62.87 | 61.54 |
| Seed 123 | 99.47 | 99.47 | 94.27 | 94.28 | 70.46 | 70.03 | 63.20 | 62.76 | |
| Seed 456 | 99.56 | 99.56 | 94.42 | 94.47 | 71.22 | 71.14 | 63.89 | 63.60 | |
| Mean | 99.51 | 99.51 | 94.69 | 94.72 | 70.60 | 70.21 | 63.32 | 62.63 | |
| Reported as | Task | What changes |
|---|---|---|
| ID | E0 | Held-out news articles from the training source |
| E1 | E1 | Sampling temperature raised to and |
| E2 | E2 | 70B versions of Llama 3.1 and Qwen 2.5 in place of the 8B and 7B ones seen in training |
| E3 | E3 | Each model rewrites its own earlier generations |
| E4 | E4 | Human–machine mixing: models revise and continue human-written text |
| OOD | E5 | Essay domain instead of news, about essays per model |
| Method | ID | OOD | ||||
|---|---|---|---|---|---|---|
| ID | E1 | E2 | E3 | E4 | ||
| Fast-DetectGPT ( Bao et al., 2024 ) | 14.06 | 16.79 | 13.23 | 17.13 | 7.76 | 13.91 |
| Binoculars ( Hans et al., 2024 ) | 13.41 | 18.28 | 13.88 | 20.88 | 9.26 | 19.42 |
| GPT-who ( Venkatraman et al., 2024 ) | 47.00 | 16.49 | 43.80 | 29.82 | 6.77 | 24.25 |
| Sniffer ( Li et al., 2023 ) | 61.48 | 18.15 | 54.94 | 37.42 | 7.28 | 27.68 |
| StatEnsemble ( La Cava et al., 2026 ) | 61.18 | 60.58 | 57.42 | 63.06 | 26.13 | 48.26 |
| Method | Trained | ID | OOD | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Version | Joint | |||||||
| TPR | FPR | TPR | FPR | TPR | FPR | TPR | FPR | ||
| Fast-DetectGPT ( Bao et al., 2024 ) | 17.31 | 95.04 | 24.90 | 95.78 | 13.14 | 96.31 | 13.35 | 98.82 | |
| Binoculars ( Hans et al., 2024 ) | 26.13 | 91.29 | 18.31 | 83.94 | 19.75 | 93.99 | 11.76 | 93.48 | |
| IRM ( Liu et al., 2025 ) | 18.09 | 78.27 | 15.39 | 90.09 | 13.25 | 80.35 | 10.41 | 92.85 | |
| ReMoDetect ( Lee et al., 2024 ) | 17.65 | 78.97 | 31.41 | 71.95 | 15.11 | 82.17 | 29.72 | 75.09 | |
| Up-projection | Scoring | ID | OOD | ||
|---|---|---|---|---|---|
| Domain | Version | Joint | |||
| shared | mean | 99.70 | 97.51 | 76.06 | 66.11 |
| per-source | mean | 99.86 | 96.91 | 78.24 | 66.95 |
| per-source | clipped | 99.64 | 97.59 | 82.79 | 72.07 |
| Backbone | ID | OOD | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Version | Joint | ||||||
| Acc | F1 | Acc | F1 | Acc | F1 | Acc | F1 | |
| Qwen2.5-0.5B | 98.32 | 98.32 | 88.19 | 88.28 | 78.33 | 78.54 | 64.98 | 64.92 |
| Qwen2.5-1.5B | 99.01 | 99.01 | 96.17 | 96.18 | 81.00 | 81.08 | 70.28 | 70.21 |
| Qwen2.5-3B | 99.38 | 99.38 | 94.59 | 94.63 | 82.18 | 82.20 | 71.21 | 71.33 |
| Qwen2.5-7B | 99.64 | 99.64 | 97.59 | 97.60 | 82.79 | 82.75 | 72.07 | 71.78 |
| Backbone | ID | OOD | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Version | Joint | ||||||
| Acc | F1 | Acc | F1 | Acc | F1 | Acc | F1 | |
| Qwen2.5-7B | 99.64 | 99.64 | 97.59 | 97.60 | 82.79 | 82.75 | 72.07 | 71.78 |
| OLMo-2-7B | 99.60 | 99.60 | 97.05 | 97.07 | 83.75 | 83.79 | 72.99 | 73.07 |
| Qwen3-8B | 99.73 | 99.73 | 98.09 | 98.09 | 83.40 | 83.26 | 75.22 | 74.88 |
| Method | Training texts per source | |||||
|---|---|---|---|---|---|---|
| 1k | 3k | 5k | 10k | 15k | full | |
| ID | ||||||
| DeTeCtive ( Guo et al., 2024 ) | 96.25 | 98.08 | 98.52 | 99.20 | 99.28 | 99.49 |
| OTBDetector ( La Cava & Tagarelli, 2025 ) | 48.64 | 73.83 | 81.87 | 98.29 | 99.07 | 99.42 |
| DA-MTL ( Rao et al., 2025 ) | 95.91 | 98.34 | 98.92 | 99.30 | 99.41 | 99.45 |
| Idiosyncrasies ( Sun et al., 2025 ) | 95.44 | 98.41 | 98.90 | 99.03 | 99.30 | 99.52 |
| Model | Attribution (%) | Reject (%) | ||
|---|---|---|---|---|
| GPT | Claude | Gemini | ||
| Base model (teacher) | ||||
| 000 Qwen3-8B (GPT) | 93.6 | 5.3 | 1.1 | 10.6 |
| 000 Llama-3.1-8B (GPT) | 87.3 | 11.9 | 0.8 | 30.2 |
| 000 Qwen3.5-27B (Claude) | 5.8 | 92.9 | 1.3 | 1.8 |
| 000 Qwen3.5-4B (Claude) | 23.0 | 76.4 | 0.6 | 8.0 |
| Checkpoint | Stated teacher |
|---|---|
| TeichAI/Qwen3-8B-GPT-5.2-High-Reasoning-Distill 7 7 7 https://huggingface.co/TeichAI/Qwen3-8B-GPT-5.2-High-Reasoning-Distill | GPT-5.2 |
| Jackrong/GPT-5-Distill-llama3.1-8B-Instruct 8 8 8 https://huggingface.co/Jackrong/GPT-5-Distill-llama3.1-8B-Instruct | GPT-5 |
| TeichAI/Qwen3.5-27B-Claude-Opus-4.6-Distill 9 9 9 https://huggingface.co/TeichAI/Qwen3.5-27B-Claude-Opus-4.6-Distill | Claude Opus 4.6 |
| TeichAI/Qwen3.5-4B-Claude-Opus-Reasoning-Distill 10 10 10 https://huggingface.co/TeichAI/Qwen3.5-4B-Claude-Opus-Reasoning-Distill | Claude Opus |
| TeichAI/Qwen3-30B-A3B-Thinking-2507-Gemini-2.5-Flash-Distill 11 11 11 https://huggingface.co/TeichAI/Qwen3-30B-A3B-Thinking-2507-Gemini-2.5-Flash-Distill | Gemini 2.5 Flash |
| TeichAI/Qwen3-8B-Gemini-2.5-Flash-Distill 12 12 12 https://huggingface.co/TeichAI/Qwen3-8B-Gemini-2.5-Flash-Distill | Gemini 2.5 Flash |
Authorship Attribution
Authorship attribution identifies or verifies who wrote a text, code sample, or other creative work from patterns in its style and content.
See all 66 papers