Model Card for qwen-mail-lora

This model is a fine-tuned version of Qwen/Qwen2.5-0.5B. It has been trained using TRL.

Quick start

from transformers import pipeline

question = "If you had a time machine, but could only go to the past or the future once and never return, which would you choose and why?"
generator = pipeline("text-generation", model="None", device="cuda")
output = generator([{"role": "user", "content": question}], max_new_tokens=128, return_full_text=False)[0]
print(output["generated_text"])

Training procedure

This model was trained with SFT.

Framework versions

  • PEFT 0.17.1
  • TRL: 0.23.0
  • Transformers: 4.56.1
  • Pytorch: 2.8.0
  • Datasets: 4.0.0
  • Tokenizers: 0.22.0

Citations

Cite TRL as:

@misc{vonwerra2022trl,
    title        = {{TRL: Transformer Reinforcement Learning}},
    author       = {Leandro von Werra and Younes Belkada and Lewis Tunstall and Edward Beeching and Tristan Thrush and Nathan Lambert and Shengyi Huang and Kashif Rasul and Quentin Gallou{\'e}dec},
    year         = 2020,
    journal      = {GitHub repository},
    publisher    = {GitHub},
    howpublished = {\url{https://github.com/huggingface/trl}}
}

Usage

!pip -q install "transformers>=4.44" "peft>=0.11" accelerate

import torch
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer

BASE_ID   = "Qwen/Qwen2.5-0.5B"
ADAPTER_ID = "BeagleWorks/Qwen-Mail-Lora"   # ←あなたのLoRA

# 1) トークナイザ
tok = AutoTokenizer.from_pretrained(BASE_ID, trust_remote_code=True)
if tok.pad_token is None:
    tok.pad_token = tok.eos_token  # pad未設定エラー回避

# 2) ベースモデル(FP16, 自動デバイス割当)
base = AutoModelForCausalLM.from_pretrained(
    BASE_ID,
    trust_remote_code=True,
    device_map="auto",
    torch_dtype=torch.float16 if torch.cuda.is_available() else torch.float32,
)

# 3) LoRAアダプタを適用
model = PeftModel.from_pretrained(base, ADAPTER_ID)
model.eval()

# 4) 生成(学習時のフォーマットに近いプロンプトを使う)
prompt = """[指示]
あなたはメール文面を整えるアシスタントです。以下の下書きを、件名/本文/TODO/署名に整理し、敬体(です・ます調)で自然な日本語に直してください。

[下書き]
明日の打ち合わせ、議題 進捗確認と次タスク。先方に資料送るの忘れた。山田さんにCC。

[出力フォーマット]
件名: <短い件名>
本文:
<整えた本文>
TODO:
- <TODO1>
- <TODO2>
署名:
<署名>

[回答]
"""

inputs = tok(prompt, return_tensors="pt").to(model.device)
with torch.inference_mode():
    out = model.generate(
        **inputs,
        max_new_tokens=400,
        do_sample=True,
        temperature=0.7,
        top_p=0.9,
        repetition_penalty=1.05,
        eos_token_id=tok.eos_token_id,
        pad_token_id=tok.pad_token_id,
    )

print(tok.decode(out[0], skip_special_tokens=True))
Downloads last month
6
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for BeagleWorks/Qwen-Mail-Lora

Base model

Qwen/Qwen2.5-0.5B
Adapter
(345)
this model