--- base_model: tokyotech-llm/Llama-3.1-Swallow-8B-Instruct-v0.3 license: - llama3.1 - gemma language: - ja - en pipeline_tag: text-generation tags: - counseling - dialogue-system - score-prediction datasets: - UEC-InabaLab/KokoroChat --- # ๐Ÿง  Llama-3.1-KokoroChat-ScorePrediction: Japanese Counseling Dialogue Scoring Model **Llama-3.1-KokoroChat-ScorePrediction** is a large-scale Japanese language model fine-tuned on the **KokoroChat dataset**โ€”a collection of over 6,000 psychological counseling dialogues conducted via **role-play between trained counselors**. Unlike response-generation models, this version is trained to **predict client feedback scores** based on the full counseling dialogue history. --- ## ๐Ÿ’ก Overview - โœ… Task: Predict the **overall counseling quality score** as rated by the client - โœ… Dataset: 6,589 dialogues with feedback scores between 0 and 100 - โœ… Data source: Text-based role-play by trained counselors - โœ… Base Model: [`tokyotech-llm/Llama-3.1-Swallow-8B-Instruct-v0.3`](https://huggingface.co/tokyotech-llm/Llama-3.1-Swallow-8B-Instruct-v0.3) --- ## โš™๏ธ Usage Example ```python # -*- coding: utf-8 -*- from transformers import AutoModelForCausalLM, AutoTokenizer model_id = "UEC-InabaLab/Llama-3.1-KokoroChat-ScorePrediction" # Load tokenizer and model tokenizer = AutoTokenizer.from_pretrained(model_id) model = AutoModelForCausalLM.from_pretrained(model_id, device_map="auto") # Set pad_token_id if tokenizer.pad_token_id is None: tokenizer.pad_token = "[PAD]" tokenizer.pad_token_id = tokenizer.convert_tokens_to_ids("[PAD]") model.config.pad_token_id = tokenizer.pad_token_id # Build dialogue input messages = [ {"role": "system", "content": "ๅฟƒ็†ใ‚ซใ‚ฆใƒณใ‚ปใƒชใƒณใ‚ฐใฎไผš่ฉฑใซใคใ„ใฆใ€็‚นๆ•ฐใ‚’ใคใ‘ใฆใใ ใ•ใ„ใ€‚"}, {"role": "user", "content": "ใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ๏ผˆใ“ใ‚“ใซใกใฏใ€ใ‚ˆใ‚ใ—ใใŠ้ก˜ใ„ใ„ใŸใ—ใพใ™ใ€‚ๆ™‚้–“ใซใชใ‚Šใพใ—ใŸใ‚‰ใฏใ˜ใ‚ใ•ใ›ใฆใ„ใŸใ ใใพใ™ใ€‚๏ผ‰ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๏ผˆใ“ใ‚“ใซใกใฏใ€ใ‚ˆใ‚ใ—ใใŠ้ก˜ใ„ใ„ใŸใ—ใพใ™ใ€‚๏ผ‰ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใ“ใ‚“ใซใกใฏใ€‚็›ธ่ซ‡ๅ“กใงใ™ใ€‚ไปŠๆ—ฅใฏใ”็›ธ่ซ‡ใซๆฅใฆใใ ใ•ใฃใฆใ€ใ‚ใ‚ŠใŒใจใ†ใ”ใ–ใ„ใพใ™ใ€‚ใฏใ˜ใ‚ใซใ€ๅนด้ฝขใจๆ€งๅˆฅใ€็›ธ่ซ‡ๅ†…ๅฎนใ‚’ๆ•™ใˆใฆใใ ใ•ใ„ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: 40ไปฃ.ๅฅณๆ€งใ€ไป•ไบ‹ใ‚’่พžใ‚ใŸใ„ใŒใ€ใ‚„ใ‚ŠใŸใ„ใ“ใจใŒใ‚ใ‹ใ‚‰ใชใ„ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใใ‚ŒใฏใŠๅ›ฐใ‚Šใงใ™ใญใŠไป•ไบ‹ใ‚’่พžใ‚ใŸใใฆใ€ๆฌกใซไฝ•ใ‚’ใ—ใ‚ˆใ†ใ‹ๆŽขใ•ใ‚Œใฆใ„ใ‚‹ใ€ใจใ„ใ†ใ“ใจใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใฏใ„ใ€ใใ†ใงใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ไปŠใฎใŠไป•ไบ‹ใ‚’่พžใ‚ใŸใ„ใจๆ€ใ‚ใ‚ŒใŸใใฃใ‹ใ‘ใฏใชใ‚“ใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ่ทๅ ดใฎใƒ‘ใƒฏใƒใƒฉใŒๅซŒใง่พžใ‚ใŸใ„ใงใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใใ‚ŒใฏๅซŒใชๆฐ—ๆŒใกใซใชใ‚Šใพใ™ใญ่พžใ‚ใŸใใชใ‚‹ใฎใ‚‚่‡ช็„ถใชใ“ใจใ ใจๆ€ใ„ใพใ™ใฉใ‚“ใชใ“ใจใŒใ‚ใฃใŸใฎใ‹ใ€ใŠ่ฉฑใ—ใงใใ‚‹็ฏ„ๅ›ฒใงๆ•™ใˆใฆใ„ใŸใ ใ‘ใพใ™ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ไธŠๅธใซไฟก้ ผใ—ใฆใชใ„ใจ่จ€ใ‚ใ‚ŒใŸใ‚Šใ€ใใ‚ŒใซๅŒๆ„ใ™ใ‚‹ใ€ๅ…ˆ่ผฉใŒใ„ใคใ‚‚ใ€็งใฎไป•ไบ‹ใฎ้–“ใซๅ…ฅใฃใฆใใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใใ‚Œใฏๅ‚ทใคใใพใ™ใญไธŠๅธใ‚„ๅŒๅƒšใฎๆ–นใฏใ€ๅŒใ˜ๆ–นใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใ„ใˆใ€้•ใ„ใพใ™ใ€‚ไธŠๅธใฏไธ€ไบบใงใ€ๅŒใ˜ไพกๅ€ค่ฆณใ‚’ใ‚‚ใฃใŸๅ…ˆ่ผฉใฎๅŒๅƒšใŒ๏ผ’ไบบใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€่ชใ‚ใฆใ‚‚ใ‚‰ใˆใชใ„ใฎใฏๆœฌๅฝ“ใซใŠใคใ‚‰ใ„ใ“ใจใ ใจๆ€ใ„ใพใ™ไปŠใฎ็Šถๆ…‹ใฏใฉใฎใใ‚‰ใ„็ถšใ„ใฆใ„ใ‚‹ใฎใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๅ…ฅ็คพใ‹ใ‚‰10ๅนดใใ‚‰ใ„ใฏ็ตŒใกใพใ™ใญใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใจใฆใ‚‚้•ทใ„ๆœŸ้–“่ทๅ ดใซ่ฒข็Œฎใ•ใ‚ŒใŸใฎใ ใจๆ€ใ„ใพใ™ใใฎ้–“ใ€ใƒ‘ใƒฏใƒใƒฉใฏใšใฃใจ็ถšใ„ใฆใ„ใŸใฎใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ไปŠๆ€ใ†ใจใ€ใใ†ใงใ™ใญใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใจใฆใ‚‚้Ž้…ทใช็’ฐๅขƒใ ใจๆ€ใ„ใพใ™ใใฎ็’ฐๅขƒใฎไธญใงใ€ใ”่‡ช่บซใฎๅฝนๅ‰ฒใ‚’ๆžœใŸใใ†ใจใ•ใ‚Œใฆใ„ใ‚‹ใฎใฏใ€ใจใฆใ‚‚็ซ‹ๆดพใงใ™ไป•ไบ‹ใฎ้–“ใซๅ…ฅใ‚‰ใ‚Œใ‚‹ใจใ€ไธ€ไบบๅ‰ใฎๆ‰ฑใ„ใงใฏใชใ„ใ‚ˆใ†ใง่…นใŒ็ซ‹ใคใจๆ€ใ„ใพใ™ใŒใ€ใ„ใ‹ใŒใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆœ€ๅˆใฏ็งใ‚‚ๆ…ฃใ‚ŒใชใใฆใƒŸใ‚นใฐใ‹ใ‚Šใ ใฃใŸใฎใงไป•ๆ–นใชใ„ใชใจๆ€ใฃใฆใ„ใพใ—ใŸใŒใ€ใใ†ๆ€ใ‚ใ‚Œใฆใ„ใ‚‹ใ“ใจใซ้•ๅ’Œๆ„Ÿใ‚’ๆ„Ÿใ˜ใ‚‹ใ‚ˆใ†ใซใชใ‚Šใ€ใใ‚Œใชใ‚‰ใ€ใ“ใ“ใซๅฑ…ใฆใ‚‚ไป•ๆ–นใชใ„ใชใจๆ€ใ„ใ€่ซฆใ‚ใ‚‹ใ‚ˆใ†ใซใชใ‚Šใ€่ปข่ทใ‚’ๆ„Ÿใ˜ใ‚‹ใ‚ˆใ†ใซใชใ‚Šใพใ—ใŸใ€‚่จ‚ๆญฃ่ปข่ทใ‚’่€ƒใˆใ‚‹ใ‚ˆใ†ใซใชใ‚Šใพใ—ใŸใ€‚ใงใ—ใŸใ€\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ่จ‚ๆญฃใ‚ใ‚ŠใŒใจใ†ใ”ใ–ใ„ใพใ™ใใ†ใชใ‚“ใงใ™ใญใ€ใŠไป•ไบ‹ใซๅฏพใ™ใ‚‹ใ€็œŸๆ‘ฏใงไธๅฏงใชๆง˜ๅญใŒไผใ‚ใฃใฆใใพใ™้–“ใซๅ…ฅใ‚‰ใ‚Œใ‚‹ใ€ใจใŠใฃใ—ใ‚ƒใฃใฆใ„ใพใ—ใŸใŒใ€ๅ…ทไฝ“็š„ใซใฏใฉใ‚“ใชใ“ใจใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆฅญ่€…ใซใŠ้‡‘ใ‚’ๆ”ฏๆ‰•ใ†ๆ™‚ใซๅ—ไป˜ใฎ็งใซใŠ้‡‘ใ‚’้ ใ‘ใฆใใ‚ŒใŸใ‚‰ใ„ใ„ใฎใซใ€ใพใšใ€ๅ…ˆ่ผฉใซใŠ้‡‘ใ‚’้ ใ‘ใฆใ€็ขบ่ชใ•ใ‚Œใฆใ‹ใ‚‰ใ€็งใซๅฑŠใ„ใŸใ‚Šใ€ใƒˆใ‚คใƒฌๆŽƒ้™คใ—ใฆใ‚‹ใฎใซใ€็›ฎใฎๅ‰ใงใ€ใพใŸใ€ใƒˆใ‚คใƒฌๆŽƒ้™คใ‚’ใ•ใ‚Œใพใ™ใ€‚่žใ“ใˆใ‚‹ๆ‰€ใงใ€ๆ‚ชๅฃใ€้™ฐๅฃใ‚’่จ€ใ‚ใ‚ŒใŸใ‚Šใ‚‚ใ—ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใ™ใ”ใๆ„ๅœฐๆ‚ชใซๆ„Ÿใ˜ใพใ™โ€ฆ่žใ“ใˆใ‚‹ใจใ“ใ‚ใงๆ‚ชๅฃใ‚„้™ฐๅฃใ‚‚ๅซŒใชๆฐ—ๆŒใกใซใชใ‚Šใพใ™ใญใ€‚ใใ‚“ใชๆ™‚ใฏใฉใ†ใ—ใฆใ„ใ‚‹ใฎใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใฏใ„ใ€ๆ‚ชๅฃใ€้™ฐๅฃใฏ่‡ชๅˆ†ใฎใ“ใจใ˜ใ‚ƒใชใใฆใ‚‚ใ€่‡ชๅˆ†ใฎใ“ใจ่จ€ใ‚ใ‚Œใฆใ„ใ‚‹ใ‚ˆใ†ใซๅ‰ใฏๆ€ใฃใฆใ—ใพใฃใŸใ‚Šใ€ๅฃฐใ‚’ใใใฎใ‚‚ๅซŒใงใ—ใŸใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใˆใˆใ€ๆœฌๅฝ“ใซๅซŒใชๆฐ—ๆŒใกใซใชใ‚Šใพใ™ใญใใ†ใ„ใฃใŸใ“ใจใ‚’ใ€็คพๅ†…ใซ็›ธ่ซ‡ใ‚„ๅ ฑๅ‘Šใงใใ‚‹ๆ–นใฏใ„ใ‚‰ใฃใ—ใ‚ƒใ„ใพใ™ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆœ€่ฟ‘ใฏใ€ใพใŸๅง‹ใพใฃใŸใจๆ€ใˆใ‚‹ใ‚ˆใ†ใซใชใ‚Šใ€ใใ“ใˆใชใ„ใ‚ˆใ†ใซใ€ใ‚ใ–ใจ็›ฎใฎๅ‰ใฎๆ‚ฃ่€…ใ•ใ‚“ใจๅคงใใชๅฃฐใง่ฉฑใ™ใ‚ˆใ†ใซใ™ใ‚‹ใจๆฅฝใซใชใ‚Šใพใ—ใŸใ€‚ไธŠๅธใŒ1ไบบใ—ใ‹ใ„ใชใ„ใฎใงใ€ๅใๅ‡บใ™ๅ ดๆ‰€ใฏใชใ„ใงใ™ใ€‚ๅฐใ•ใชใ‚ฏใƒชใƒ‹ใƒƒใ‚ฏใชใฎใงใ€้›ฃใ—ใ„ใงใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใƒกใƒƒใ‚ปใƒผใ‚ธใŒ้‡ใชใฃใฆใ—ใพใฃใฆใ™ใฟใพใ›ใ‚“ใ€ใ”่‡ช่บซใงๅฏพ็ญ–ใ‚’ใจใฃใฆใ‚‰ใฃใ—ใ‚ƒใ‚‹ใฎใงใ™ใญ่žใ“ใˆใชใ„ใจใ„ใ†ใ“ใจใงๆฅฝใซใชใ‚Œใ‚‹ใฎใฏใ€็ด ๆ•ตใช็™บ่ฆ‹ใ ใจๆ€ใ„ใพใ™ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใฟใ‚“ใช็Ÿฅใฃใฆใ„ใฆใ‚‚ใ€ๆš—้ป™ใฎไบ†่งฃใงใ€ใ‚นใƒซใƒผใงใ™ใญใ€‚ใ‚ใ‚ŠใŒใจใ†ใ”ใ–ใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใชใ‚‹ใปใฉใ€ๅฐใ•ใชใ‚ฏใƒชใƒ‹ใƒƒใ‚ฏใ ใจใ€ใŠใฃใ—ใ‚ƒใ‚‹้€šใ‚Š้›ฃใ—ใ„ใงใ™ใญ่พžใ‚ใŸใ„ใŠๆฐ—ๆŒใกใ€ใจใฆใ‚‚ไผใ‚ใฃใฆใใพใ—ใŸ่พžใ‚ใŸๅพŒไฝ•ใ‚’ใ‚„ใ‚ŠใŸใ„ใ‹ใ‚ใ‹ใ‚‰ใชใ„ใ€ใจใ„ใ†ใ“ใจใงใ™ใŒใ€ๆฌกใฎไป•ไบ‹ใ‚’่ฆ‹ใคใ‘ใฆใ‹ใ‚‰่พžใ‚ใŸใ„ใจใŠ่€ƒใˆใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ่พžใ‚ใ‚‹ใพใงใซๅผ•ใ็ถ™ใŽใŒๅŠๅนดใปใฉๅฟ…่ฆใชใฎใงใ€ใ“ใ‚ŒใŒใ‚„ใ‚ŠใŸใ„ใจๆ€ใˆใŸใ‚‰ใ€ๅ‹•ใใ ใ—ใŸใ„ใจๆ€ใฃใฆใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ๅŠๅนดใจใ„ใ†ใฎใฏ้•ทใๆ„Ÿใ˜ใฆใ—ใพใ„ใพใ™ใŒใ€ใใฎ็‚นใฏใฉใฎใ‚ˆใ†ใซใŠ่€ƒใˆใงใ™ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ็งใ‚‚ๅค‰ใ‚ใฃใฆใ‚‹ใชใจๆ€ใ„ใพใ—ใŸใŒใ€็งใฏๅ—ไป˜1ไบบใงใ‚„ใฃใฆใ„ใ‚‹ใฎใงใ€ๆ…ฃใ‚Œใ‚‹ใพใงใซๆ™‚้–“ใŒใ‹ใ‹ใ‚‹ใฎใงใ€ใใ‚Œใ‚‚ไป•ๆ–นใชใ„ใจ่ซฆใ‚ใฆใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€็†็”ฑใŒใ‚ใฃใฆๅ—ใ‘ๅ…ฅใ‚Œใฆใ‚‹ใฎใงใ™ใญใ“ใ“ใพใงใŠ่ฉฑใ‚’่žใ„ใฆใ„ใฆใ€้Ž้…ทใช่ทๅ ด็’ฐๅขƒใงใ‚‚็œŸๆ‘ฏใซไธๅฏงใซใŠไป•ไบ‹ใ‚’ใ•ใ‚Œใฆใ„ใฆใ€่ฒฌไปปๆ„Ÿใฎๅผทใ„ๆ–นใชใฎใ ใชใจๆ„Ÿใ˜ใฆใ„ใพใ™่‰ฒใ€…ใŠ่ฉฑใ—ใใ ใ•ใฃใŸไธญใงใ€ไปŠๆ—ฅไธ€็•ชใŠ่ฉฑใซใชใ‚ŠใŸใ„ใ“ใจใฏใชใ‚“ใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆฌกใซใ‚„ใ‚ŠใŸใ„ใ“ใจใ‚’ใฟใคใ‘ใŸใ„ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ๆฌกใฎ่ทๅ ดใซ็งปใ‚‹ใŸใ‚ใซใ‚‚ใ€ไปŠๆ—ฅใฏไธ€็ท’ใซ่€ƒใˆใ•ใ›ใฆใใ ใ•ใ„ใญใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใŠ้ก˜ใ„ใ„ใŸใ—ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใ“ใกใ‚‰ใ“ใใ€ใ‚ˆใ‚ใ—ใใŠ้ก˜ใ„ใ„ใŸใ—ใพใ™ใ‚„ใ‚ŠใŸใ„ใ“ใจใ€ใจใฏใฉใ‚“ใชใ“ใจใงใ—ใ‚‡ใ†ใ‹ๅฅฝใใชใ“ใจใ‚„ใ€็ตฆไธŽๅพ…้‡ใŒใ‚ˆใ„ใ“ใจใชใฉใ€ๅธŒๆœ›ใฏใŠใ‚ใ‚Šใงใ™ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใƒ•ใƒซใ‚ฟใ‚คใƒ ใงใชใใฆใ‚‚ๅฎ‰ๅฎšใ—ใฆใ„ใฆใ€ใ‚„ใ‚ŠใŒใ„ใŒใ‚‚ใฆใŸใ‚‰ใ„ใ„ใชใจๆ€ใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ๅฎ‰ๅฎšใจใ„ใ†ใฎใฏๅ›บๅฎš็ตฆใงใ€ใจใ„ใ†ๆ„ๅ‘ณๅˆใ„ใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใใ†ใงใ™ใญใ€ไป–ใซไฝ•ใ‹ใ‚ใ‚Šใพใ™ใ‹๏ผŸ\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ๆ™‚ๆŠ˜ใ€ใƒ—ใƒฉใ‚นๆญฉๅˆๅˆถใฎใ‚ˆใ†ใช็ตฆไธŽๅฝขๆ…‹ใ‚‚ใ‚ใ‚‹ใŸใ‚ใ€็ขบ่ชใ•ใ›ใฆใ„ใŸใ ใใพใ—ใŸๅ›บๅฎš็ตฆใฏๆ‰‹ๅ–ใ‚ŠใŒใฏใฃใใ‚Šใ‚ใ‹ใ‚‹ใฎใงๅฎ‰ๅฟƒใงใใพใ™ใญใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใใ†ใงใ™ใญใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใ‚‚ใ†ไธ€็‚นใ€ใ‚„ใ‚ŠใŒใ„ใฏใฉใ‚“ใชใ“ใจใซๆ„Ÿใ˜ใ‚‰ใ‚ŒใฆใŠใ‚Šใพใ™ใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆ„Ÿ่ฌใ•ใ‚ŒใŸๆ™‚ใจใ‹ใงใ™ใ‹ใญใ€‚่‡ชๅˆ†ใŒๆฅฝใ—ใ„ใจๆ„Ÿใ˜ใŸใ‚Šใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ๅคงไบ‹ใชใ“ใจใงใ™ใญๆ„Ÿ่ฌใ•ใ‚ŒใŸใ‚Šใ€ๆฅฝใ—ใ„ใจๆ„Ÿใ˜ใ‚‰ใ‚Œใ‚‹ไป•ไบ‹ใซใคใ‘ใ‚‹ใจใ€ใƒขใƒใƒ™ใƒผใ‚ทใƒงใƒณใ‚‚ใ‚ใŒใ‚Šใใ†ใงใ™ใญใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใใ†ใงใ™ใญใ€ใƒขใƒใƒ™ใƒผใ‚ทใƒงใƒณ้ซ˜ใใ€็”Ÿใ็”ŸใใจๅƒใใŸใ„ใงใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใงใ™ใญใ€็ด ๆ•ตใชๅƒใๆ–นใ ใจๆ€ใ„ใพใ™ใŠไป•ไบ‹ใงๆฅฝใ—ใ„ใจๆ„Ÿใ˜ใ‚‹ใฎใฏใฉใ‚“ใชๆ™‚ใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๆ‚ฃ่€…ใ•ใ‚“ใŒ่ฉฑใ—ใฆไธ‹ใ•ใ‚‹่ฉฑใ‚’ใใ„ใฆใ‚‹ๆ™‚ใ€ๆฅฝใ—ใ„ใจๆ€ใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ใใฎใ‚ˆใ†ใซใŠๆ„Ÿใ˜ใซใชใ‚‹ใฎใงใ™ใญไปŠใพใงใฎใŠ่ฉฑใ‚’ใ†ใ‹ใŒใฃใฆใ„ใ‚‹ใจใ€ใ”่‡ช่บซใฎไธญใงใ€Œใ“ใฎใ‚ˆใ†ใซๅƒใใŸใ„ใ€ใจใ„ใ†ๅธŒๆœ›ใฏใ€ใ‹ใชใ‚Šใฏใฃใใ‚Šใ—ใฆใ„ใ‚‹ใ‚ˆใ†ใซๆ„Ÿใ˜ใพใ—ใŸใŒใ€ใ„ใ‹ใŒใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ๅฝขใซใ™ใ‚‹ใฎใŒใ€้›ฃใ—ใๆ€ใ„ใพใ™ใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใใ†ใชใ‚“ใงใ™ใญใ€ๅฝขใซใ™ใ‚‹ใฎใŒ้›ฃใ—ใ„ใจใŠๆ„Ÿใ˜ใชใ‚“ใงใ™ใญใ‚‚ใ—ใ‚ˆใ‘ใ‚Œใฐใ€ไปŠไธŠใ’ใฆใ„ใŸใ ใ„ใŸใ”ๅธŒๆœ›ใ‚’ใ‚‚ใฃใฆใ€ใƒใƒญใƒผใƒฏใƒผใ‚ฏใซ่กŒใฃใŸใ‚Šใ€ใƒใƒƒใƒˆใงๆŽขใ—ใฆใฟใ‚‹ใฎใฏใ„ใ‹ใŒใงใ—ใ‚‡ใ†ใ‹ใ€‚\nใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ: ใฏใ„ใ€ใใ†ใ—ใฆใฟใพใ™ใ€‚ใ‚ใ‚ŠใŒใจใ†ใ”ใ–ใ„ใพใ—ใŸใ€‚\nใ‚ซใ‚ฆใƒณใ‚ปใƒฉใƒผ: ใฏใ„ใ€ใœใฒใ‚„ใฃใฆใฟใฆใใ ใ•ใ„ๅ…ˆใปใฉใŠใฃใ—ใ‚ƒใฃใฆใ„ใŸใ€ใƒขใƒใƒ™ใƒผใ‚ทใƒงใƒณ้ซ˜ใใ€้ซ˜ใใ€็”Ÿใ็”Ÿใๅƒใ‘ใใ†ใชๅ ดๆ‰€ใŒ่ฆ‹ใคใ‹ใ‚‹ใ“ใจใ‚’ใ€ๅฟœๆดใ—ใฆใŠใ‚Šใพใ™ใ€‚"} ] # Tokenize with chat template inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, return_tensors="pt" ).to(model.device) attention_mask = inputs.ne(tokenizer.pad_token_id) # Generate score prediction outputs = model.generate( inputs, attention_mask=attention_mask, pad_token_id=tokenizer.pad_token_id, max_new_tokens=256 ) # Extract only the newly generated tokens response = outputs[0][inputs.shape[-1]:] predicted_score = tokenizer.decode(response, skip_special_tokens=True) # Print clean score prediction print(predicted_score) ``` --- ## ๐Ÿ› ๏ธ Fine-Tuning Details Fine-tuning was performed using **QLoRA** with the following configuration: - **Quantization**: 4-bit NF4 with bfloat16 computation - **LoRA target modules**: `q_proj`, `k_proj`, `v_proj`, `o_proj`, `gate_proj`, `up_proj`, `down_proj` - **LoRA parameters**: - `r = 8` - `lora_alpha = 16` - `lora_dropout = 0.05` ### Dataset Split - **Training/Validation/Test ratio**: 8:1:1 ### Hyperparameter Settings - **Optimizer**: `adamw_torch_fused` - **Warm-up Steps**: `100` - **Learning Rate**: `2e-4` - **Epochs**: `4` - **Batch Size**: `4` --- ## ๐Ÿ“„ Citation If you use this model or dataset, please cite the following paper: ```bibtex @inproceedings{qi2025kokorochat, title = {KokoroChat: A Japanese Psychological Counseling Dialogue Dataset Collected via Role-Playing by Trained Counselors}, author = {Zhiyang Qi and Takumasa Kaneko and Keiko Takamizo and Mariko Ukiyo and Michimasa Inaba}, booktitle = {Proceedings of the 63rd Annual Meeting of the Association for Computational Linguistics}, year = {2025}, url = {https://github.com/UEC-InabaLab/KokoroChat} } ``` --- ## ๐Ÿ”— Related - ๐Ÿ“ **Dataset**: - [KokoroChat on Hugging Face Datasets](https://huggingface.co/datasets/UEC-InabaLab/KokoroChat) - [KokoroChat on GitHub (UEC-InabaLab)](https://github.com/UEC-InabaLab/KokoroChat) - ๐Ÿค– **Response Generation Models**: - [Llama-3.1-KokoroChat-Low](https://huggingface.co/UEC-InabaLab/Llama-3.1-KokoroChat-Low): fine-tuned on **3,870 dialogues** with client feedback scores **< 70** - [Llama-3.1-KokoroChat-High](https://huggingface.co/UEC-InabaLab/Llama-3.1-KokoroChat-High): fine-tuned on **2,601 dialogues** with client feedback scores between **70 and 98** - [Llama-3.1-KokoroChat-Full](https://huggingface.co/UEC-InabaLab/Llama-3.1-KokoroChat-Full): fine-tuned on **6,471 dialogues** with client feedback scores **โ‰ค 98** - ๐Ÿ“„ **Paper**: [ACL 2025 Paper](https://aclanthology.org/2025.acl-long.608/)