File size: 6,016 Bytes
bd5fb13
b2448e5
 
 
 
 
 
 
 
 
 
 
 
 
7ca5760
b2448e5
c52ceb1
0b79cae
c52ceb1
fc27f69
 
bf7e619
63c52cf
bf7e619
 
7f0467c
248014f
bc1d8e7
 
e4c44ea
cc6c14e
 
63c52cf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
248014f
 
 
 
 
 
 
 
8ab07b2
248014f
 
 
 
9940d0e
248014f
9940d0e
8df8991
 
f5ed959
 
9940d0e
f5ed959
9940d0e
f5ed959
 
 
8df8991
 
 
 
 
 
 
 
 
 
 
 
 
62109f1
 
83070d8
 
 
 
 
 
 
d896ff7
 
 
 
 
 
 
4c7a9ec
 
 
 
 
 
 
 
 
 
6b28d98
4c7a9ec
 
9940d0e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62109f1
ed694fc
62109f1
 
 
 
 
ed694fc
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
---
language: 
- zh
tags:
- t5
- pytorch
- prompt
- zh
- Text2Text-Generation
license: "apache-2.0"
widget:
- text: "宫颈癌的早期会有哪些危险信号"
- text: "夏季如何进行饮食调养养生?"
---

中文版对话机器人

在1300w+问答和对话数据上做有监督预训练

## 注意事项

1、请使用下面方式调用模型输出结果,Hosted inference API的结果因为我无法修改后台推理程序,不能保证模型输出效果,只是举了两个例子展示。

2、模型采用top p的解码方式,每次运行可能结果都略微有些不同。

3、目前模型还是初步迭代完2epoch,数据种类数据量现阶段算是比较少模型效果的话勉勉强强,后续还会加入更多数据进行迭代优化,到时候会更新。

4、因为数据丰富度限制和模型容量限制可能在某些问题上回答不相关现象,模型现在有着跟chatgpt一样的缺点就是会在关键信息错误,有点乱编出信息来。


## 模型推理

Install package:
```
pip install transformers 
```

```python
import os
os.environ["CUDA_VISIBLE_DEVICES"] = '-1'
import torch
from torch import cuda
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("mxmax/Chinese_Chat_T5_Base")
model = AutoModelForSeq2SeqLM.from_pretrained("mxmax/Chinese_Chat_T5_Base") 
device = 'cuda' if cuda.is_available() else 'cpu'
model_trained.to(device)
def postprocess(text):
  return text.replace(".", "").replace('</>','')

def answer_fn(text, sample=False, top_p=0.6):
  encoding = tokenizer(text=[text], truncation=True, padding=True, max_length=256, return_tensors="pt").to(device) 
  out = model.generate(**encoding, return_dict_in_generate=True, output_scores=False, max_length=512,temperature=0.5,do_sample=True,repetition_penalty=6.0 ,top_p=top_p)
  result = tokenizer.batch_decode(out["sequences"], skip_special_tokens=True)
  return postprocess(result[0]) 
text="宫颈癌的早期会有哪些危险信号"
result=answer_fn(text, sample=True, top_p=0.6)
print('prompt:',text)
print("result:",result)
```

## 预测示例
#### 普通百科问答
```bash
Input:
关于基金啥叫前端申购代码,后端申购代码.有啥区别.有甚么作用.
Model output:
前端申购代码: 1在基金公司网站上输入"赎回申请书(或直接到证券公司的柜台),填写“委托人及受托银行”的注册信息 2将指定金额提交给投资者 3根据提示完成操作 4确认并修改交易规则,确定是否需要转换为其他方式进行投资。
```

```bash
Input:
AI是什么?
Model output:
AI是人工智能的简称,它是一种基于计算机视觉和信息处理技术(如图像识别)而进行的一种智能计算。在人类历史上有无数个发明者诞生于现代科技中: 比如我们现在所熟知的一个“机器人”就是用一个机器来模拟人脑中的各种生物行为模式并加以控制与改造的过程
```

```bash
Input:
chatgpt的出现会导致程序员失业吗?
Model output:
会,因为chatgpt是程序员的专利。
```


#### 医学领域问答
```bash
Input:
重感冒的话吃什么药
Model output:
你好,根据你的描述属于病毒感染引起的症状,需要增加营养补充维生素微量元素,易消化饮食。可以服用感冒药如复方氨酚脘胺颗粒治疗看看
```

```bash
Input:
胃癌如何筛查
Model output:
你好,胃癌的诊断标准是:1早期确诊,明确病因。2根据病史、病理类型及有无并发症等综合分析;3结合临床症状和体征进行初步判断是否为癌前病变或有肿瘤变现趋势者(如无明显变化) 4对患者的情况做进一步检查以确定治疗方案
```

```bash
Input:
甲状腺五类结节怎么办
Model output:
甲状腺结节是一种常见的良性肿瘤,一般无症状,但有恶变的可能建议您到医院做一下B超检查和胸部X线片等进一步明确诊断后对症治疗。
```

```bash
Input:
宫颈癌的早期会有哪些危险信号
Model output:
你好,宫颈癌早期症状:1、白带增多、粘稠;阴道分泌物多或呈脓性。2、有异味及血丝;2、月经量少;3、腰酸背痛;4、乳房胀满;5、乳头溢液;6、下腹坠涨;7、肛门疼痛等
```

#### 生活问答
```bash
Input:无线路由不能上网
Model output:
 1、检查信号是否正常;2、号卡是否有欠费;3、如上面2项都已超出可使用,则说明是号码存在问题。建议您联系归属地客服查询一下;4、也可以到营业厅进行缴费试试看;如果在异地无法正常使用宽带上网功能的话,可以拨打1#11转人工台报障处理的
```

```bash
Input:为什么电脑老是自动重启
Model output:
建议你下载恶意软件和木马强杀工具windows清理助手查被杀毒,修复注册表。然后在开机按F8进入安全模式后选择重启或关机再试! 1、请你用系统自带的系统的还原:设置->程序与附件中找到“恢复出厂设定”/勾选为自动完成(如果故障依旧);2、双击打开命令提示符输入SFC+ALT回车;3、点击"开始扫描,并执行此操作;4、磁盘整理;5、检查是否使用其他盘片代替了操作系统;如以上方法仍无法解决你的问题请将机器送到三*服
```

```bash
Input:
深圳哪家店火锅好吃?
Model output:
火锅店 地址:深圳宝安区沙井路20号(深大对面)。
```

```bash
Input:
北京有哪些景点方好玩呢推荐下
Model output:
在北四环附近,有一家叫“北京动物园”的野生动物园。 地址:北京市朝阳区东城区西三环南口(原昌平区)
```

```bash
Input:
儿子过生日,我该送些什么礼物呢?
Model output:
送个礼物,就是给宝宝买一个玩具。 比如:小红帽、小熊抱枕(可以自己DIY)等
```

## 引用
```bash
@max{mxmax,
  title={chinese_chat: Chinese_Chat_T5_Base},
  author={Ma Xin},
  year={2023},
  howpublished={\url{https://huggingface.co/mxmax/Chinese_Chat_T5_Base}},
}
```