This program shows how to use T5 for two tasks: translating English to German and summarizing a sentence. It loads the model, prepares inputs with task prefixes, generates outputs, and prints the results.
from transformers import T5Tokenizer, T5ForConditionalGeneration
# Load the small T5 model and tokenizer
model = T5ForConditionalGeneration.from_pretrained('t5-small')
tokenizer = T5Tokenizer.from_pretrained('t5-small')
# Example input: translate English to German
input_text = 'translate English to German: The house is wonderful.'
input_ids = tokenizer(input_text, return_tensors='pt').input_ids
# Generate translation
outputs = model.generate(input_ids, max_length=40)
# Decode and print result
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
print('Translation:', result)
# Example input: summarize text
input_text2 = 'summarize: Machine learning helps computers learn from data to make decisions.'
input_ids2 = tokenizer(input_text2, return_tensors='pt').input_ids
outputs2 = model.generate(input_ids2, max_length=20)
summary = tokenizer.decode(outputs2[0], skip_special_tokens=True)
print('Summary:', summary)