如何避免PEGASUS-Pubmed模型生成被截断的摘要?
解决PEGASUS-Pubmed生成摘要被截断的问题
问题原因
你遇到的摘要截断问题主要是因为summarization pipeline默认的生成长度限制过小,模型还没输出完整内容就被强制停止了。PEGASUS-Pubmed针对科研论文设计,需要足够的输出长度才能覆盖论文的关键信息。
解决方案
修改调用summerize_pipe时的参数,明确指定生成的最大新token数、最小长度,同时开启提前终止,让模型自然完成摘要:
pipe_out = summerize_pipe( sample_dataset, truncation=True, max_new_tokens=512, # 可根据需求调整,科研摘要一般设300-600 min_length=150, early_stopping=True, do_sample=False )
参数说明
max_new_tokens: 控制模型生成的新token总数,直接决定摘要的最大长度,避免硬截断。min_length: 确保摘要不会过短,保证核心信息被覆盖。early_stopping=True: 让模型在生成语义完整的结尾时自动停止,而非到了长度限制才终止。do_sample=False: 保持生成的确定性,适合科研摘要这类需要准确传递信息的场景。
额外提示
如果调整后仍有截断,可以进一步增大max_new_tokens的值(比如调到768),但要注意PEGASUS-Pubmed的最大序列长度是1024,输入文章的token数加上输出摘要的token数不能超过这个值,所以如果输入文章较长,需要平衡输入截断和输出长度的设置。
内容的提问来源于stack exchange,提问作者Simran
相关产品推荐
相关产品推荐

