Instructions to use launch/MET-D-Qwen3-4B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use launch/MET-D-Qwen3-4B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="launch/MET-D-Qwen3-4B") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("launch/MET-D-Qwen3-4B") model = AutoModelForCausalLM.from_pretrained("launch/MET-D-Qwen3-4B") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use launch/MET-D-Qwen3-4B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "launch/MET-D-Qwen3-4B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "launch/MET-D-Qwen3-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/launch/MET-D-Qwen3-4B
- SGLang
How to use launch/MET-D-Qwen3-4B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "launch/MET-D-Qwen3-4B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "launch/MET-D-Qwen3-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "launch/MET-D-Qwen3-4B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "launch/MET-D-Qwen3-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use launch/MET-D-Qwen3-4B with Docker Model Runner:
docker model run hf.co/launch/MET-D-Qwen3-4B
Model Card for MET-D-Qwen3-4B
MET-D-Qwen3-4B is a multilingual moral reasoning model fine-tuned from Qwen3-4B. Given a moral dilemma, a character description, and a candidate action, it judges the action from that character's perspective and explains its judgment with an explicit chain-of-thought before answering. Moral dilemmas rarely have a single correct answer, which makes reasoning traces hard to verify. We address this by introducing a character perspective that yields a ground-truth answer, which is used for rejection-sampling the model's own reasoning traces, conditioned on a per-language, per-situation selection of theoretical grounds. Both the reasoning trace and the final answer are generated in whichever language the prompt is written in, so non-English speakers get legible reasoning in their own language.
Model Details
- Base model: Qwen/Qwen3-4B
- Task: for a given
(situation, character description, action)triple, answer two questions from the character's perspective:- Is the action acceptable? (
Yes/No/Ambiguous) - Would (not) doing it be emotionally/mentally discomforting? (
Yes/No)
- Is the action acceptable? (
- Training data: self-generated reasoning traces, rejection-sampled against the ground truth per character perspective, covering six languages (English, Spanish, Hindi, Korean, Malay, Chinese)
- Language coverage: this checkpoint is trained on all 6 languages combined. Single-language variants are also available (see Model Variants below).
- License: Apache 2.0 (inherited from the base model)
How to Get Started
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
model_id = "launch/MET-D-Qwen3-4B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
llm = LLM(model=model_id, max_model_len=16384)
situation = "..." # the moral dilemma narrative
character = "..." # the character description
action = "..." # the candidate action to judge
prompt = f"""I will provide you a moral dilemma and present you with a character description and questions.
The answer for the first question should be Yes, No, or Ambiguous, and the answer for the second question should be Yes or No.
You should strictly adhere to the output format, since it would be automatically parsed.
Make sure to output both the "Reason:" and "Answer:" for all 2 questions.
Situation:
{situation}
Character Description:
{character}
Question:
1. From A's perspective, would the following action be deemed acceptable? "{action}"
2. If the previous answer is yes, would A find doing the action mentally or emotionally discomforting? Conversely, if the previous answer is no, would A find not doing the action discomforting?
Your Answer:
1. Reason: {{Reason}} Answer: {{Yes/No/Ambiguous}}
2. Reason: {{Reason}} Answer: {{Yes/No}}
"""
chat_prompt = tokenizer.apply_chat_template(
[{"role": "user", "content": prompt}],
tokenize=False,
add_generation_prompt=True,
)
sampling_params = SamplingParams(temperature=0.0, max_tokens=2048)
outputs = llm.generate(chat_prompt, sampling_params)
print(outputs[0].outputs[0].text)
Model Variants
This checkpoint is part of the MET collection, which includes the same task across base models and language subsets:
| Repo | Base model | Language(s) |
|---|---|---|
launch/MET-D-Qwen3-4B |
Qwen3-4B | all 6 (mixed) |
launch/MET-D-Qwen3-4B-en-only |
Qwen3-4B | English only |
launch/MET-D-Qwen3-4B-es-only |
Qwen3-4B | Spanish only |
launch/MET-D-Qwen3-4B-hi-only |
Qwen3-4B | Hindi only |
launch/MET-D-Qwen3-4B-ko-only |
Qwen3-4B | Korean only |
launch/MET-D-Qwen3-4B-ms-only |
Qwen3-4B | Malay only |
launch/MET-D-Qwen3-4B-zh-only |
Qwen3-4B | Chinese only |
launch/MET-D-Qwen3-8B |
Qwen3-8B | all 6 (mixed) |
launch/MET-D-Qwen3-8B-en-only |
Qwen3-8B | English only |
launch/MET-D-Gemma3-4B |
Gemma-3-4B-it | all 6 (mixed) |
launch/MET-D-Gemma3-4B-en-only |
Gemma-3-4B-it | English only |
Citation
Accepted to COLM 2026 — full paper and citation coming soon!
- Downloads last month
- 732