如何对拥抱脸模型进行批量推理?

问题描述 投票:0回答:1

我想对 MarianMT 模型进行批量推理。这是代码:

from transformers import MarianTokenizer
tokenizer = MarianTokenizer.from_pretrained('Helsinki-NLP/opus-mt-en-de')
src_texts = [ "I am a small frog.", "Tom asked his teacher for advice."]
tgt_texts = ["Ich bin ein kleiner Frosch.", "Tom bat seinen Lehrer um Rat."]  # optional
inputs = tokenizer(src_texts, return_tensors="pt", padding=True)
with tokenizer.as_target_tokenizer():
    labels = tokenizer(tgt_texts, return_tensors="pt", padding=True)
inputs["labels"] = labels["input_ids"]
outputs = model(**inputs) 

如何进行批量推理?

machine-learning deep-learning nlp huggingface-transformers machine-translation
1个回答
0
投票
  1. 创建数据集,最好是数据加载器
  2. 指定批次大小并使用 Huggingface 的 wither Dataloader 或 DataCollator 创建批次
  3. 在每个批次上运行您的分词器
  4. 为每个批次生成输出
  5. 使用batch_decode得到最终输出。
© www.soinside.com 2019 - 2024. All rights reserved.