【AI】使用Huggingface模型实现文本内容摘要器
推荐超级课程:
@TOC
什么是摘要器?
顾名思义,摘要器的作用就是提炼。它将一大段文本压缩成更短的版本,只保留关键信息。想象一下,读一本小说和只看它的封底有什么区别。目标是在节省时间的同时,仍然能够抓住内容的精髓。
摘要器的应用场景
摘要器并非仅仅是酷炫的技术把戏,它服务于现实世界的需求。
- 新闻记者用它快速筛选报告和研究。
- 学生用它总结冗长的阅读材料。
- 企业用它压缩市场分析或冗长的报告。 简而言之,任何需要快速处理大量文本的人都可以从摘要器中受益。
什么是 Hugging Face Transformers?
Hugging Face 是一家公司,它创建了一个用于自然语言处理 (NLP) 的最先进的平台。 他们的 Transformers 库就像是 NLP 任务的宝库。它包括预训练模型,可以执行从翻译和情感分析到摘要等所有任务。 这些模型从大量文本中学习,并以惊人的方式理解和生成语言,就像人类一样。
如何使用 Hugging Face Transformers 构建摘要器
现在,让我们卷起袖子开始构建吧。我们将使用 Huggingface pipeline 使用 Facebook 的 Bart 模型 来实现我们的摘要模型。 BART 模型是用英语预训练的。它是一个序列到序列模型,非常适合文本生成(例如摘要和翻译)。它也适用于理解任务(例如文本分类和问答)。 Hugging Face Pipelines 提供了一种更简单的方法来实现各种任务。它不需要准备数据集、用模型训练它,然后再使用它,因为 pipeline 简化了代码,因为它隐藏了手动分词和模型定制的需求。
如何设置您的环境
首先,您需要设置您的编码环境。我更喜欢使用 Google Collab notebook而不是在本地机器上安装它。 让我们从安装 transformer 库开始。如果您在 collab notebook中运行它,请在命令前使用 !:
pip install transformers
现在,让我们使用 Hugging Face transformers
库初始化一个文本摘要 pipeline:
summarizer = pipeline("summarization", model="facebook/bart-large-cnn")
让我们分解一下每个部分的作用:
pipeline
:这是 Hugging Facetransformers
库提供的一个函数,用于轻松地应用各种类型的自然语言处理 (NLP) 任务,例如文本分类、翻译、摘要等。该函数返回一个针对指定任务的现成 pipeline 对象。"summarization"
:这是pipeline
函数的第一个参数,指定您希望 pipeline 执行的任务类型。在这种情况下,"summarization"
意味着 pipeline 将被配置为摘要文本。model="facebook/bart-large-cnn"
:此参数指定用于摘要任务的预训练模型。在这里,"facebook/bart-large-cnn"
指的是 Facebook 提供的一个特定模型,它在一个大型数据集上进行了训练,用于执行文本摘要。此模型基于 BART(双向和自回归 Transformer)架构,非常适合需要理解和生成自然语言的任务。large-cnn
部分表明此特定模型变体针对类似于传统 CNN 新闻风格摘要的任务进行了优化。 当执行此行代码时,它会创建一个summarizer
对象。然后可以使用该对象通过将文本数据传递给它来执行文本摘要。该模型将生成输入文本的简短版本,捕获最重要的或相关信息,根据其在摘要任务上的训练。 现在我们准备使用模型来摘要我们的文本 。
text = """"""
现在,让我们使用此文本作为输入并调用我们的摘要器:
summary = summarizer(text, max_length=150, min_length=40, do_sample=False)
此行代码使用之前使用 Hugging Face pipeline
创建的 summarizer
对象来生成输入文本的摘要。以下是函数调用及其参数的分解:
summarizer
:这是之前使用pipeline
函数初始化的对象。text
:这是您想要摘要的输入文本。max_length=150
:此参数指定摘要的最大长度,以 token(单词和标点符号)的数量表示。min_length=40
:同样,此参数设置摘要的最小长度。 最后,我们将打印我们的摘要:
print(summary[0]['summary_text'])
以下是响应:
xxxxxxx
简而言之,此代码:
- 加载了一个摘要 pipeline,该 pipeline 预配置为使用
facebook/bart-large-cnn
模型。 - 将文本传递给摘要器。
- 输出具有指定最小值和最大长度的摘要。
结论
使用 Hugging Face Transformers 构建文本摘要器不仅仅是玩酷炫的技术。这是关于利用人工智能的力量让我们的生活变得更轻松。无论您是学生、专业人士还是对 NLP 感兴趣的人,快速压缩信息的能力都是无价的。 有了 Hugging Face Transformers,您就站在巨人的肩膀上,利用当今最先进的 NLP 模型。所以,试试吧。谁知道呢?它可能会永远改变您处理文本的方式。