官方文档和代码中的setup有错误,我已经提了PR,如果官方不merge请大家使用我这个版本:文档,https://github.com/Yonggie/Fengshenbang-doc;代码:https://github.com/Yonggie/Fengshenbang-LM

安装

就按官方的来,只不过下载的repo换成我那个

git clone https://github.com/Yonggie/Fengshenbang-LM.git
cd Fengshenbang-LM
pip install --editable ./

例子

复制如下

import argparse
from fengshen import UbertPipelines

total_parser = argparse.ArgumentParser("TASK NAME")
total_parser = UbertPipelines.pipelines_args(total_parser)
args = total_parser.parse_args()

args.pretrained_model_path = "IDEA-CCNL/Erlangshen-Ubert-330M-Chinese"

test_data=[
    {
        "task_type": "抽取任务", 
        "subtask_type": "实体识别", 
        "text": "这也让很多业主据此认为,雅清苑是政府公务员挤对了国家的经适房政策。", 
        "choices": [ 
            {"entity_type": "小区名字"}, 
            {"entity_type": "岗位职责"}
            ],
        "id": 0}
]

model = UbertPipelines(args)
result = model.predict(test_data)
for line in result:
    print(line)

我改进了什么?

对于二郎神系列模型Erlangshen-Ubert-110M-Chinese和对应330M的模型:

  • 官方的文档example首先有typo错误,是跑不通的,需要修改UbertPiplinesUbertPipelines(少了一个e)
  • 另外通过文档的安装方式也是不行的,由于代码的pytorch lightning写法是1.x的,现在2.x已经不适合了,官方的setup.py没有规定版本,我已经更改。另外还缺少了一些依赖,我也已经在这个repo里面补充。
  • 我还加入了默认使用GPU,原版是默认不加的。
  • 模型有限制,只能batch size为128,可以修改,位置 modeling_ubert.py的class UbertDataModel(pl.LightningDataModule):

小结

  1. 修改fengshen库的setup.py,规定version,若按照原setup会报错
  2. 修改readme的example,修改typo(我的小时没了,实在是没发觉是文档少了个字母)更新了的文档在repohttps://github.com/Yonggie/Fengshenbang-doc里面

Yonggie
95 声望4 粉丝