中文文章怎么做抽取式摘要?选关键句并核对数字与实体

抽取式摘要从原文选句,能够减少凭空编造新事实,但仍可能漏掉关键数字或主体。下面用一个四句的虚构项目公告,按字符 TF-IDF 与全文相似度选两句,再把原文中的金额和日期作为待核对清单。

抽取式摘要从原文选句,能够减少凭空编造新事实,但仍可能漏掉关键数字或主体。下面用一个四句的虚构项目公告,按字符 TF-IDF 与全文相似度选两句,再把原文中的金额和日期作为待核对清单。

准备与运行

本文只使用人工构造的教学材料,没有把示例结果当作真实项目效果。以下代码在 Windows 的 Python 3.11 独立环境执行通过。先在空目录运行安装命令,再将完整代码保存为 demo.py,执行 python demo.py。

中文文章怎么做抽取式摘要?选关键句并核对数字与实体

python -m pip install scikit-learn==1.9.1

选句前先确定阅读任务

如果读者要了解项目进度,金额、日期和责任主体可能是必须保留的信息。代码先按中文句号切分,计算每句的 TF-IDF 表示及与全文向量的余弦相似度,选分数最高的两句并按原顺序输出。它不是语言模型生成摘要,不能改写句子,也不理解哪些事实在业务上最重要。

示例公告只有四句,数据完全虚构。真正文档需要先处理标题、表格、脚注和引文;简单按句号分割可能把小数或缩写切错。短句重复关键词时得分可能很高,却未必是关键事实。

把遗漏当成复核任务,而非自动失败结论

脚本从原文抓出形如“数字+万元”和“月日”的事实片段,对照摘要是否出现;缺失项将打印出来供编辑核查。正式核对还应包括人名、机构、否定条件以及上下文关系。不能只看摘要每个词是否在原文中,就认为没有误导。

如果摘要要用于对外发布,编辑应按读者任务决定是否将缺失的关键句补入,或明确摘要只覆盖哪些部分。若需要生成式摘要,应额外逐项核对生成文本中的所有数字、实体和因果关系。

完整代码

import re
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity

text = "项目组于6月3日启动测试。第一阶段预算为12万元。团队完成了接口联调。第二阶段计划在7月15日复核结果。"
sentences = [s for s in re.split(r"(?<=[。!?])", text) if s]
vectors = TfidfVectorizer(analyzer="char", ngram_range=(2,3)).fit_transform(sentences + [text])
scores = cosine_similarity(vectors[:-1], vectors[-1]).ravel()
chosen = sorted(scores.argsort()[-2:].tolist())
summary = "".join(sentences[i] for i in chosen)
facts = re.findall(r"\d+月\d+日|\d+万元", text)
missing = [fact for fact in facts if fact not in summary]
print("sentence_scores", [round(float(s),3) for s in scores])
print("chosen_sentence_ids", chosen)
print("extractive_summary", summary)
print("source_facts", facts)
print("facts_missing_from_summary", missing)
assert all(sentences[i] in text for i in chosen)
assert len(chosen) == 2

运行结果与核对

下面是上述脚本在本地执行得到的输出;正式数据请按相同检查点复核。

sentence_scores [0.458, 0.449, 0.394, 0.541]
chosen_sentence_ids [0, 3]
extractive_summary 项目组于6月3日启动测试。第二阶段计划在7月15日复核结果。
source_facts ['6月3日', '12万元', '7月15日']
facts_missing_from_summary ['12万元']

核对 chosen_sentence_ids 对应的两句确实逐字来自原文,并检查 facts_missing_from_summary。若缺了预算或复核日期,编辑应按用途考虑补入对应句;不要把自动分数高的两句当成最终可发布摘要。

适用边界

四句公告是虚构教学文本,事实抽取规则只识别两种格式,未覆盖“十二万元”、年份和专名。选择两句的上限是演示设置,未经过人工摘要质量评估;不声称已调用生成式 AI。

常见问题

抽取式摘要会不会也改变原意?

会。虽然句子原封不动,删掉条件、转折或否定上下文仍可能误导;务必回看原文前后句,并按用途核对关键事实。

参考资料

以下官方资料已于 2026 年 10 月 1 日核对,分别用于确认文中接口或方法定义。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31727.html

赞 (0)
AI小管家的头像AI小管家
AI 评论分析怎样找具体问题?按方面词归组并保留原句证据
上一篇 2小时前
实体标注的 BIO 标签怎么生成?用字符偏移检查跨词与冲突
下一篇 2小时前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部