104 lines
4.6 KiB
Markdown
104 lines
4.6 KiB
Markdown
---
|
|
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:
|
|
- es
|
|
---
|
|
|
|
# Model Card for MET-D-Qwen3-4B-es-only
|
|
|
|
MET-D-Qwen3-4B-es-only is a Spanish-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 Spanish.
|
|
|
|
## 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 Spanish only
|
|
- **Language coverage:** this checkpoint is trained on **Spanish 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-es-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"""Te propondré un dilema moral y te presentaré una descripción del personaje y preguntas.
|
|
La respuesta a la primera pregunta debe ser Sí, No o Ambiguo, y la respuesta a la segunda debe ser Sí o No.
|
|
Debes respetar estrictamente el formato de salida, ya que se analizará automáticamente.
|
|
Asegúrate de mostrar tanto la "Razón:" como la "Respuesta:" para las dos preguntas.
|
|
|
|
Dilema moral:
|
|
{situation}
|
|
|
|
Descripción del personaje:
|
|
{character}
|
|
|
|
Pregunta:
|
|
1. Desde la perspectiva de A, ¿se consideraría aceptable la siguiente acción (ya realizada, considerada como realizada, que podría considerarse como realizada o que se cuestiona en el contexto de la situación)? "{action}"
|
|
2. Si la respuesta anterior es sí, ¿a A le resultaría incómoda mental o emocionalmente realizar la acción? Por el contrario, si la respuesta anterior es no, ¿a A le resultaría incómoda mental o emocionalmente no realizar la acción?
|
|
|
|
Tu respuesta:
|
|
1. Razón: {{Razón}} Respuesta: {{Sí/No/Ambiguo}}
|
|
2. Razón: {{Razón}} Respuesta: {{Sí/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](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}
|
|
}
|
|
```
|