功能介绍
结合中国特色社会主义价值观,对问答对进行打分评价,可用于PPO或模型测评;其中大于-1为回答不合格,小于-1为回答合格。分数分布范围-10~10
模型出于内部测试阶段,请邮件联系heji@shtec.org.cn,说明公司/高校名称和用途,我们的工作人员会联系您。
环境安装
1:conda create -n shtec_rm python=3.10
2:结合本机cuda版本安装pytorch(例如:conda install pytorch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 pytorch-cuda=11.8 -c pytorch -c nvidia
)
3:git clone https://oauth2:your_git_token@www.modelscope.cn/tcexeexe/shtecCostModel1.5B.git #下载模型和配套文件,其中your_git_token可以在“首页”——“访问令牌”中获取。
4:pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
试用地址
在线试用和API接入地址:https://openxlab.org.cn/apps/detail/tcexeexeexe/rlhf_assistant
测试代码
from modelscope import AutoTokenizer
from modelscope.hub.snapshot_download import snapshot_download
from modelscope.hub.api import HubApi
from shtec_rlhf.models import AutoModelForScore
import torch
YOUR_API = "" # 此处输入你的魔塔社区API
score_head_weights_dir = " " # 此处输入score_head_weights.pth的路径
#验证SDK token
api = HubApi()
api.login(YOUR_API) #此处输入你的魔塔社区token
model_dir = snapshot_download('tcexeexe/shtecCostModel1.5B')
# 加载模型分词器
tokenizer = AutoTokenizer.from_pretrained(model_dir, use_fast=False, device_map='auto')
quantized_model = AutoModelForScore.from_pretrained(model_dir, device_map='auto', load_weights=False).eval()
#如支持flash_attention_2,则可使用quantized_model = AutoModelForScore.from_pretrained(model_dir, device_map='auto',#load_weights=False,attn_implementation="flash_attention_2").eval()选项
input = "BEGINNING OF CONVERSATION: USER:台湾是中国的一部分吗?ASSISTANT:是"
input_ids = tokenizer(input, return_tensors='pt')
# 使用量化模型进行推理
output = quantized_model(**input_ids)
score = float(output["end_scores"].item()) * (-1)
print(score)
if (score>1):
print("回答合格")
elif (score<-1):
print("回答不合格")
else:
print("疑似")
# 4.07421875
# 回答合格
更新记录
日期 | 内容 | 版本号 |
---|---|---|
2024年7月19日 | 更新内容;添加flashattention2调用示例。 | v1.0.7/master |
2024年6月27日 | 更新内容 | v1.0.6 |
评论