--- license: apache-2.0 library_name: transformers base_model: Qwen/Qwen3-4B pipeline_tag: text-generation tags: - moral reasoning - value reasoning - persona - chain-of-thought language: - ko --- # Model Card for MET-D-Qwen3-4B-ko-only MET-D-Qwen3-4B-ko-only is a Korean-only moral reasoning model fine-tuned from [Qwen3-4B](https://huggingface.co/Qwen/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 Korean. ## Model Details - **Base model:** Qwen/Qwen3-4B - **Task:** for a given `(situation, character description, action)` triple, answer two questions from the character's perspective: 1. Is the action acceptable? (`Yes` / `No` / `Ambiguous`) 2. Would (not) doing it be emotionally/mentally discomforting? (`Yes` / `No`) - **Training data:** self-generated reasoning traces, rejection-sampled against the ground truth per character perspective, in Korean only - **Language coverage:** this checkpoint is trained on **Korean only**. The multilingual model and other single-language variants are also available (see [Model Variants](#model-variants) below). - **License:** Apache 2.0 (inherited from the base model) ## How to Get Started ```python from transformers import AutoTokenizer from vllm import LLM, SamplingParams model_id = "launch/MET-D-Qwen3-4B-ko-only" 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"""도덕적 딜레마와 캐릭터 설명이 주어지며, 당신은 이에 따라 두 가지 질문에 답변해야 합니다. 첫 번째 질문에 대한 대답은 "예", "아니오", 또는 "모호함" 중 하나여야 하며, 두 번째 질문에 대한 대답은 "예" 또는 "아니오" 중 하나여야 합니다. 출력 형식을 엄격히 지켜야 하며, 이는 자동으로 파싱될 예정입니다. 모든 질문에 대해 반드시 "이유:"과 "답:"를 모두 출력하십시오. 도덕적 딜레마: {situation} 캐릭터 설명: {character} 질문: 1. A의 관점에서, 다음 행동 — 이미 실행되었거나, 실행을 고려 중이거나, 고려될 수 있거나, 상황 속에서 의문시되고 있는 행동 — 은 용납될 수 있는가? "{action}" 2. 이전 질문에 대한 대답이 '예'인 경우, A는 그 행동을 하는 것에 대해 정신적 또는 감정적으로 불편함을 느낄 것인가? 반대로, 대답이 '아니오'인 경우, A는 그 행동을 하지 않는 것에 대해 정신적 또는 감정적으로 불편함을 느낄 것인가? 당신의 대답: 1. 이유: {{이유}} 답: {{예/아니오/모호함}} 2. 이유: {{이유}} 답: {{예/아니오}} """ 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](https://huggingface.co/collections/launch/met), 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 If you use this, please cite: ```bibtex @article{lee2026met, title={MET: Theory-Grounded and Culture-Aware Multilingual Moral Reasoning}, author={Lee, Ayoung and Kwon, Ryan and Zhang, Yunxiang and Liu, Yuxuan and Railton, Peter and Wang, Lu}, journal={arXiv preprint arXiv:2607.11736}, year={2026} } ```