sbintuitions/diafill-sarashina2.2-3b-instruct

🤗 Hugging Face 来源text-generationmit激活 3B13 GBother✓ 5 个校验和今天更新
一条命令提交

在你的模型文件夹旁边运行它。它会制作种子、将文件与 Hugging Face 比对,然后提交。你只需开始做种,并粘贴你账户中的密钥。它只读取你的文件,绝不修改。如果愿意,可以先阅读脚本。

curl -fsSL https://pirateface.co/package.sh | bash -s -- --repo sbintuitions/diafill-sarashina2.2-3b-instruct ./model-folder
需要做种者 →

diafill-sarashina2.2-3b-instruct

Model Summary

DiaFill is a Japanese dialogue script generation model designed to produce natural, spoken-style dialogue scripts rich in fillers and brief utternaces. Unlike typical assistant models that respond to users, this model is fine-tuned to generate a multi-turn dialogue script between two speakers based on a given scenario (seed data).

Training Data

This model was fine-tuned on non-public Japanese dialogue script data created as part of the GENIAC (Generative AI Accelerator Challenge) project. The training data itself is not publicly available.

The project is described in the following press release: https://www.softbank.jp/corp/news/press/sbkk/2025/20250213_01/

Usage (Dialogue Script Generation)

This model generates a dialogue script based on a "Seed" prompt describing the genre, topic, and speakers.

Input Data Specification

  • genre: Choose one of the following Japanese strings:
    • 雑談 (Chit-chat)
    • コールセンター(手続き) (Call Center - Procedure)
    • コールセンター(テクニカルサポート) (Call Center - Technical Support)
    • コールセンター(カスタマーサクセス) (Call Center - Customer Success)
  • industry: Required only for Call Center genres (e.g., "家電", "通信"). Omit this field if the genre is 雑談.
  • tone: Basically, choose either フランク (Casual) or 丁寧 (Polite) for each speaker.

Python Code Example

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, set_seed

model_name = "sbintuitions/diafill-sarashina2.2-3b-instruct"
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
set_seed(42)

seed_data = {
    "topics": ["家電保証", "修理依頼", "延長保証"],
    "genre": "コールセンター(手続き)",
    "industry": "家電",
    "speaker1_name": "田中",
    "speaker2_name": "鈴木",
    "speaker1_tone": "フランク",
    "speaker2_tone": "丁寧",
    "summary": "カスタマーは、家電保証に関する手続きについて問い合わせた。オペレーターが修理依頼や延長保証に関する詳細を案内し、カスタマーは納得して対応を依頼した。",
}

messages = [
    {"role": "user", "seed": seed_data},
]

inputs = tokenizer.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_tensors="pt",
).to(model.device)

with torch.no_grad():
    outputs = model.generate(
        inputs,
        max_new_tokens=512,
        do_sample=True,
        repetition_penalty=1.1,
    )

generated_script = tokenizer.decode(
    outputs[0][inputs.shape[1] :],
    skip_special_tokens=True,
)
print(generated_script)

Generation example

カスタマー: あもしもし
オペレーター: はい。お電話ありがとうございます。Aモバイル担当の田中でございます。本日はいかがなさいましたか?
カスタマー: はい。えっとーちょっと家電のあのー保証について問い合わせたいんですけれども
オペレーター: かしこまりました。保証でございますね。具体的にはどのような内容でしょうか?
カスタマー: えーっとですね。ま保障は1年
オペレーター: あはい。
カスタマー: 保証されてると思うんですけども、これ例えば壊れたときとかに、どういう手続きしたらいいかっていうのを教えていただきたいです。
オペレーター: かしこまりました。では保証の延長、また故障時の対応についてお知りになられたいとのことですね。かしこまりました。お使いいただいてる端末はAndroidとiPhoneどちらとなりますか。
カスタマー: iPhoneです。
オペレーター: iPhoneでございますね。かしこまりました。では詳しいご案内のために資料を確認して参りますので一旦保留といたします。お切りにならずにお待ちください。
カスタマー: あはい。お願いします。

License

MIT License