首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拥抱面TextClassifcation管道:截断文本大小

拥抱面TextClassifcation管道:截断文本大小
EN

Stack Overflow用户
提问于 2022-03-03 22:10:03
回答 2查看 373关注 0票数 0

我试图使用text_classification管道从Huggingface.transformers执行情感分析,但有些文本超过了512个令牌的限制。我希望管道自动截断超限令牌。我尝试了this线程的方法,但是它没有工作。

这是我的代码:

代码语言:javascript
复制
nlp= pipeline('sentiment-analysis',
                     model=AutoModelForSequenceClassification.from_pretrained(
                        "model",
                         return_dict=False),
                     tokenizer=AutoTokenizer.from_pretrained(
                         "model",
                         return_dict=False),
                     framework="pt", return_all_scores=False)

output = nlp(article)
EN

回答 2

Stack Overflow用户

发布于 2022-03-03 23:05:50

为了让每个人都面临同样的问题,下面是我解决这个问题的方法:

代码语言:javascript
复制
tokenizer = AutoTokenizer.from_pretrained("model", return_dict=False)

nlp= pipeline('sentiment-analysis',
                     model=AutoModelForSequenceClassification.from_pretrained(
                        "model",
                         return_dict=False),
                     tokenizer=tokenizer,
                     framework="pt", return_all_scores=False)

encoded_input = tokenizer(article, truncation=True, max_length=512)
decoded_input = tokenizer.decode(encoded_input["input_ids"], skip_special_tokens = True)
output = nlp(decoded_input)
票数 0
EN

Stack Overflow用户

发布于 2022-03-04 09:47:58

另外,也是解决此问题的一种更直接的方法,您可以简单地将这些参数指定为管道中的**kwargs

代码语言:javascript
复制
from transformers import pipeline

nlp = pipeline("sentiment-analysis")
nlp(long_input, truncation=True, max_length=512)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71344409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档