Sanguoyanyi 6b
模型概述
該模型通過學習《三國演義》的寫作風格(包括慣用詞彙、句式結構、修辭手法等),能夠將通用文本改寫為具有該作品特色的文本
模型特點
古典文學風格遷移
能夠將現代文本轉換為《三國演義》特有的古典文學風格
風格要素保留
保留原作品中的慣用詞彙、句式結構和修辭手法等關鍵風格要素
高質量改寫
改寫後的文本保持語義連貫性,同時融入目標風格特色
模型能力
文本風格轉換
文學創作輔助
文本潤色
風格模仿
使用案例
文學創作
童話故事改寫
將西方童話故事改寫為《三國演義》風格
如示例中將《白雪公主》改寫為三國風格文本
現代小說風格轉換
將現代小說片段轉換為古典文學風格
教育應用
文學風格教學
幫助學生理解不同文學作品的風格特點
🚀 StyleLLM 文風大模型
StyleLLM 文風大模型 是基於大語言模型的文本風格遷移項目,能學習文學作品風格並移植到通用文本,實現文字修飾、潤色或風格模仿。
🚀 快速開始
安裝依賴
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("stylellm/SanGuoYanYi-6b")
model = AutoModelForCausalLM.from_pretrained("stylellm/SanGuoYanYi-6b").eval()
運行示例
messages = [{"role": "user", "content": "嚴冬時節,鵝毛一樣的大雪片在天空中到處飛舞著,有一個王后坐在王宮裡的一扇窗子邊,正在為她的女兒做針線活兒,寒風捲著雪片飄進了窗子,烏木窗臺上飄落了不少雪花。"}]
input_ids = tokenizer.apply_chat_template(conversation=messages, tokenize=True, add_generation_prompt=True, return_tensors='pt')
output_ids = model.generate(input_ids, do_sample=False, repetition_penalty=1.2)
response = tokenizer.decode(output_ids[0][input_ids.shape[1]:], skip_special_tokens=True)
print("Output:", response)
# Output: 時值隆冬,大雪壓境,王后坐於王宮之窗下,正與女作繡,寒風入室,吹落烏木窗臺之雪。
✨ 主要特性
- 風格學習:利用大語言模型學習指定文學作品的寫作風格,形成特定風格的模型。
- 風格遷移:將學習到的風格移植到其他通用文本上,實現文字的風格轉換。
📦 模型列表
stylellm-中國四大名著系列 包括基於 Yi-6b 微調的四個模型,分別採用《三國演義》、《西遊記》、《水滸傳》、《紅樓夢》四本中國古典長篇小說訓練而成:
風格 | 模型 | 使用方法 |
---|---|---|
三國演義風格 | 🤗 stylellm/SanGuoYanYi-6b | inference.py |
西遊記風格 | 🤗 stylellm/XiYouJi-6b | inference.py |
水滸傳風格 | 🤗 stylellm/ShuiHuZhuan-6b | inference.py |
紅樓夢風格 | 🤗 stylellm/HongLouMeng-6b | inference.py |
💻 使用示例
基礎用法
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("stylellm/SanGuoYanYi-6b")
model = AutoModelForCausalLM.from_pretrained("stylellm/SanGuoYanYi-6b").eval()
messages = [{"role": "user", "content": "嚴冬時節,鵝毛一樣的大雪片在天空中到處飛舞著,有一個王后坐在王宮裡的一扇窗子邊,正在為她的女兒做針線活兒,寒風捲著雪片飄進了窗子,烏木窗臺上飄落了不少雪花。"}]
input_ids = tokenizer.apply_chat_template(conversation=messages, tokenize=True, add_generation_prompt=True, return_tensors='pt')
output_ids = model.generate(input_ids, do_sample=False, repetition_penalty=1.2)
response = tokenizer.decode(output_ids[0][input_ids.shape[1]:], skip_special_tokens=True)
print("Output:", response)
# Output: 時值隆冬,大雪壓境,王后坐於王宮之窗下,正與女作繡,寒風入室,吹落烏木窗臺之雪。
📚 效果演示
以《白雪公主》原文作為輸入,不同風格模型的改寫結果如下:
原文 - 《白雪公主》 | 改寫-三國演義風格 | 改寫-西遊記風格 | 改寫-水滸傳風格 | 改寫-紅樓夢風格 |
---|---|---|---|---|
嚴冬時節,鵝毛一樣的大雪片在天空中到處飛舞著,有一個王后坐在王宮裡的一扇窗子邊,正在為她的女兒做針線活兒,寒風捲著雪片飄進了窗子,烏木窗臺上飄落了不少雪花。 | 時值隆冬,大雪壓境,王后坐於王宮之窗下,正與女作繡,寒風入室,吹落烏木窗臺之雪。 | 正是那:朔風吹凜凜,瑞雪靄紛紛;王后坐窗前,正教女作繡,只見那:寒風送雪入窗欞,烏木臺頭堆積雪。 | 此時正是隆冬之際,鵝毛般大雪亂飄,有一王后坐於王宮內一扇窗戶前,正縫其女衣,寒風捲雪入得窗來,把那烏木窗臺都壓壞了。 | 且說那嚴冬天氣,鵝毛大雪,紛紛揚揚,只見那王后坐於王宮之窗下,正教他女兒作針黹,忽見寒風捲雪,吹入窗內,烏木窗臺之上,積了半日之雪。 |
她抬頭向窗外望去,一不留神,針刺進了她的手指,紅紅的鮮血從針口流了出來,有三點血滴落在飄進窗子的雪花上。 | 其女仰視窗外,不料針落指中,遂出血於雪,有三點之痕。 | 只見那女子舉目望外觀看時,不期把個指頭兒紮了一針,又見出血,卻似三兩點血珠兒落於雪內。 | 那娘子仰面看時,只道是雪片落將下來,不提防把針兒捻在手裡,一時失手,正中指尖,便見出血來,有三兩點,都滴入窗裡去。 | 只見那丫頭往外瞧時,一時針扎手了,便出血了,有三四個血點兒,落在了雪裡。 |
她若有所思地凝視著點綴在白雪上的鮮紅血滴,又看了看烏木窗臺,說道:"但願我小女兒的皮膚長得白裡透紅,看起來就像這潔白的雪和鮮紅的血一樣,那麼豔麗,那麼驕嫩,頭髮長得就像這窗子的烏木一般又黑又亮!" | 其女乃凝眸望那點綴於白雪之下的鮮紅血滴,復觀烏木窗欞曰:“吾願吾小女肌膚如雪,容貌似此潔白之雪與鮮紅之血,嬌嫩之發,正如此窗欞之烏木也。” | 只見那般血跡,卻也殷紅;又見那般白雪,卻也瑩潔。她又望了望那烏木窗欞道:“但願吾女肌膚如雪,顏色似朱,髮髻如漆,方才好哩!” | 只見那女子把眼來望那白雪上點點鮮血,又看那烏木窗子道:"只願俺的小女兒皮肉也似這般白淨,便如這雪相似;鬚髮也似這般漆黑光鮮,便似這烏木般好!" | 一面看那白雪中點點血痕,一面又瞧那烏木窗欞,因嘆道:“只望我小女肌膚豐澤,如這雪白,血紅,發也似的烏木一般。” |
她的小女兒漸漸長大了,小姑娘長得水靈靈的,真是人見人愛,美麗動人。她的皮膚真的就像雪一樣的白嫩,又透著血一樣的紅潤,頭髮像烏木一樣的黑亮。所以王后給她取了個名字,叫白雪公主。 | 其女漸長,乃名曰:“白雪”,其色如雪,真美之極。膚若冰雪,發似烏木,故王后以白雪為號。 | 光陰似箭,不覺數載,那小女兒漸長成人,生得娉婷嬌豔,真個是:膚如凝脂,貌若桃李,發似漆黑,故此王后名曰白雪公主。 | 那小女兒漸長成,生得十分美貌,真個有傾國之色,嬌豔無倫。肌膚如玉,面似桃花,發若漆黑。因此王后便取名喚做"白雪公主"。 | 那丫頭漸長,生得嫋娜纖巧,乖覺伶俐,肌膚豐澤,容貌嬌美,且是雪肌花顏,唇若施脂,腰如束柳。故此,王后便命名曰:“白雪”。 |
但白雪公主還沒有長大,她的王后媽媽就死去了。不久,國王爸爸又娶了一個妻子。這個王后長得非常漂亮,但她很驕傲自負,嫉妒心極強,只要聽說有人比她漂亮,她都不能忍受。 | 卻說白雪公主年方幼小,其母王后乃亡矣。不數日,父王復納新婦,此婦美而驕妒,聞人言有勝己者,不能容也。 | 那白雪公主尚幼年,其母王后已亡矣。不多時,國王復納一妻,此女貌美而驕矜,妒忌之心甚重,聞得人言有勝於己者,即不能容也。 | 此時白雪公主尚幼小,其母王后便亡故了;不數日間,父王復納新婦為妻。此女美貌絕倫,性傲氣高,妒忌之心甚重,聞有勝己者,便不能容。 | 且說那白雪公主尚未長成,其母王后已亡故了。不幾日,國王復納一妻,此妃生得甚美,惟性傲慢,妒忌之心頗重,凡見人勝過己者,便不能容。 |
她有一塊魔鏡,她經常走到鏡子面前自我欣賞,並問道:"告訴我,鏡子,告訴我實話!這兒所有的女人誰最漂亮?告訴我她是誰?"鏡子回答道:"是你,王后!你就是這兒最漂亮的女人。"聽到這樣的話,她就會滿意地笑起來。 | 王后乃有魔鏡,常自照其面曰:“汝言我,鏡中實也!此間諸女何者最美?吾告汝其人。”鏡答曰:“汝也,王后也!汝乃此處之絕色。”聞之,遂喜。 | 她又有個魔鏡,常來照見,便問:“鏡子呀,你且說個明白!這眾女子中那一個最美?快教我認得他哩!”那鏡子即答曰:“娘娘乃天下第一美人也。”聞言,她就歡喜而笑。 | 那娘子有面魔鏡,常自照影,便問:"你且說與我,鏡中甚人最美貌?是何女子?"鏡答曰:"娘子乃此間第一美人也。"聽得這話,便歡喜。 | 她又有一個寶鏡,每日臨鏡自照,或問於鏡曰:“我何人哉?”那鏡便答道:“你乃天下第一美人兒!”如此一回,她就喜之不盡了。 |
但白雪公主慢慢地長大,並出落得越來越標緻漂亮了。到了七歲時,她長得比明媚的春光還要豔麗奪目,比王后更美麗動人。直到有一天,王后像往常一樣地去問那面魔鏡時,鏡子作出了這樣的回答:"王后,你是美麗漂亮的,但是白雪公主要比你更加漂亮!"她聽到了這話,心裡充滿了憤怒和妒忌,臉也變得蒼白起來。 | 然則白雪公主漸漸長成,其美乃勝於昔日,至七歲之時,其容貌又勝王后。一日,王后如常問鏡曰:“吾乃絕世之色,今白雪公主乃勝我矣!”聞言大怒,面亦變青。 | 光陰似箭,不覺又過了七年,白雪公主漸漸長成,卻生得如花似玉,比那嫵媚之春,勝似嬌娘;及至王后來照那面魔鏡,只見那鏡中答道:“王后啊,你雖美貌,怎比得上白雪公主?”她聞言大怒,頓覺愁容慘淡,顏色憔悴。 | 且說白雪公主漸漸長成,生得十分美貌,至七歲之時,勝似春光,賽過王后。一日,王后照舊去問那面魔鏡,鏡中答道:"王后,你雖是極妙絕倫,卻怎比得上白雪公主?"聽得此言,心中忿怒,面如紙色。 | 且說白雪公主漸漸長成,生得不俗,至七歲上,便勝似春光,又勝過王后。一日,王后來照魔鏡,鏡中答道:“王后啊!你雖美貌,豈及白雪公主?”聞此言,心內大怒,容顏亦變。 |
她叫來了一名僕人對他說:"給我把白雪公主抓到大森林裡去,我再也不希望看到她了。"僕人把白雪公主帶走了。在森林裡他正要動手殺死她時,她哭泣著哀求他不要殺害她。 | 其女喚一婢曰:“速將白雪公主擒至大林中,吾不復見之。”婢遂引白雪公主而去。行至林內,欲殺之,公主泣告勿殺。 | 遂喚一婢,教:“快與我拿白雪公主於大林中,再不許見也!”那婢即引白雪公主而去。及至林中,欲殺之,只見她哭告曰:“乞勿傷我性命。” | 那娘子喚得一個使女,分付道:"且將白雪公主捉到大林子裡去,休教見我。"便將白雪公主掣出林外,欲殺之,哭告勿行。 | 只見那丫頭便喚了一個使女來說道:“你且將白雪公主捉來,我那裡還見得?”那使女領命去了,至大林中欲殺之,哭訴不饒。 |
面對楚楚動人的可憐小公主的哀求,僕人的同情之心油然而生,他說道:"你是一個人見人愛的孩子,我不會殺害你。"這樣,他把她單獨留在了森林裡。 | 其僕憐楚楚之幼女,曰:“汝乃可愛之人,吾不殺汝。”遂將孤置於林中。 | 那小公主又哭得悽慘,那僕人心下甚憐,遂言曰:“汝乃好身兒,我豈殺汝?”遂將她獨自留在林中。 | 那可憐的小公主楚楚動人,哭得僕人心軟,便道:"汝乃天姿國色,吾豈忍殺?且將汝獨自林中寄放。" | 那小丫頭兒哭得可憐,又見僕人憐惜,便說道:“你是好人兒,我豈肯害你?”遂將她一人留在林中。 |
當僕人決定不再殺害白雪公主,而把她留在那兒時,儘管他知道在那荒無人際的大森林裡,她十有八九會被野獸撕成碎片,但想到他不必親手殺害她,他就覺得壓在心上的一塊沉重的大石頭落了下來。 | 其僕見不殺白雪公主,留於彼處,雖知大林之中,必被虎狼食盡,然念吾不用親刃之,心下遂寬了一塊重石。 | 只見那廝家奴不肯殺白雪公主,卻將她留此荒林之中,雖知必遭禽獸之嚼,然不須親下手也,遂寬心矣。 | 僕人自思:若要殺白雪公主,便在此處;又恐此間大林子裡,被禽獸啖食了,不如且留她在那裡,我亦無須親自下手。遂放了她去。 | 及至僕人主意已定,不欲加害於白雪公主,遂留之不去,雖知大林深處,必遭禽獸吞噬,然想自己無須親自動手,便如卸了千鈞重擔一般。 |
🔍查看全文 | 🔍查看全文 | 🔍查看全文 | 🔍查看全文 |
📄 致謝
本項目在模型訓練中藉助了下列開源項目,在此對相關項目人員表示誠摯感謝:
- 01-ai/Yi: 本項目模型底座
- hiyouga/LLaMA-Factory: 本項目訓練框架
📄 許可證
本項目採用 yi-license 許可證。
Phi 2 GGUF
其他
Phi-2是微軟開發的一個小型但強大的語言模型,具有27億參數,專注於高效推理和高質量文本生成。
大型語言模型 支持多種語言
P
TheBloke
41.5M
205
Roberta Large
MIT
基於掩碼語言建模目標預訓練的大型英語語言模型,採用改進的BERT訓練方法
大型語言模型 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT是BERT基礎模型的蒸餾版本,在保持相近性能的同時更輕量高效,適用於序列分類、標記分類等自然語言處理任務。
大型語言模型 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct 是一個多語言大語言模型,針對多語言對話用例進行了優化,在常見的行業基準測試中表現優異。
大型語言模型 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa是基於100種語言的2.5TB過濾CommonCrawl數據預訓練的多語言模型,採用掩碼語言建模目標進行訓練。
大型語言模型 支持多種語言
X
FacebookAI
9.6M
664
Roberta Base
MIT
基於Transformer架構的英語預訓練模型,通過掩碼語言建模目標在海量文本上訓練,支持文本特徵提取和下游任務微調
大型語言模型 英語
R
FacebookAI
9.3M
488
Opt 125m
其他
OPT是由Meta AI發佈的開放預訓練Transformer語言模型套件,參數量從1.25億到1750億,旨在對標GPT-3系列性能,同時促進大規模語言模型的開放研究。
大型語言模型 英語
O
facebook
6.3M
198
1
基於transformers庫的預訓練模型,適用於多種NLP任務
大型語言模型
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1是Meta推出的多語言大語言模型系列,包含8B、70B和405B參數規模,支持8種語言和代碼生成,優化了多語言對話場景。
大型語言模型
Transformers 支持多種語言

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5基礎版是由Google開發的文本到文本轉換Transformer模型,參數規模2.2億,支持多語言NLP任務。
大型語言模型 支持多種語言
T
google-t5
5.4M
702
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98