🚀 🤖PromptCLUE:全中文任務零樣本學習模型
PromptCLUE是一個全中文任務零樣本學習模型,基於1000億token中文語料預訓練,累計學習1.5萬億中文token,還在數百種任務上進行了Prompt任務式訓練。它能自定義理解類任務的標籤體系,也可進行多種生成任務的自由採樣生成。
🚀 快速開始
加載模型
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("ClueAI/PromptCLUE-base")
model = T5ForConditionalGeneration.from_pretrained("ClueAI/PromptCLUE-base")
使用模型進行預測推理
import torch
device = torch.device('cuda')
model.to(device)
def preprocess(text):
return text.replace("\n", "_")
def postprocess(text):
return text.replace("_", "\n")
def answer(text, sample=False, top_p=0.8):
'''sample:是否抽樣。生成任務,可以設置為True;
top_p:0-1之間,生成的內容越多樣'''
text = preprocess(text)
encoding = tokenizer(text=[text], truncation=True, padding=True, max_length=768, return_tensors="pt").to(device)
if not sample:
out = model.generate(**encoding, return_dict_in_generate=True, output_scores=False, max_length=128, num_beams=4, length_penalty=0.6)
else:
out = model.generate(**encoding, return_dict_in_generate=True, output_scores=False, max_length=64, do_sample=True, top_p=top_p)
out_text = tokenizer.batch_decode(out["sequences"], skip_special_tokens=True)
return postprocess(out_text[0])
✨ 主要特性
- 基於大規模中文語料預訓練,學習豐富的中文語義信息。
- 支持多種任務類型,包括理解類任務(如分類、情感分析、抽取等)和生成類任務。
- 可自定義理解類任務的標籤體系,靈活適應不同場景。
- 支持生成任務的自由採樣生成,生成內容多樣。
💻 使用示例
基礎用法
新聞分類(classify)
Input:
分類任務:
折價率過低遭拋售基金泰和跌7.15%,證券時報記者 朱景鋒本報訊 由於折價率在大盤封基中處於最低水平,基金泰和昨日遭到投資者大舉拋售,跌幅達到7.15%,遠超大盤。盤面顯示,基金泰和隨大盤高開,之後開始震盪走低,午後開始加速下行,幾乎沒有像樣反彈。截至收盤時,在滬深300指數僅下跌2.56%的情況下,基金泰和收盤跌幅高達7.15%,在所有封基中跌幅最大,而昨日多數封基跌幅在2%左右。
選項:財經,娛樂,時政,股票
答案:
Model output:
財經
高級用法
問題生成(generate)
Input:
問題生成:
中新網2022年9月22日電 22日,商務部召開例行新聞發佈會,商務部新聞發言人束珏婷表示,今年1-8月,中國實際使用外資1384億美元,增長20.2%;其中,歐盟對華投資增長123.7%(含通過自由港投資數據)。這充分表明,包括歐盟在內的外國投資者持續看好中國市場,希望繼續深化對華投資合作。
答案:
Model output:
1、商務部發言人束珏婷表示,中國去年1-8月實際使用外資1384億美元,增長20.2%,其中歐盟對華投資增長多少?
2、歐盟對華投資的增長是否達到預期?
3、歐盟在對華投資合作方面取得什麼樣的成果?
📚 詳細文檔
更多示例功能和模型見ClueAI。你還可以通過以下鏈接進行更多操作:
📄 許可證
本項目採用creativeml-openrail-m
許可證。