本教程基于 Hugging Face 的 transformers
库,展示如何使用预训练模型完成以下任务:
!pip install datasets evaluate transformers sentencepiece -q
from transformers import pipeline
classifier = pipeline("sentiment-analysis")
# 单个句子
classifier("I really enjoy learning new things every day.")
# 多个句子
classifier([
"I really enjoy learning new things every day.",
"I dislike rainy weather on weekends."
])
from transformers import pipeline
generator = pipeline("text-generation")
generator("Today we are going to explore something exciting")
# 两句话,每句最多15词
generator("Today we are going to explore something exciting", num_return_sequences=2, max_length=15)
from transformers import pipeline
generator = pipeline("text-generation", model="distilgpt2")
generator(
"Today we are going to explore something exciting",
max_length=30,
num_return_sequences=2,
)
from transformers import pipeline
translator = pipeline("translation_en_to_de")
translator("This is a great day to learn something new!")
from transformers import pipeline
unmasker = pipeline("fill-mask")
unmasker("Life is like a of chocolates." )
from transformers import pipeline
classifier = pipeline("zero-shot-classification")
classifier(
"This tutorial is about machine learning and natural language processing.",
candidate_labels=["education", "sports", "politics"]
)
from transformers import pipeline
text2text = pipeline("text2text-generation")
text2text("Translate English to French: How are you today?")
from transformers import pipeline
summarizer = pipeline("summarization")
summarizer(
"Machine learning is a field of artificial intelligence that focuses on enabling machines to learn from data..."
)
from transformers import BertTokenizer, BertForSequenceClassification
from transformers import pipeline
model_name = "nlptown/bert-base-multilingual-uncased-sentiment"
tokenizer = BertTokenizer.from_pretrained(model_name)
model = BertForSequenceClassification.from_pretrained(model_name)
pipe = pipeline("sentiment-analysis", model=model, tokenizer=tokenizer)
pipe("I had an amazing experience with this product!")