1. 程式人生 > 資訊 >魔改 GPT 自動寫網文:一秒十字不帶停,還能給太監作品無限續更

魔改 GPT 自動寫網文:一秒十字不帶停,還能給太監作品無限續更

如果一個人只看網文,那會寫出來怎樣的文字?看了 100G 網文後,這個 AI 模型幫你試了一下。

先來一段自由創作:

乍眼看去很有內味,而且基本是一秒十字甚至更快的生成速度,非常的 amazing。

那再放一段經典網文故事高潮前的內容,讓 AI 作家幫忙續一下?

呃…… 不是“三十年河東,三十年河西,莫欺少年窮”,沒內味兒啊!

這就是開發者親切地稱之為“人工智障寫作”,由 GPT 魔改而成的模型 AI-Writer:

一秒十字,無限續寫

這一模型擁有 100M 引數量,基於 100G 網路小說訓練,沒有采用任何其他素材。

因此,AI-Writer 相當於是一位“只看網路小說”的創作者,不具備任何網文以外的常識,行文風格自然也就比較小白。

但好在閱書無數,一句同樣的開頭:

就能生成風格迥異,走向不同的多個片段:

也可以自定義每次的生成字數,像上面就是每次生成 200 字。

理論上可以無限生成文字,但時間長了也會陷入“不斷重複某字或某片段”的迴圈之中。

生成文字速度受加速方式的影響,目前支援 N 卡、A 卡、I 卡、GPU 加速,可以選擇最適合自己裝置的方式:

像開頭展示的那段動圖,生成速度甚至不止一秒十字,就是通過 GPU 加速的效果。

如果你覺得 AI 寫的有點太過放飛自我,也可以設定生成文字的隨機程度。

要解釋這裡的文字生成隨機性,就要說到 AI-Writer 所採用的一種特殊的取樣方法:

對於段落開頭

將 Top-P 設定為 0.995,幾乎完全按照輸出的概率分佈取樣,增強行文變化

對於其他位置

先找到最高概率的字的概率 P,然後移除所有概率小於 0.02×P2 的字

這樣,模型生成的每一個字都是一個概率分佈,因此,上面的文字生成的隨機程度,也就是文字生成時忽略小概率字的程度。

可以對比一下該值分別為 0.01,0.1,0.9 時的生成效果:

當然,由於這是個只有 100M 引數的小模型,所以邏輯和閱讀理解能力是較低的。

用開發者的話來說,就是“它是個純智障,純屬娛樂”。

模型可直接試玩

不過,就算本著娛樂的目的,我們也來看看怎麼做才讓這個 AI 作者動筆。

在環境配置上,開發者表示,如果採用他通過 C+AVX2 寫的純 CPU 版本,就不需要 Python 和 Pytorch,只要是 2014 年以後的 CPU 都能成功執行。

(作者已將這一版本上傳至交流群)

而上述演示的動圖則是在 Python3.8 和 Pytorch1.10 的環境配置下的 Demo。

在環境配置完畢後,下載模型和 Release 檔案,在模型檔案中新建一個 model 資料夾,並將 release 檔案解壓放在 model 目錄下。

這時你就可以執行 python run.py,在終端快速生成文字:

(這裡可以先安裝一下 DeepLearning 環境)

文字可以一直自由生成下去,可以通過 Ctrl+C 來停止。

當然,由於這裡是在 2.3 GHz 雙核 Intel Core i5 的 Mac 本上跑的,所以並沒有達到 10 字/秒的生成速度。

也可以在網頁中進行試玩,執行 python server.py,並開啟下載模型 web-client 資料夾中的 index.html。

然後就可以開啟網頁,直接在對話方塊中輸入開頭,點選按鈕進行續寫了:

現在這個網頁版已經初具模型,開發者希望能有更多的人蔘與進來,一起將現階段的這個“人工智障”改進成對於創作者而言的實用工具,以及對於讀者而言的娛樂方式。

下載連結:

https://github.com/BlinkDL/AI-Writer/releases