许可证:apache-2.0
流程标签:文本到文本生成
语言:
- 英文
库名称:transformers
标签:
- 代码
- 关键词生成
- 英语
- T5
KeywordGen-v2 模型
KeywordGen-v1 是基于 T5 的模型,专为从文本中生成关键词而微调。给定一段输入文本,模型将返回相关的关键词。
模型描述
本模型 "KeywordGen-v2" 是 "KeywordGen" 系列的第二版。它基于 T5 基础模型微调,专门用于从文本输入中生成关键词,尤其关注产品评论。
该模型可以通过从产品评论中提取关键点或主题提供有用的见解。输出预计包含 2 到 8 个单词的关键词。当输入文本至少为 2-3 句话时,模型表现更佳。
使用方法
您可以直接使用文本生成流程调用此模型。使用时,请在输入前添加前缀 "Keyword: " 以获得最佳效果。
以下是使用 Hugging Face Transformers 库在 Python 中调用该模型的方法:
单条输入
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("mrutyunjay-patil/keywordGen-v2")
model = T5ForConditionalGeneration.from_pretrained("mrutyunjay-patil/keywordGen-v2")
input_sequence = "Keyword: 我上周购买了新款安卓智能手机,印象非常深刻。屏幕色彩极其鲜艳且清晰,电池续航出奇地好,即使重度使用也能轻松撑过一整天。"
input_ids = tokenizer.encode(input_sequence, return_tensors="pt")
outputs = model.generate(input_ids)
output_sequence = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(output_sequence)
多条输入
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("mrutyunjay-patil/keywordGen-v2")
model = T5ForConditionalGeneration.from_pretrained("mrutyunjay-patil/keywordGen-v2")
task_prefix = "Keyword: "
inputs = [
"非常喜欢这款平板电脑。屏幕清晰锐利,运行应用流畅无卡顿。",
"耳机音质很棒,但做工质量有待提升。",
"上周买了这款智能手表,性能让我惊喜,电池续航令人印象深刻。",
"这款笔记本电脑超出了我的预期。速度快、存储空间大、重量轻,完美满足需求。",
"这款手机的相机质量非常出色,能捕捉到细节丰富且色彩鲜艳的照片,但电池续航不太理想。"
]
for sample in inputs:
input_sequence = task_prefix + sample
input_ids = tokenizer.encode(input_sequence, return_tensors="pt")
outputs = model.generate(input_ids)
output_sequence = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(sample, "\n --->", output_sequence)
训练
该模型基于自定义数据集训练,基础模型为 T5 基础模型。
局限性与未来工作
与任何机器学习模型一样,该关键词生成器的输出依赖于其训练数据。如果输入文本包含不当或有偏见的内容,模型可能会生成不恰当或有偏见的关键词。未来版本将致力于提升模型的鲁棒性和公平性,并尽量减少潜在的偏见。