小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

開源開放 | 開源知識(shí)圖譜抽取工具發(fā)布大模型版DeepKE-LLM

 黃爸爸好 2023-06-21 發(fā)布于上海

圖片

MLNLP社區(qū)是國(guó)內(nèi)外知名的機(jī)器學(xué)習(xí)與自然語言處理社區(qū),受眾覆蓋國(guó)內(nèi)外NLP碩博生、高校老師以及企業(yè)研究人員。
社區(qū)的愿景是促進(jìn)國(guó)內(nèi)外自然語言處理,機(jī)器學(xué)習(xí)學(xué)術(shù)界、產(chǎn)業(yè)界和廣大愛好者之間的交流和進(jìn)步,特別是初學(xué)者同學(xué)們的進(jìn)步。
轉(zhuǎn)載自 | 開放知識(shí)圖譜
作者 | 張寧豫

DeepKE-LLM鏈接:

https://github.com/zjunlp/DeepKE/tree/main/example/llm

OpenKG地址:

http:///tool/deepke

Gitee地址:

https:///openkg/deepke/tree/main/example/llm

開放許可協(xié)議:Apache-2.0 license

貢獻(xiàn)者:浙江大學(xué)(張寧豫、張錦添、王瀟寒、桂鴻浩、姜一諾、陳華鈞)

1、背景

DeepKE是一個(gè)開源可擴(kuò)展的知識(shí)圖譜抽取工具,可實(shí)現(xiàn)命名實(shí)體識(shí)別、關(guān)系抽取和屬性抽取等抽取任務(wù),并支持低資源少樣本、文檔篇章和多模態(tài)等復(fù)雜場(chǎng)景。在大模型時(shí)代,我們對(duì)DeepKE進(jìn)行了全面升級(jí)并發(fā)布大模型版DeepKE-LLM(智析抽取大模型)。該版本基于大模型對(duì)數(shù)據(jù)進(jìn)行智能解析以實(shí)現(xiàn)知識(shí)抽取,支持多種大模型、遵循指令和自定義知識(shí)類型、格式。

圖片

2、支持多種大模型

DeepKE-LLM目前支持多個(gè)大模型如Llama系列模型(Alpaca、Linly等)、ChatGLM等(MOSS、CPM-Bee、Falcon開發(fā)測(cè)試中將于近期支持),并通過自研的EasyInstruct支持調(diào)用OpenAI和Claude的系列模型,還進(jìn)行了多實(shí)例并發(fā)請(qǐng)求(BatchPrompt)優(yōu)化。此外,DeepKE-LLM提供了豐富的提示(Prompt)形式,含文本指令、代碼提示(Code Prompt)等,以滿足不同場(chǎng)景下知識(shí)抽取的需求。

DeepKE-LLM還提供了一個(gè)抽取大模型—智析。特別地,把LLaMA-13B與ZhiXi-13B-Diff合并需要約100GB的內(nèi)存,顯存沒有要求(由于大模型合并策略導(dǎo)致的內(nèi)存開銷;為了方便使用,我們提供了fp16權(quán)重并將在未來優(yōu)化合并方式);在模型推理階段如果基于GPU使用ZhiXi-13B需要約26GB顯存。我們將在KnowLM(https://github.com/zjunlp/KnowLM)項(xiàng)目中提供完整的大模型預(yù)訓(xùn)練、微調(diào)框架及多種大模型選擇。

2.1 上手DeepKE-LLM

首先執(zhí)行以下腳本安裝python依賴包。

>> conda create -n deepke-llm python=3.9
>> conda activate deepke-llm
>> cd example/llm
>> pip install -r requirements.txt

大模型時(shí)代, DeepKE-LLM采用全新的環(huán)境依賴

注意??!是example/llm文件夾下的requirements.txt。

使用方式一:按照KnowLM項(xiàng)目指引完成環(huán)境配置、模型權(quán)重獲取與恢復(fù)后執(zhí)行以下腳本測(cè)試抽取效果:

>> python examples/generate_lora.py --load_8bit --base_model ./zhixi --lora_weights ./lora --run_ie_cases

使用方式二:按照DeepKE-LLM項(xiàng)目指引完成環(huán)境配置、模型權(quán)重獲取與恢復(fù)后執(zhí)行:

>> CUDA_VISIBLE_DEVICES='0' python inference_llama.py \
   --base_model '智析大模型相對(duì)路徑' \
   --lora_weights '析大模型Lora權(quán)重相對(duì)路徑' \
   --input_file '輸入文件相對(duì)路徑' \
   --output_file '輸出文件相對(duì)路徑' \
   --load_8bit \

下圖對(duì)比了通過DeepKE-LLM使用智析大模型和ChatGPT的中英雙語知識(shí)抽取效果??梢园l(fā)現(xiàn)其取得了較為準(zhǔn)確和完備的抽取效果。此外,我們也發(fā)現(xiàn)智析仍會(huì)出現(xiàn)一些抽取錯(cuò)誤,我們會(huì)在未來繼續(xù)增強(qiáng)底座模型的中英文語義理解能力并引入更多高質(zhì)量的指令數(shù)據(jù)以提升模型性能。

圖片

2.2 上手大模型微調(diào)

DeepKE-LLM還支持多種大模型如Llama系列、ChatGLM等的微調(diào)。依照文檔的說明,下載完畢數(shù)據(jù)和模型后,可通過下列腳本即可完成抽取大模型的指令微調(diào)訓(xùn)練(基于Llama-7B的Lora微調(diào)),我們還提供了多機(jī)多卡訓(xùn)練腳本供用戶使用。

>> CUDA_VISIBLE_DEVICES='0' python finetune_llama.py \
   --base_model '大模型相對(duì)路徑' \
   --train_path '訓(xùn)練數(shù)據(jù)相對(duì)路徑' \
   --output_dir '輸出模型相對(duì)路徑' \
   --batch_size 128 \
   --micro_train_batch_size 4 \
   --num_epochs 3 \
   --learning_rate 1e-4 \
   --cutoff_len 512 \
   --val_set_size 1000 \
   --lora_r 8 \
   --lora_alpha 16 \
   --lora_dropout 0.05 \
   --lora_target_modules '[q_proj,v_proj]' \
   --train_on_inputs \
   --group_by_length \

2.3 使用 GPT、Anthropic系列模型

通過pip install easyinstruct安裝EasyInstruct包,根據(jù)LLMICL中文檔配置好數(shù)據(jù)集和API Key等參數(shù)后,直接運(yùn)行python run.py文件即可。

其他模型的使用煩請(qǐng)查閱DeepKE-LLM的README文檔。

3、抽取大模型訓(xùn)練

智析大模型基于LLaMA(13B)進(jìn)行了全量預(yù)訓(xùn)練,并基于知識(shí)圖譜轉(zhuǎn)換指令(KG2Instructions,如下圖)技術(shù)產(chǎn)生的大量指令數(shù)據(jù)來提高語言模型對(duì)于人類抽取指令的理解。

圖片

為了在保留原來的代碼能力和英語能力的前提下,來提升模型對(duì)于中文的理解能力,我們并沒有對(duì)詞表進(jìn)行擴(kuò)增,而是搜集了中文語料、英文語料和代碼語料。其中中文語料來自于百度百科、悟道和中文維基百科;英文語料是從LLaMA原始的英文語料中進(jìn)行采樣,同時(shí)擴(kuò)充了英文維基數(shù)據(jù)(原始論文中的英文維基數(shù)據(jù)的最新時(shí)間點(diǎn)是2022年8月,我們額外爬取了2022年9月到2023年2月,共六個(gè)月的數(shù)據(jù))。對(duì)上面爬取到的數(shù)據(jù)集,我們使用了啟發(fā)式的方法,剔除了數(shù)據(jù)集中有害的內(nèi)容和重復(fù)的數(shù)據(jù)。最后我們使用5500K條中文樣本、1500K條英文樣本、900K條代碼樣本基于transformers的trainer搭配Deepspeed ZeRO3進(jìn)行預(yù)訓(xùn)練。

接著,我們構(gòu)建了針對(duì)抽取加強(qiáng)的指令微調(diào)數(shù)據(jù)集以提升模型的知識(shí)抽取能力,主要采取的是基于知識(shí)圖譜轉(zhuǎn)換指令(KG2Instructions)技術(shù)。我們基于維基百科和WikiData知識(shí)圖譜,通過遠(yuǎn)程監(jiān)督、Schema約束過濾等方法構(gòu)建大量的指令數(shù)據(jù),并通過隨機(jī)采樣人工指令模板的方式提升指令的泛化性。此外,我們還使用大量開源中英文學(xué)術(shù)抽取數(shù)據(jù)集構(gòu)建指令微調(diào)數(shù)據(jù)集。

除了知識(shí)抽取能力之外,智析大模型也繼承了基座模型的通用指令遵循能力如翻譯、理解、代碼、創(chuàng)作和推理等能力,詳情煩請(qǐng)查閱KnowLM(https://github.com/zjunlp/KnowLM)的文檔。

4、小結(jié)和展望

新版本的DeepKE-LLM支持使用多個(gè)大模型并提供了基于指令遵循的抽取能力。歡迎各位小伙伴提出意見建議(Issue)和支持(PR)。在今后我們還將繼續(xù)開發(fā)和增強(qiáng)抽取大模型,支持更多的功能如大模型定制化知識(shí)增強(qiáng)和編輯、大小模型及多智能體(LLMs)協(xié)同、具身交互場(chǎng)景知識(shí)獲取與協(xié)作等。

致謝:感謝多年來對(duì)DeepKE項(xiàng)目提供支持的同學(xué)(部分同學(xué)已畢業(yè))、老師和朋友(排名不分先后):余海陽、陶聯(lián)寬、徐欣、喬碩斐、毛盛宇、黎洲波、李磊、歐翌昕、王鵬、習(xí)澤坤、方潤(rùn)楠、陳想、畢禎、陳靜、梁孝轉(zhuǎn)、李欣榮、黃睿、翁曉龍、徐子文、張文、鄭國(guó)軸、張珍茹、譚傳奇、陳強(qiáng)、熊飛宇、黃非等。

OpenKG

OpenKG(中文開放知識(shí)圖譜)旨在推動(dòng)以中文為核心的知識(shí)圖譜數(shù)據(jù)的開放、互聯(lián)及眾包,并促進(jìn)知識(shí)圖譜算法、工具及平臺(tái)的開源開放。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章