🚀 飛雪連天射白鹿,笑書神俠倚碧鴛
本項目是一個AI模型,可根據給定的金庸小說開頭進行續寫,為金庸小說愛好者帶來別樣的創作體驗。
🚀 快速開始
調用模型
使用 pipeline
調用模型的示例代碼如下:
>>>
>>> senc="這些雪花落下來,多麼白,多麼好看.過幾天太陽出來,每一片 雪花都變得無影無蹤.到得明年冬天,又有許很多多雪花,只不過已不是 今年這些雪花罷了。"
>>> model_id="jinyong-gpt2-finetuning"
>>> from transformers import AutoTokenizer, GPT2LMHeadModel, TextGenerationPipeline
>>> tokenizer = AutoTokenizer.from_pretrained(model_id)
>>> model = GPT2LMHeadModel.from_pretrained(model_id)
>>> text_generator = TextGenerationPipeline(model, tokenizer)
>>> text_generator.model.config.pad_token_id = text_generator.model.config.eos_token_id
>>> text_generator( senc,max_length=108, do_sample=True)
[{'generated_text': '這些雪花落下來,多麼白,多麼好看.過幾天太陽出來,每一片 雪花都變得無影無蹤.到得明年冬天,又有許很多多雪花,只不過已不是 今年這些雪花罷了。 反正 老天爺 有眼 , 不知 哪裡 是甚麼 風 險 ?” 正 說到此處 , 突然 聽得 謝遜 嘯聲 漸近 , 忍不住 張口 驚呼 , 一齊 向他 撲去 , 只聽 謝遜 一聲 怒吼 , 跟著 左手 用力 拍 出一掌 , 以 掌力 化開 。 眾人 吃了一驚 , 同時 從 海 道 中 躍出 , 雙雙 倒退 。 張翠山和殷素素 對望一眼 , 均想 以 這兩 大高手 之力 如何 抵擋 , 以 今日 之力 如何 攻敵 之'}]
>>>
獲取文本特徵
以下是使用該模型獲取給定文本特徵的示例代碼:
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("supermy/jinyong-gpt2")
model = AutoModelForCausalLM.from_pretrained("supermy/jinyong-gpt2")
✨ 主要特性
本模型能夠根據輸入的金庸小說開頭,續寫精彩的故事情節,為用戶帶來獨特的閱讀和創作體驗。
📦 安裝指南
文檔未提供具體安裝步驟,可參考 transformers
庫的官方文檔進行安裝。
📚 詳細文檔
模型信息
屬性 |
詳情 |
模型類型 |
基於GPT2微調的模型 |
訓練數據 |
此數據集基於金庸的【飛雪連天射白鹿,笑書神俠倚碧鴛】小說集訓練 |
推理參數
推理時的參數設置如下:
max_length
: 108
num_return_sequences
: 1
do_sample
: True
示例輸入
以下是一些示例輸入:
- 文本:"楊過朗聲說道:今番良晤,豪興不淺,他日江湖相逢,再當杯酒言歡。咱們就此別過。 -",示例標題:"神鵰俠侶"
- 文本:"亂世之際,人不如狗。 -",示例標題:"射鵰英雄傳"
訓練過程
基礎信息
- 基於模型:GPT2
- 訓練環境:英偉達16G顯卡
- bpe分詞:"vocab_size"=30000
訓練日誌
以下是訓練過程中的部分日誌信息:
[INFO|trainer.py:1608] 2022-12-02 19:52:59,024 >> ***** Running training *****
[INFO|trainer.py:1609] 2022-12-02 19:52:59,024 >> Num examples = 9443
[INFO|trainer.py:1610] 2022-12-02 19:52:59,024 >> Num Epochs = 108
[INFO|trainer.py:1611] 2022-12-02 19:52:59,024 >> Instantaneous batch size per device = 12
[INFO|trainer.py:1612] 2022-12-02 19:52:59,024 >> Total train batch size (w. parallel, distributed & accumulation) = 12
[INFO|trainer.py:1613] 2022-12-02 19:52:59,024 >> Gradient Accumulation steps = 1
[INFO|trainer.py:1614] 2022-12-02 19:52:59,024 >> Total optimization steps = 84996
[INFO|trainer.py:1616] 2022-12-02 19:52:59,025 >> Number of trainable parameters = 124439808
......
***** train metrics *****
epoch = 368.0
train_loss = 0.8725
train_runtime = 20:47:39.08
train_samples = 9443
train_samples_per_second = 46.421
train_steps_per_second = 3.869
***** eval metrics *****
epoch = 368.0
eval_accuracy = 0.196
eval_loss = 7.9524
eval_runtime = 0:00:07.87
eval_samples = 283
eval_samples_per_second = 35.94
eval_steps_per_second = 3.048
perplexity = 2842.2766
通過以上日誌可以瞭解模型在訓練過程中的各項指標變化,如損失值、學習率、訓練時間等。這些信息有助於評估模型的訓練效果和性能。