huggingface 大模型下载与使用
安装依赖
1 | pip install transformers datasets tokenizers |
下载
我们来尝试一下下载并使用模型
- bert-base-chinese
- gpt2-chinese-cluecorpussmall
- roberta-base-chinese-extractive-qa
download_LLM.py
1 | from transformers import AutoModel, AutoTokenizer |
使用
使用本地模型
文本生成模型
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15from transformers import pipeline, AutoTokenizer, AutoModelForCausalLM
model_dir = f"{绝对路径}/huggingFace/models/gpt2-chinese-cluecorpussmall/models--uer--gpt2-chinese-cluecorpussmall/snapshots/c2c0249d8a2731f269414cc3b22dff021f8e07a3"
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = AutoModelForCausalLM.from_pretrained(model_dir)
generator = pipeline("text-generation", model=model, tokenizer=tokenizer, device=0)
result = generator("你好,我是一款大模型",
max_length=150,
num_return_sequences=1,
truncation=True,
temperature=0.7,
top_k=50,
top_p=0.9,
clean_up_tokenization_spaces=False
)
print(result)分类模型
1
2
3
4
5
6
7from transformers import pipeline, BertTokenizer, BertForSequenceClassification
model_dir = f"{绝对路径}/huggingFace/models/bert-base-chinese/models--bert-base-chinese/snapshots/c30a6ed22ab4564dc1e3b2ecbf6e766b0611a33f"
model = BertForSequenceClassification.from_pretrained(model_dir)
tokenizer = BertTokenizer.from_pretrained(model_dir)
classifier = pipeline("text-classification", model=model, tokenizer=tokenizer)
result = classifier("你好,我是一款大模型")
print(result)问答模型
1
2
3
4
5
6
7
8
9
10from transformers import pipeline, AutoTokenizer, AutoModelForQuestionAnswering
model_dir = f"{绝对路径}/huggingFace/models/roberta-base-chinese-extractive-qa/models--uer--roberta-base-chinese-extractive-qa/snapshots/9b02143727b9c4655d18b43a69fc39d5eb3ddd53"
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = AutoModelForQuestionAnswering.from_pretrained(model_dir)
qa_pipeline = pipeline("question-answering", model=model, tokenizer=tokenizer)
result = qa_pipeline({
"question":"Hugging Face 是什么",
"context": "Hugging Face 是一个自然语言处理平台"
})
print(result)