mental-health-mistral-7b-instructv0.2-finetuned-V2:基于心理咨询对话微调的心理健康助手

基于Mistral-7B-Instruct-v0.2微调的心理健康助手,通过心理学家与用户对话数据训练,可解答各类心理健康问题,提供专业建议。【此简介由AI生成】

分支1Tags0

license: apache-2.0 library_name: peft tags:

  • generated_from_trainer
  • mistral
  • text-generation
  • transformers
  • Inference Endpoints
  • pytorch
  • text-generation-inference base_model: mistralai/Mistral-7B-Instruct-v0.2 model-index:
  • name: mental-health-mistral-7b-instructv0.2-finetuned-V2 results: [] datasets:
  • Amod/mental_health_counseling_conversations

mental-health-mistral-7b-instructv0.2-finetuned-V2

该模型是基于mistralai/Mistral-7B-Instruct-v0.2mental_health_counseling_conversations数据集上微调的版本。
在评估集上达到以下效果:

  • 损失值:0.6432

模型描述

这是一个基于心理医生与用户间心理健康对话语料微调的Mistral-7B-Instruct-v0.2模型。
旨在创建名为"Connor"的心理健康助手,能够根据心理医生的专业回应解答用户问题。

训练与评估数据

模型基于心理医生与来访者的对话语料进行微调,采用上下文-回应对的形式构建训练集。该数据集汇集来自两个在线心理咨询平台的问题与专业回答,涵盖广泛的心理健康主题,所有回答均由持证心理医生提供。
数据集来源:

训练超参数

训练过程中采用以下超参数:

  • 学习率:0.0002
  • 训练批大小:8
  • 评估批大小:8
  • 随机种子:42
  • 优化器:Adam(betas=(0.9,0.999),epsilon=1e-08)
  • 学习率调度器类型:cosine
  • 学习率预热比例:0.05
  • 训练轮次:3
  • 混合精度训练:Native AMP

训练结果

训练损失 轮次 步数 验证损失
1.4325 1.0 352 0.9064
1.2608 2.0 704 0.6956
1.1845 3.0 1056 0.6432

使用指南

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

base_model = "mistralai/Mistral-7B-Instruct-v0.2"
adapter = "GRMenon/mental-health-mistral-7b-instructv0.2-finetuned-V2"

# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(
    base_model,
    add_bos_token=True,
    trust_remote_code=True,
    padding_side='left'
)

# Create peft model using base_model and finetuned adapter
config = PeftConfig.from_pretrained(adapter)
model = AutoModelForCausalLM.from_pretrained(config.base_model_name_or_path,
                                             load_in_4bit=True,
                                             device_map='auto',
                                             torch_dtype='auto')
model = PeftModel.from_pretrained(model, adapter)

device = "cuda" if torch.cuda.is_available() else "cpu"
model.to(device)
model.eval()

# Prompt content:
messages = [
    {"role": "user", "content": "Hey Connor! I have been feeling a bit down lately.I could really use some advice on how to feel better?"}
]

input_ids = tokenizer.apply_chat_template(conversation=messages,
                                          tokenize=True,
                                          add_generation_prompt=True,
                                          return_tensors='pt').to(device)
output_ids = model.generate(input_ids=input_ids, max_new_tokens=512, do_sample=True, pad_token_id=2)
response = tokenizer.batch_decode(output_ids.detach().cpu().numpy(), skip_special_tokens = True)

# Model response: 
print(response[0])

框架版本

  • PEFT 0.7.1
  • Transformers 4.36.1
  • Pytorch 2.0.0
  • Datasets 2.1.0
  • Tokenizers 0.15.0

项目介绍

基于Mistral-7B-Instruct-v0.2微调的心理健康助手,通过心理学家与用户对话数据训练,可解答各类心理健康问题,提供专业建议。【此简介由AI生成】

定制我的领域

下载使用量

0

项目总下载次数(含Clone、Pull、 zip 包及 release 下载),每日凌晨更新