Chinese Text Correction 1.5b
C
Chinese Text Correction 1.5b
由 shibing624 开发
Qwen2.5-1.5B-Instruct 是一个基于 Qwen2.5 架构的 15 亿参数的中文指令微调模型,适用于文本生成和推理任务。
下载量 1,085
发布时间 : 10/12/2024
模型简介
该模型主要用于中文文本生成和推理任务,支持多种自然语言处理应用,如文本纠错、问答系统等。
模型特点
中文指令微调
模型经过指令微调,能够更好地理解和执行中文指令任务。
文本生成能力
支持高质量的中文文本生成,适用于多种应用场景。
文本纠错
能够对中文文本进行纠错,提升文本质量。
模型能力
文本生成
文本纠错
问答系统
指令执行
使用案例
文本纠错
中文文本纠错
对中文文本中的语法、拼写错误进行纠正。
提升文本的准确性和可读性。
问答系统
中文问答
回答用户提出的中文问题。
提供准确且相关的答案。
🚀 中文文本纠错模型
本项目的中文文本纠错模型可用于拼写纠错、语法纠错,为中文文本的准确性提供有力支持。
🚀 快速开始
本项目开源在pycorrector
项目:pycorrector,可支持大模型微调后用于文本纠错,通过如下命令调用:
使用pycorrector
库
安装依赖包:
pip install -U pycorrector
from pycorrector.gpt.gpt_corrector import GptCorrector
if __name__ == '__main__':
error_sentences = [
'真麻烦你了。希望你们好好的跳无',
'少先队员因该为老人让坐',
'机七学习是人工智能领遇最能体现智能的一个分知',
'一只小鱼船浮在平净的河面上',
'我的家乡是有明的渔米之乡',
]
m = GptCorrector("shibing624/chinese-text-correction-1.5b")
batch_res = m.correct_batch(error_sentences)
for i in batch_res:
print(i)
print()
使用HuggingFace Transformers库
若不使用 pycorrector,可以按以下方式使用模型:
首先,将输入数据传入transformer模型,然后获取生成的句子。
安装依赖包:
pip install transformers
# pip install transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
checkpoint = "shibing624/chinese-text-correction-1.5b"
device = "cuda" # for GPU usage or "cpu" for CPU usage
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
input_content = "文本纠错:\n少先队员因该为老人让坐。"
messages = [{"role": "user", "content": input_content}]
input_text=tokenizer.apply_chat_template(messages, tokenize=False)
print(input_text)
inputs = tokenizer.encode(input_text, return_tensors="pt").to(device)
outputs = model.generate(inputs, max_new_tokens=1024, temperature=0, do_sample=False, repetition_penalty=1.08)
print(tokenizer.decode(outputs[0]))
输出结果:
少先队员应该为老人让座。
✨ 主要特性
- 支持拼写纠错、语法纠错,可处理音似、形似、语法等长度对齐的错误纠正,还能处理多字、少字等长度不对齐的错误纠正。
- 提供多种不同规模的模型供选择,以满足不同场景的需求。
📦 安装指南
使用pycorrector
库
pip install -U pycorrector
使用HuggingFace Transformers库
pip install transformers
💻 使用示例
基础用法
from pycorrector.gpt.gpt_corrector import GptCorrector
if __name__ == '__main__':
error_sentences = [
'真麻烦你了。希望你们好好的跳无',
'少先队员因该为老人让坐',
'机七学习是人工智能领遇最能体现智能的一个分知',
'一只小鱼船浮在平净的河面上',
'我的家乡是有明的渔米之乡',
]
m = GptCorrector("shibing624/chinese-text-correction-1.5b")
batch_res = m.correct_batch(error_sentences)
for i in batch_res:
print(i)
print()
高级用法
# pip install transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
checkpoint = "shibing624/chinese-text-correction-1.5b"
device = "cuda" # for GPU usage or "cpu" for CPU usage
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
input_content = "文本纠错:\n少先队员因该为老人让坐。"
messages = [{"role": "user", "content": input_content}]
input_text=tokenizer.apply_chat_template(messages, tokenize=False)
print(input_text)
inputs = tokenizer.encode(input_text, return_tensors="pt").to(device)
outputs = model.generate(inputs, max_new_tokens=1024, temperature=0, do_sample=False, repetition_penalty=1.08)
print(tokenizer.decode(outputs[0]))
📚 详细文档
模型列表
模型名称 | 基础模型 | 下载链接 |
---|---|---|
chinese-text-correction-1.5b | Qwen/Qwen2.5-1.5B-Instruct | 🤗 Hugging Face |
chinese-text-correction-1.5b-lora | Qwen/Qwen2.5-1.5B-Instruct | 🤗 Hugging Face |
chinese-text-correction-7b | Qwen/Qwen2.5-7B-Instruct | 🤗 Hugging Face |
chinese-text-correction-7b-lora | Qwen/Qwen2.5-7B-Instruct | 🤗 Hugging Face |
评估结果
- 评估指标:F1
- CSC(Chinese Spelling Correction):拼写纠错模型,表示模型可以处理音似、形似、语法等长度对齐的错误纠正
- CTC(CHinese Text Correction):文本纠错模型,表示模型支持拼写、语法等长度对齐的错误纠正,还可以处理多字、少字等长度不对齐的错误纠正
- GPU:Tesla V100,显存 32 GB
模型名称 | 模型链接 | 基础模型 | 平均得分 | SIGHAN - 2015 | EC - LAW | MCSC | GPU/CPU | QPS |
---|---|---|---|---|---|---|---|---|
Kenlm - CSC | shibing624/chinese-kenlm-klm | kenlm | 0.3409 | 0.3147 | 0.3763 | 0.3317 | CPU | 9 |
Mengzi - T5 - CSC | shibing624/mengzi-t5-base-chinese-correction | mengzi - t5 - base | 0.3984 | 0.7758 | 0.3156 | 0.1039 | GPU | 214 |
ERNIE - CSC | PaddleNLP/ernie-csc | PaddlePaddle/ernie - 1.0 - base - zh | 0.4353 | 0.8383 | 0.3357 | 0.1318 | GPU | 114 |
MacBERT - CSC | shibing624/macbert4csc-base-chinese | hfl/chinese - macbert - base | 0.3993 | 0.8314 | 0.1610 | 0.2055 | GPU | 224 |
ChatGLM3 - 6B - CSC | shibing624/chatglm3-6b-csc-chinese-lora | THUDM/chatglm3 - 6b | 0.4538 | 0.6572 | 0.4369 | 0.2672 | GPU | 3 |
Qwen2.5 - 1.5B - CTC | shibing624/chinese-text-correction-1.5b | Qwen/Qwen2.5 - 1.5B - Instruct | 0.6802 | 0.3032 | 0.7846 | 0.9529 | GPU | 6 |
Qwen2.5 - 7B - CTC | shibing624/chinese-text-correction-7b | Qwen/Qwen2.5 - 7B - Instruct | 0.8225 | 0.4917 | 0.9798 | 0.9959 | GPU | 3 |
模型文件组成
shibing624/chinese-text-correction-1.5b
|-- added_tokens.json
|-- config.json
|-- generation_config.json
|-- merges.txt
|-- model.safetensors
|-- model.safetensors.index.json
|-- README.md
|-- special_tokens_map.json
|-- tokenizer_config.json
|-- tokenizer.json
`-- vocab.json
训练参数
属性 | 详情 |
---|---|
训练轮数 | 8 |
批次大小 | 4 |
训练步数 | 36000 |
评估损失 | 0.14 |
基础模型 | Qwen/Qwen2.5 - 1.5B - Instruct |
训练数据 | shibing624/chinese_text_correction |
训练时长 | 9天8小时 |
评估损失曲线 | ![]() |
训练损失曲线 | ![]() |
训练数据集
中文纠错数据集
训练参考
如果需要训练Qwen的纠错模型,请参考https://github.com/shibing624/pycorrector 或者 https://github.com/shibing624/MedicalGPT
🔧 技术细节
评估指标
采用F1作为评估指标,全面衡量模型在不同数据集上的纠错性能。
模型类型
分为CSC和CTC两种类型,分别针对不同类型的中文文本错误进行处理。
训练环境
使用Tesla V100 GPU(显存32GB)进行训练,确保模型能够高效收敛。
📄 许可证
本项目采用apache - 2.0
许可证。
📄 引用信息
@software{pycorrector,
author = {Xu Ming},
title = {pycorrector: Implementation of language model finetune},
year = {2024},
url = {https://github.com/shibing624/pycorrector},
}
Phi 2 GGUF
其他
Phi-2是微软开发的一个小型但强大的语言模型,具有27亿参数,专注于高效推理和高质量文本生成。
大型语言模型 支持多种语言
P
TheBloke
41.5M
205
Roberta Large
MIT
基于掩码语言建模目标预训练的大型英语语言模型,采用改进的BERT训练方法
大型语言模型 英语
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT是BERT基础模型的蒸馏版本,在保持相近性能的同时更轻量高效,适用于序列分类、标记分类等自然语言处理任务。
大型语言模型 英语
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct 是一个多语言大语言模型,针对多语言对话用例进行了优化,在常见的行业基准测试中表现优异。
大型语言模型 英语
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa是基于100种语言的2.5TB过滤CommonCrawl数据预训练的多语言模型,采用掩码语言建模目标进行训练。
大型语言模型 支持多种语言
X
FacebookAI
9.6M
664
Roberta Base
MIT
基于Transformer架构的英语预训练模型,通过掩码语言建模目标在海量文本上训练,支持文本特征提取和下游任务微调
大型语言模型 英语
R
FacebookAI
9.3M
488
Opt 125m
其他
OPT是由Meta AI发布的开放预训练Transformer语言模型套件,参数量从1.25亿到1750亿,旨在对标GPT-3系列性能,同时促进大规模语言模型的开放研究。
大型语言模型 英语
O
facebook
6.3M
198
1
基于transformers库的预训练模型,适用于多种NLP任务
大型语言模型
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1是Meta推出的多语言大语言模型系列,包含8B、70B和405B参数规模,支持8种语言和代码生成,优化了多语言对话场景。
大型语言模型
Transformers 支持多种语言

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5基础版是由Google开发的文本到文本转换Transformer模型,参数规模2.2亿,支持多语言NLP任务。
大型语言模型 支持多种语言
T
google-t5
5.4M
702
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98