当前位置:   article > 正文

使用魔搭社区的模型对对话文本进行语义分割_nlp_bert_document-segmentation_chinese-base 怎么使用

nlp_bert_document-segmentation_chinese-base 怎么使用

1、对文本进行前处理:

        ①当文本长度小于512时,填充其长度。经过各种填充的尝试,发现将原对话再续几遍对分割的效果最好:

  1. while len(inputs) < 512:
  2. inputs += inputs

        ②将 “小明:” 替换成  “小明,”        【因为太多的“:”会导致语义分割出错】

2、导入模型,开始分割:

  1. from modelscope.outputs import OutputKeys
  2. from modelscope.pipelines import pipeline
  3. from modelscope.utils.constant import Tasks
  4. p = pipeline(
  5. task=Tasks.document_segmentation,
  6. model='damo/nlp_bert_document-segmentation_chinese-base'
  7. )
  8. result = p(documents=inputs)

result是一个字典,其中的'text'就是分割后的结果,分割后的段落以‘\t’开始,以'\n‘结束,所以进行后处理如下:

  1. tmp = re.split(r'\n\t', re.sub(r'^\t', '', result['text']))
  2. text = list(filter(None, tmp))

此时text是列表,每一个元素都是一个语义相近的一段,分割结束

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/480330
推荐阅读
相关标签
  

闽ICP备14008679号