Commit beb03ec6 authored by wangfei's avatar wangfei
Browse files

Fix examples of loading pretrained models in docstring

parent 4fc9f9ef
...@@ -643,12 +643,11 @@ class BertModel(BertPreTrainedModel): ...@@ -643,12 +643,11 @@ class BertModel(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertModel.from_pretrained('bert-base-uncased')
model = BertModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
def __init__(self, config): def __init__(self, config):
...@@ -754,13 +753,11 @@ class BertForPreTraining(BertPreTrainedModel): ...@@ -754,13 +753,11 @@ class BertForPreTraining(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForPreTraining.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForPreTraining(config) >>> outputs = model(input_ids)
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> prediction_scores, seq_relationship_scores = outputs[:2]
outputs = model(input_ids)
prediction_scores, seq_relationship_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -824,13 +821,11 @@ class BertForMaskedLM(BertPreTrainedModel): ...@@ -824,13 +821,11 @@ class BertForMaskedLM(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForMaskedLM.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForMaskedLM(config) >>> outputs = model(input_ids, masked_lm_labels=input_ids)
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> loss, prediction_scores = outputs[:2]
outputs = model(input_ids, masked_lm_labels=input_ids)
loss, prediction_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -891,13 +886,11 @@ class BertForNextSentencePrediction(BertPreTrainedModel): ...@@ -891,13 +886,11 @@ class BertForNextSentencePrediction(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForNextSentencePrediction.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForNextSentencePrediction(config) >>> outputs = model(input_ids)
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> seq_relationship_scores = outputs[0]
outputs = model(input_ids)
seq_relationship_scores = outputs[0]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -951,14 +944,12 @@ class BertForSequenceClassification(BertPreTrainedModel): ...@@ -951,14 +944,12 @@ class BertForSequenceClassification(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForSequenceClassification.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForSequenceClassification(config) >>> labels = torch.tensor([1]).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=labels)
labels = torch.tensor([1]).unsqueeze(0) # Batch size 1 >>> loss, logits = outputs[:2]
outputs = model(input_ids, labels=labels)
loss, logits = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1057,15 +1048,13 @@ class BertForMultipleChoice(BertPreTrainedModel): ...@@ -1057,15 +1048,13 @@ class BertForMultipleChoice(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForMultipleChoice.from_pretrained('bert-base-uncased')
>>> choices = ["Hello, my dog is cute", "Hello, my cat is amazing"]
model = BertForMultipleChoice(config) >>> input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices
choices = ["Hello, my dog is cute", "Hello, my cat is amazing"] >>> labels = torch.tensor(1).unsqueeze(0) # Batch size 1
input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices >>> outputs = model(input_ids, labels=labels)
labels = torch.tensor(1).unsqueeze(0) # Batch size 1 >>> loss, classification_scores = outputs[:2]
outputs = model(input_ids, labels=labels)
loss, classification_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1127,14 +1116,12 @@ class BertForTokenClassification(BertPreTrainedModel): ...@@ -1127,14 +1116,12 @@ class BertForTokenClassification(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForTokenClassification.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForTokenClassification(config) >>> labels = torch.tensor([1] * input_ids.size(1)).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=labels)
labels = torch.tensor([1] * input_ids.size(1)).unsqueeze(0) # Batch size 1 >>> loss, scores = outputs[:2]
outputs = model(input_ids, labels=labels)
loss, scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1203,15 +1190,13 @@ class BertForQuestionAnswering(BertPreTrainedModel): ...@@ -1203,15 +1190,13 @@ class BertForQuestionAnswering(BertPreTrainedModel):
Examples:: Examples::
config = BertConfig.from_pretrained('bert-base-uncased') >>> tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') >>> model = BertForQuestionAnswering.from_pretrained('bert-base-uncased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = BertForQuestionAnswering(config) >>> start_positions = torch.tensor([1])
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> end_positions = torch.tensor([3])
start_positions = torch.tensor([1]) >>> outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
end_positions = torch.tensor([3]) >>> loss, start_scores, end_scores = outputs[:2]
outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
loss, start_scores, end_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
...@@ -433,12 +433,11 @@ class GPT2Model(GPT2PreTrainedModel): ...@@ -433,12 +433,11 @@ class GPT2Model(GPT2PreTrainedModel):
Examples:: Examples::
config = GPT2Config.from_pretrained('gpt2') >>> tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
tokenizer = GPT2Tokenizer.from_pretrained('gpt2') >>> model = GPT2Model.from_pretrained('gpt2')
model = GPT2Model(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
def __init__(self, config): def __init__(self, config):
...@@ -567,12 +566,11 @@ class GPT2LMHeadModel(GPT2PreTrainedModel): ...@@ -567,12 +566,11 @@ class GPT2LMHeadModel(GPT2PreTrainedModel):
Examples:: Examples::
config = GPT2Config.from_pretrained('gpt2') >>> tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
tokenizer = GPT2Tokenizer.from_pretrained('gpt2') >>> model = GPT2LMHeadModel.from_pretrained('gpt2')
model = GPT2LMHeadModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=input_ids)
outputs = model(input_ids, labels=input_ids) >>> loss, logits = outputs[:2]
loss, logits = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -683,14 +681,13 @@ class GPT2DoubleHeadsModel(GPT2PreTrainedModel): ...@@ -683,14 +681,13 @@ class GPT2DoubleHeadsModel(GPT2PreTrainedModel):
Examples:: Examples::
config = GPT2Config.from_pretrained('gpt2') >>> tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
tokenizer = GPT2Tokenizer.from_pretrained('gpt2') >>> model = GPT2DoubleHeadsModel.from_pretrained('gpt2')
model = GPT2DoubleHeadsModel(config) >>> choices = ["Hello, my dog is cute [CLS]", "Hello, my cat is cute [CLS]"] # Assume you've added [CLS] to the vocabulary
choices = ["Hello, my dog is cute [CLS]", "Hello, my cat is cute [CLS]"] # Assume you've added [CLS] to the vocabulary >>> input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices
input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices >>> mc_token_ids = torch.tensor([-1, -1]).unsqueeze(0) # Batch size 1
mc_token_ids = torch.tensor([-1, -1]).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, mc_token_ids)
outputs = model(input_ids, mc_token_ids) >>> lm_prediction_scores, mc_prediction_scores = outputs[:2]
lm_prediction_scores, mc_prediction_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
...@@ -439,12 +439,11 @@ class OpenAIGPTModel(OpenAIGPTPreTrainedModel): ...@@ -439,12 +439,11 @@ class OpenAIGPTModel(OpenAIGPTPreTrainedModel):
Examples:: Examples::
config = OpenAIGPTConfig.from_pretrained('openai-gpt') >>> tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt')
tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt') >>> model = OpenAIGPTModel.from_pretrained('openai-gpt')
model = OpenAIGPTModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
def __init__(self, config): def __init__(self, config):
...@@ -558,12 +557,11 @@ class OpenAIGPTLMHeadModel(OpenAIGPTPreTrainedModel): ...@@ -558,12 +557,11 @@ class OpenAIGPTLMHeadModel(OpenAIGPTPreTrainedModel):
Examples:: Examples::
config = OpenAIGPTConfig.from_pretrained('openai-gpt') >>> tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt')
tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt') >>> model = OpenAIGPTLMHeadModel.from_pretrained('openai-gpt')
model = OpenAIGPTLMHeadModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=input_ids)
outputs = model(input_ids, labels=input_ids) >>> loss, logits = outputs[:2]
loss, logits = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -665,14 +663,13 @@ class OpenAIGPTDoubleHeadsModel(OpenAIGPTPreTrainedModel): ...@@ -665,14 +663,13 @@ class OpenAIGPTDoubleHeadsModel(OpenAIGPTPreTrainedModel):
Examples:: Examples::
config = OpenAIGPTConfig.from_pretrained('openai-gpt') >>> tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt')
tokenizer = OpenAIGPTTokenizer.from_pretrained('openai-gpt') >>> model = OpenAIGPTDoubleHeadsModel.from_pretrained('openai-gpt')
model = OpenAIGPTDoubleHeadsModel(config) >>> choices = ["Hello, my dog is cute [CLS]", "Hello, my cat is cute [CLS]"] # Assume you've added [CLS] to the vocabulary
choices = ["Hello, my dog is cute [CLS]", "Hello, my cat is cute [CLS]"] # Assume you've added [CLS] to the vocabulary >>> input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices
input_ids = torch.tensor([tokenizer.encode(s) for s in choices]).unsqueeze(0) # Batch size 1, 2 choices >>> mc_token_ids = torch.tensor([-1, -1]).unsqueeze(0) # Batch size 1
mc_token_ids = torch.tensor([-1, -1]).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, mc_token_ids)
outputs = model(input_ids, mc_token_ids) >>> lm_prediction_scores, mc_prediction_scores = outputs[:2]
lm_prediction_scores, mc_prediction_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
...@@ -968,12 +968,11 @@ class TransfoXLModel(TransfoXLPreTrainedModel): ...@@ -968,12 +968,11 @@ class TransfoXLModel(TransfoXLPreTrainedModel):
Examples:: Examples::
config = TransfoXLConfig.from_pretrained('transfo-xl-wt103') >>> tokenizer = TransfoXLTokenizer.from_pretrained('transfo-xl-wt103')
tokenizer = TransfoXLTokenizer.from_pretrained('transfo-xl-wt103') >>> model = TransfoXLModel.from_pretrained('transfo-xl-wt103')
model = TransfoXLModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states, mems = outputs[:2]
last_hidden_states, mems = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1284,12 +1283,11 @@ class TransfoXLLMHeadModel(TransfoXLPreTrainedModel): ...@@ -1284,12 +1283,11 @@ class TransfoXLLMHeadModel(TransfoXLPreTrainedModel):
Examples:: Examples::
config = TransfoXLConfig.from_pretrained('transfo-xl-wt103') >>> tokenizer = TransfoXLTokenizer.from_pretrained('transfo-xl-wt103')
tokenizer = TransfoXLTokenizer.from_pretrained('transfo-xl-wt103') >>> model = TransfoXLLMHeadModel.from_pretrained('transfo-xl-wt103')
model = TransfoXLLMHeadModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> prediction_scores, mems = outputs[:2]
prediction_scores, mems = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
...@@ -472,12 +472,11 @@ class XLMModel(XLMPreTrainedModel): ...@@ -472,12 +472,11 @@ class XLMModel(XLMPreTrainedModel):
Examples:: Examples::
config = XLMConfig.from_pretrained('xlm-mlm-en-2048') >>> tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048')
tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048') >>> model = XLMModel.from_pretrained('xlm-mlm-en-2048')
model = XLMModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
ATTRIBUTES = ['encoder', 'eos_index', 'pad_index', # 'with_output', ATTRIBUTES = ['encoder', 'eos_index', 'pad_index', # 'with_output',
...@@ -745,12 +744,11 @@ class XLMWithLMHeadModel(XLMPreTrainedModel): ...@@ -745,12 +744,11 @@ class XLMWithLMHeadModel(XLMPreTrainedModel):
Examples:: Examples::
config = XLMConfig.from_pretrained('xlm-mlm-en-2048') >>> tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048')
tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048') >>> model = XLMWithLMHeadModel.from_pretrained('xlm-mlm-en-2048')
model = XLMWithLMHeadModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
def __init__(self, config): def __init__(self, config):
...@@ -805,14 +803,12 @@ class XLMForSequenceClassification(XLMPreTrainedModel): ...@@ -805,14 +803,12 @@ class XLMForSequenceClassification(XLMPreTrainedModel):
Examples:: Examples::
config = XLMConfig.from_pretrained('xlm-mlm-en-2048') >>> tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048')
tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048') >>> model = XLMForSequenceClassification.from_pretrained('xlm-mlm-en-2048')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = XLMForSequenceClassification(config) >>> labels = torch.tensor([1]).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=labels)
labels = torch.tensor([1]).unsqueeze(0) # Batch size 1 >>> loss, logits = outputs[:2]
outputs = model(input_ids, labels=labels)
loss, logits = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -885,15 +881,13 @@ class XLMForQuestionAnswering(XLMPreTrainedModel): ...@@ -885,15 +881,13 @@ class XLMForQuestionAnswering(XLMPreTrainedModel):
Examples:: Examples::
config = XLMConfig.from_pretrained('xlm-mlm-en-2048') >>> tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048')
tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048') >>> model = XLMForQuestionAnswering.from_pretrained('xlm-mlm-en-2048')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = XLMForQuestionAnswering(config) >>> start_positions = torch.tensor([1])
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> end_positions = torch.tensor([3])
start_positions = torch.tensor([1]) >>> outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
end_positions = torch.tensor([3]) >>> loss, start_scores, end_scores = outputs[:2]
outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
loss, start_scores, end_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
...@@ -712,12 +712,11 @@ class XLNetModel(XLNetPreTrainedModel): ...@@ -712,12 +712,11 @@ class XLNetModel(XLNetPreTrainedModel):
Examples:: Examples::
config = XLNetConfig.from_pretrained('xlnet-large-cased') >>> tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased')
tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased') >>> model = XLNetModel.from_pretrained('xlnet-large-cased')
model = XLNetModel(config) >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids)
outputs = model(input_ids) >>> last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
last_hidden_states = outputs[0] # The last hidden-state is the first element of the output tuple
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1019,17 +1018,16 @@ class XLNetLMHeadModel(XLNetPreTrainedModel): ...@@ -1019,17 +1018,16 @@ class XLNetLMHeadModel(XLNetPreTrainedModel):
Examples:: Examples::
config = XLNetConfig.from_pretrained('xlnet-large-cased') >>> tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased')
tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased') >>> model = XLNetLMHeadModel.from_pretrained('xlnet-large-cased')
model = XLNetLMHeadModel(config) >>> # We show how to setup inputs to predict a next token using a bi-directional context.
# We show how to setup inputs to predict a next token using a bi-directional context. >>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is very <mask>")).unsqueeze(0) # We will predict the masked token
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is very <mask>")).unsqueeze(0) # We will predict the masked token >>> perm_mask = torch.zeros((1, input_ids.shape[1], input_ids.shape[1]), dtype=torch.float)
perm_mask = torch.zeros((1, input_ids.shape[1], input_ids.shape[1]), dtype=torch.float) >>> perm_mask[:, :, -1] = 1.0 # Previous tokens don't see last token
perm_mask[:, :, -1] = 1.0 # Previous tokens don't see last token >>> target_mapping = torch.zeros((1, 1, input_ids.shape[1]), dtype=torch.float) # Shape [1, 1, seq_length] => let's predict one token
target_mapping = torch.zeros((1, 1, input_ids.shape[1]), dtype=torch.float) # Shape [1, 1, seq_length] => let's predict one token >>> target_mapping[0, 0, -1] = 1.0 # Our first (and only) prediction will be the last token of the sequence (the masked token)
target_mapping[0, 0, -1] = 1.0 # Our first (and only) prediction will be the last token of the sequence (the masked token) >>> outputs = model(input_ids, perm_mask=perm_mask, target_mapping=target_mapping)
outputs = model(input_ids, perm_mask=perm_mask, target_mapping=target_mapping) >>> next_token_logits = outputs[0] # Output has shape [target_mapping.size(0), target_mapping.size(1), config.vocab_size]
next_token_logits = outputs[0] # Output has shape [target_mapping.size(0), target_mapping.size(1), config.vocab_size]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1100,14 +1098,12 @@ class XLNetForSequenceClassification(XLNetPreTrainedModel): ...@@ -1100,14 +1098,12 @@ class XLNetForSequenceClassification(XLNetPreTrainedModel):
Examples:: Examples::
config = XLNetConfig.from_pretrained('xlnet-large-cased') >>> tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased')
tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased') >>> model = XLNetForSequenceClassification.from_pretrained('xlnet-large-cased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = XLNetForSequenceClassification(config) >>> labels = torch.tensor([1]).unsqueeze(0) # Batch size 1
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> outputs = model(input_ids, labels=labels)
labels = torch.tensor([1]).unsqueeze(0) # Batch size 1 >>> loss, logits = outputs[:2]
outputs = model(input_ids, labels=labels)
loss, logits = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
...@@ -1200,15 +1196,13 @@ class XLNetForQuestionAnswering(XLNetPreTrainedModel): ...@@ -1200,15 +1196,13 @@ class XLNetForQuestionAnswering(XLNetPreTrainedModel):
Examples:: Examples::
config = XLMConfig.from_pretrained('xlm-mlm-en-2048') >>> tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048')
tokenizer = XLMTokenizer.from_pretrained('xlm-mlm-en-2048') >>> model = XLMForQuestionAnswering.from_pretrained('xlnet-large-cased')
>>> input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1
model = XLMForQuestionAnswering(config) >>> start_positions = torch.tensor([1])
input_ids = torch.tensor(tokenizer.encode("Hello, my dog is cute")).unsqueeze(0) # Batch size 1 >>> end_positions = torch.tensor([3])
start_positions = torch.tensor([1]) >>> outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
end_positions = torch.tensor([3]) >>> loss, start_scores, end_scores = outputs[:2]
outputs = model(input_ids, start_positions=start_positions, end_positions=end_positions)
loss, start_scores, end_scores = outputs[:2]
""" """
def __init__(self, config): def __init__(self, config):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment