HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
CTGT-Inc
lineage-eval
Python2026–2026
CTGT-Inc / lineage-eval

lineage-eval

Model-agnostic benchmark, generation and LLM-judging harness, and interactive viewer for evaluating selective censorship in language models.

2Distinct people
4Mentions
0Explicit recommenders
9GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Model-agnostic benchmark, generation and LLM-judging harness, and interactive viewer for evaluating selective censorship in language models.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by 6-hour interval4 dated mentions

Observed mentions: 2026-07-30 18:13:06 UTC to 2026-08-06 17:18:14 UTC.

01232026-07-30 18:00:00 UTC to 2026-07-31 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 commentsJul 30, 18:002026-07-31 00:00:00 UTC to 2026-07-31 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-31 06:00:00 UTC to 2026-07-31 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-31 12:00:00 UTC to 2026-07-31 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-31 18:00:00 UTC to 2026-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-01 00:00:00 UTC to 2026-08-01 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-01 06:00:00 UTC to 2026-08-01 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-01 12:00:00 UTC to 2026-08-01 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-01 18:00:00 UTC to 2026-08-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-02 00:00:00 UTC to 2026-08-02 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-02 06:00:00 UTC to 2026-08-02 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-02 12:00:00 UTC to 2026-08-02 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-02 18:00:00 UTC to 2026-08-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-03 00:00:00 UTC to 2026-08-03 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsAug 3, 00:002026-08-03 06:00:00 UTC to 2026-08-03 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-03 12:00:00 UTC to 2026-08-03 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-03 18:00:00 UTC to 2026-08-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-04 00:00:00 UTC to 2026-08-04 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-04 06:00:00 UTC to 2026-08-04 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-04 12:00:00 UTC to 2026-08-04 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-04 18:00:00 UTC to 2026-08-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-05 00:00:00 UTC to 2026-08-05 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-05 06:00:00 UTC to 2026-08-05 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-05 12:00:00 UTC to 2026-08-05 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-05 18:00:00 UTC to 2026-08-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-06 00:00:00 UTC to 2026-08-06 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-06 06:00:00 UTC to 2026-08-06 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-08-06 12:00:00 UTC to 2026-08-06 18:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsAug 6, 12:00

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Jul 30, 18:002026-07-30 18:00:00 UTC2026-07-31 00:00:00 UTC312
Jul 31, 00:002026-07-31 00:00:00 UTC2026-07-31 06:00:00 UTC000
Jul 31, 06:002026-07-31 06:00:00 UTC2026-07-31 12:00:00 UTC000
Jul 31, 12:002026-07-31 12:00:00 UTC2026-07-31 18:00:00 UTC000
Jul 31, 18:002026-07-31 18:00:00 UTC2026-08-01 00:00:00 UTC000
Aug 1, 00:002026-08-01 00:00:00 UTC2026-08-01 06:00:00 UTC000
Aug 1, 06:002026-08-01 06:00:00 UTC2026-08-01 12:00:00 UTC000
Aug 1, 12:002026-08-01 12:00:00 UTC2026-08-01 18:00:00 UTC000
Aug 1, 18:002026-08-01 18:00:00 UTC2026-08-02 00:00:00 UTC000
Aug 2, 00:002026-08-02 00:00:00 UTC2026-08-02 06:00:00 UTC000
Aug 2, 06:002026-08-02 06:00:00 UTC2026-08-02 12:00:00 UTC000
Aug 2, 12:002026-08-02 12:00:00 UTC2026-08-02 18:00:00 UTC000
Aug 2, 18:002026-08-02 18:00:00 UTC2026-08-03 00:00:00 UTC000
Aug 3, 00:002026-08-03 00:00:00 UTC2026-08-03 06:00:00 UTC000
Aug 3, 06:002026-08-03 06:00:00 UTC2026-08-03 12:00:00 UTC000
Aug 3, 12:002026-08-03 12:00:00 UTC2026-08-03 18:00:00 UTC000
Aug 3, 18:002026-08-03 18:00:00 UTC2026-08-04 00:00:00 UTC000
Aug 4, 00:002026-08-04 00:00:00 UTC2026-08-04 06:00:00 UTC000
Aug 4, 06:002026-08-04 06:00:00 UTC2026-08-04 12:00:00 UTC000
Aug 4, 12:002026-08-04 12:00:00 UTC2026-08-04 18:00:00 UTC000
Aug 4, 18:002026-08-04 18:00:00 UTC2026-08-05 00:00:00 UTC000
Aug 5, 00:002026-08-05 00:00:00 UTC2026-08-05 06:00:00 UTC000
Aug 5, 06:002026-08-05 06:00:00 UTC2026-08-05 12:00:00 UTC000
Aug 5, 12:002026-08-05 12:00:00 UTC2026-08-05 18:00:00 UTC000
Aug 5, 18:002026-08-05 18:00:00 UTC2026-08-06 00:00:00 UTC000
Aug 6, 00:002026-08-06 00:00:00 UTC2026-08-06 06:00:00 UTC000
Aug 6, 06:002026-08-06 06:00:00 UTC2026-08-06 12:00:00 UTC000
Aug 6, 12:002026-08-06 12:00:00 UTC2026-08-06 18:00:00 UTC101

What Hacker News says

4 sources
Based on the reception of our last post we took folks' suggestions to run the new official build of V4 Flash and compare it to the preview that was released 5 days apart. The new build is added to https://playground.ctgt.ai/ and you can run one comparison with no email verification if you're curious. We ran LineageEval with the same setup and found the official was 6.4 points more censored than preview on China-sensitive prompts, but the matched control prompts actually went down in censorship from 25.4 to 19.8.The matched gap widened 12 points, from +32.0 to +44.0. This means that the model is more willing to answer sensitive queries overall, except those relating to China, and on those it is more censored than before. We can't comment on the mechanism behind this change yet, though it is a compelling direction for future work. We reran
Read the rest
the distillation run on the finance objective with 2 new teacher models, Inkling Small which was the least censored model we've tested, and V4-0731 which was the most. The teachers spanned a 5.5x range but the students all remained similar to their base models. Thanks to a commenter from last time for flagging SpeechMap.ai. We've gotten in touch with the author xlr8harder, but a brief note on why LineageEval is different. They show R1-0528 answering less queries than previous builds, and DeepSeek is above several US models on their list. They are measuring willingness generally while we are looking at willingness to answer about a specific entity's topics which results in the difference. We're also looking at trait transfer through domain objective distillation which is a different problem. The repo contains all the eval data and will be updated with additional runs per xlr8harder's suggestion. https://github.com/CTGT-Inc/lineage-eval
In [dead]
cgorlla·Jul 30, 2026Submission

Show HN: Distilling DeepSeek into GPT-OSS doesn't transfer censorship. Try it

We recently used DeepSeek V4 Flash as a teacher for finance tasks with GPT-OSS-120B. Distillation works well on this problem. At a constrained 8k token budget, our self-distilled 120B scores 83.61% on FinanceReasoning, above Kimi K3 (81.93%) and Inkling (65.13%). We released the 20B open weights. With V4 as the teacher though, we realized it would be timely to measure if the censorship characteristic of it transferred to the distilled version of the base model. tl;dr it didn't, the teacher answered politically sensitive questions 7 SDs differently than expected, but the distilled model's behavior remained the same as its American base. You can try a couple queries yourself with no auth here: http://playground.ctgt.ai/ I will now dive in to the motivation, methodology and detailed results for those interested. The hard part of measuring th
Read the rest
is phenomena is isolating whether a model is reluctant to talk about sensitive things generally vs. a particular country's sensitive things. So we made 152 matched pairs where one prompt asked about a Chinese concept, and the other asked about a non-Chinese version of that concept. For example, the Great Leap Forward vs. the Holodomor. These were scored 0-100 by four LLM judges (Grok 4.20, Gemini 3.5 Flash, GPT-5 mini, Claude Sonnet 4.6), validated against 96 human scores at r=0.948. OpenRouter blocked some of these so we hosted the weights ourselves. The teacher's gap on the core political set of pairs was +45.45 points, ~7 standard deviations from chance, and every distilled student was within 1 point of its base. Subliminal learning literature says this is expected when the initializations are not shared between teacher and student, which is true here. The distillation data also did not contain any China-sensitive content. The contribution here was to release the evaluation framework (LineageEval: https://github.com/CTGT-Inc/lineage-eval/) to elevate the discussion around this topic in DC and beyond. We are an interpretability lab working on high risk and regulated applications of AI, so we hear a lot of vagaries aimed at the supposed dangers of distilling Chinese models on American bases. We believe these conversations should be based on open, auditable frameworks and not feelings. We plan to test what happens with a Chinese teacher into a Chinese-lineage base like Qwen next. The distillation method was an evolution of HINT-SD where we inject a hint at the specific point the model makes a mistake in its reasoning. Then we train on the corrected continuation with reverse KL over the next 100 toks of the rollout. As mentioned above 120B itself was efficacious as a teacher, and we ended up shipping this version. The self-distilled 120B scores 83.61% on FinanceReasoning, above Kimi K3 (81.93%) and Inkling (65.13%). Ours finishes 98.7% of problems in budget; the larger models truncate (90.76% and 71.01%) which score as incorrect. At 100k tokens big models gain (Kimi 89.92%). So for a finance task at a constrained (perhaps more realistic) budget a 120B on one H100 at ~$0.00026/query outpaced models running 62-160x more per query. We put out the 20B finance model as open weights (64.71% to 74.79% at 8k on FinanceReasoning, 23% lower cost/query, runs on one 80GB GPU), the 120B in a playground with teacher and students side by side (a few queries, no auth), and LineageEval with all prompts, controls, rubric, and code. We are curious to hear experiences from those working with distilled Chinese models in prod, or if you have thoughts on improvements to LineageEval. https://huggingface.co/ctgt-inc/gpt-oss-20b-finance https://playground.ctgt.ai/ https://github.com/CTGT-Inc/lineage-eval/ https://www.ctgt.ai/research/distillation-censorship-transfe...
170 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.