| --- |
| license: mit |
| --- |
| 下面是模型的使用方式。 |
| ```python |
| from datasets import load_dataset, DatasetDict, Dataset |
| |
| from transformers import ( |
| AutoTokenizer, |
| AutoConfig, |
| AutoModelForSequenceClassification, |
| DataCollatorWithPadding, |
| TrainingArguments, |
| Trainer) |
| from pprint import pprint |
| from peft import get_peft_model, LoraConfig, PeftModel |
| import evaluate |
| import torch |
| import numpy as np |
| import pandas as pd |
| from transformers import AutoTokenizer, AutoModelForMaskedLM |
| |
| |
| base_model = "FacebookAI/roberta-large" |
| model_checkpoint = "pretrained_q_k_v" |
| # define label maps |
| id2label = {0: "Negative", 1: "Positive"} |
| label2id = {"Negative":0, "Positive":1} |
| |
| inference_model = AutoModelForSequenceClassification.from_pretrained( |
| base_model, num_labels=2, id2label=id2label, label2id=label2id |
| ) |
| tokenizer = AutoTokenizer.from_pretrained(base_model) |
| model = PeftModel.from_pretrained(inference_model, model_checkpoint) |
| text = "I like it." |
| # 对输入文本进行编码 |
| inputs = tokenizer(text, return_tensors="pt") |
| |
| # 模型推理 |
| with torch.no_grad(): |
| outputs = model(**inputs) |
| |
| # 获取预测结果 |
| predictions = torch.argmax(outputs.logits, dim=-1) |
| |
| # 打印预测结果 |
| print(outputs) |
| print(f"Predicted label: {id2label[predictions.item()]}") |
| ``` |