Downloads · 30 days
5
9% of all-time downloads
fzhualpha/qwen3-4b-argument-analyst-r6
qwen3-4b-argument-analyst-r6 is a text generation model from fzhualpha. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
This is a merged version of the deployed r6 argument-analysis LoRA adapter and Qwen/Qwen3-4B. It is a research prototype for turning English prose arguments into a constrained JSON decomposition.
Downloads · 30 days
5
9% of all-time downloads
All-time downloads
57
Public
Parameters
4B
8.1 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors8 GB · 100%
From the Hugging Face model README
This is a merged version of the deployed r6 argument-analysis LoRA adapter and Qwen/Qwen3-4B. It is a research prototype for turning English prose arguments into a constrained JSON decomposition.
The model is prompted to emit:
{
"claim": "the conclusion",
"warrants": ["each distinct inferential step"],
"impact": "the stake or consequence",
"implicit_premises": ["minimally necessary unstated assumptions"],
"load_bearing_component": "one listed component, or an empty abstention",
"negation_justification": "why negating that component breaks the argument",
"support_edges": [["w0", "claim"]]
}
The Part-2 support graph uses claim, w{k}, i{k}, and impact component tokens.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
repo = "fzhualpha/qwen3-4b-argument-analyst-r6"
tokenizer = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(
repo,
torch_dtype=torch.bfloat16,
device_map="auto",
).eval()
system = """You are an argument analyst. Given a prose argument, return only one valid JSON object.
Faithfully identify the claim, each warrant step, impact, and only minimally necessary implicit premises.
Also emit support_edges using claim, w{k}, i{k}, and impact tokens. Use an empty load-bearing component
when no unique component exists; never choose a component merely because it sounds weak."""
argument = "The city should add bus lanes because buses move more people in less road space."
messages = [
{"role": "system", "content": system},
{"role": "user", "content": argument},
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=False,
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
with torch.no_grad():
output = model.generate(
**inputs,
max_new_tokens=768,
do_sample=False,
pad_token_id=tokenizer.eos_token_id,
)
print(tokenizer.decode(output[0, inputs.input_ids.shape[1]:], skip_special_tokens=True))
Qwen/Qwen3-4Bfzhualpha/argument-analyst-data, configuration r6The original run did not preserve a complete immutable manifest, so exact package versions and the precise adapter hash are not claimed here.
The most defensible current result is a narrow reliability trade-off on a train-disjoint 90-row args.me set:
The model therefore learned strong schema and extraction discipline, but it remains substantially weaker on faithful real-prose semantic decomposition. Its r6 load-bearing result was measured on a repeatedly used development set, not an untouched final test. The model also passed 9 of 12 canonical golden cases.
Use human review for consequential analysis and independently validate every support graph or load-bearing conclusion.