Jiuzhou Base
九州是一個面向地球科學領域的開源基礎語言模型,通過大規模地學語料繼續預訓練構建,具備豐富的地學知識和指令跟隨能力。
下載量 23
發布時間 : 3/31/2024
模型概述
九州模型以Mistral-7B-v0.1為基座,通過領域大語言模型預訓練框架(PreparedLLM)與'兩階段預適應預訓練'算法構建,專注於地球科學領域的知識理解和問題解決。
模型特點
地學知識豐富
通過340萬地學相關文檔的預訓練,模型具備豐富的地球科學專業知識
兩階段預適應預訓練
採用TSPT算法提升有限地學數據使用效率,克服大模型繼續預訓練的技術瓶頸
指令跟隨能力
通過高質量指令數據微調,模型能夠準確理解並執行用戶指令
模型能力
地球科學知識問答
專業術語解釋
多輪對話
科學數據分析
研究報告生成
使用案例
科研教育
地學知識問答
回答地球科學領域的專業問題
在GeoBench基準測試中超越GPT-3.5
學術輔助
幫助研究人員理解和分析地學文獻
環境監測
氣候變化分析
解讀氣候數據並提供分析報告
🚀 九州:面向地球科學的開源基礎語言模型
本項目聚焦地球科學領域,利用基礎語言模型從海量數據中提取與整合知識,以應對全球變化挑戰、推動可持續發展和加速科學發現。通過持續預訓練和指令微調,構建了高精度、實用性強的地球科學基礎語言模型——九州。
🚀 快速開始
推理示例
以下是使用 JiuZhou-Instruct-v0.2
進行推理的代碼示例:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
device = torch.device("cuda:0") if torch.cuda.is_available() else torch.device("cpu")
model_path = "itpossible/JiuZhou-Instruct-v0.2"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.bfloat16, device_map=device)
text = "What is geoscience?"
messages = [{"role": "user", "content": text}]
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt").to(device)
outputs_id = model.generate(inputs, max_new_tokens=600, do_sample=True)
outputs = tokenizer.batch_decode(outputs_id, skip_special_tokens=True)[0]
print(outputs)
✨ 主要特性
- 專業知識豐富:基於大規模地球科學語料庫持續預訓練,模型具備豐富的地球科學專業知識。
- 性能卓越:在地球科學任務和通用任務的評估中,均展現出出色的性能,超越了多個基線模型。
- 框架先進:採用了特定領域大語言模型預訓練框架(PreparedLLM)和“兩階段預適應預訓練”算法,提升了模型的訓練效率和性能。
📦 安裝指南
項目部署
git clone https://github.com/THU-ESIS/JiuZhou.git
cd JiuZhou
pip install -e ".[torch,metrics]"
模型訓練
預訓練
llamafactory-cli train examples/train_lora/JiuZhou_pretrain_sft.yaml
指令微調
llamafactory-cli train examples/train_lora/JiuZhou_lora_sft.yaml
與微調後的模型交互
llamafactory-cli chat examples/inference/JiuZhou_lora_sft.yaml
合併指令微調後的 LoRA 權重與原始模型權重
llamafactory-cli export examples/merge_lora/JiuZhou_lora_sft.yaml
💻 使用示例
基礎用法
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
device = torch.device("cuda:0") if torch.cuda.is_available() else torch.device("cpu")
model_path = "itpossible/JiuZhou-Instruct-v0.2"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.bfloat16, device_map=device)
text = "What is geoscience?"
messages = [{"role": "user", "content": text}]
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt").to(device)
outputs_id = model.generate(inputs, max_new_tokens=600, do_sample=True)
outputs = tokenizer.batch_decode(outputs_id, skip_special_tokens=True)[0]
print(outputs)
📚 詳細文檔
模型下載
模型系列 | 模型 | 下載鏈接 | 描述 |
---|---|---|---|
九州 | JiuZhou-base | Huggingface | 基礎模型(富含地球科學知識) |
九州 | JiuZhou-Instruct-v0.1 | Huggingface | 指令模型(指令對齊導致部分地球科學知識丟失,但具備指令跟隨能力) 在中英雙語的 Alpaca_GPT4 和 GeoSignal 上進行 LoRA 微調 |
九州 | JiuZhou-Instruct-v0.2 | HuggingFace Wisemodel |
指令模型(指令對齊導致部分地球科學知識丟失,但具備指令跟隨能力) 使用高質量通用指令數據進行微調 |
ClimateChat | ClimateChat | HuggingFace Wisemodel |
指令模型 在 JiuZhou-base 上進行指令跟隨微調 |
Chinese-Mistral | Chinese-Mistral-7B | HuggingFace Wisemodel ModelScope |
基礎模型 |
Chinese-Mistral | Chinese-Mistral-7B-Instruct-v0.1 | HuggingFace Wisemodel ModelScope |
指令模型 在中英雙語的 Alpaca_GPT4 上進行 LoRA 微調 |
Chinese-Mistral | Chinese-Mistral-7B-Instruct-v0.2 | HuggingFace Wisemodel |
指令模型 使用百萬條高質量指令進行 LoRA 微調 |
PreparedLLM | Prepared-Llama | Huggingface Wisemodel |
基礎模型 使用少量地球科學數據進行持續預訓練 建議使用九州模型 |
模型性能
地球科學能力
使用 GeoBench 基準測試評估九州模型的性能。在客觀任務中,九州模型的表現優於 GPT-3.5:
在主觀任務的六項標準中,九州模型的得分也高於基線模型:
通用能力
使用 C-Eval、CMMLU 和 MMLU 三個基準數據集評估九州模型的性能。與 Llama 和 Mistral 模型的其他變體相比,九州模型表現出色:
模型訓練過程
訓練語料庫
語料庫由 5000 萬篇通用文檔和 340 萬篇地球科學相關文檔組成。
訓練框架
使用本研究提出的九州框架。
兩階段預適應預訓練(TSPT)
TSPT 提高了有限地球科學數據的使用效率,克服了大語言模型持續預訓練中的一些技術瓶頸。 TSPT 與單階段訓練算法的區別:
TSPT 與單階段預訓練算法性能對比:
🔧 技術細節
本研究以 Mistral-7B-v0.1 為基礎模型,在大規模地球科學語料庫上繼續預訓練。同時,引入了 特定領域大語言模型預訓練框架(PreparedLLM) 和“兩階段預適應預訓練”算法,構建了地球科學大語言模型——九州。
📄 許可證
文檔中未提及相關許可證信息。
📚 引用
@article{chen2024preparedllm,
author = {Chen, Zhou and Lin, Ming and Wang, Zimeng and Zang, Mingrun and Bai, Yuqi},
title = {PreparedLLM: Effective Pre-pretraining Framework for Domain-specific Large Language Models},
year = {2024},
journal = {Big Earth Data},
pages = {1--24},
doi = {10.1080/20964471.2024.2396159},
url = {https://doi.org/10.1080/20964471.2024.2396159}
}
🙏 致謝
🎉 最新消息
- [2024-12-31] 論文 JiuZhou: Open Foundation Language Models and Effective Pre-training Framework for Geoscience 已被 International Journal of Digital Earth 接收發表。代碼與數據。
- [2024-10-11] 微信文章:PreparedLLM: Effective Pre-pretraining Framework for Domain-specific Large Language Models。
- [2024-09-06] 發佈 ClimateChat 指令模型。
- [2024-08-31] 論文 PreparedLLM: Effective Pre-pretraining Framework for Domain-specific Large Language Models 已被 Big Earth Data 期刊接收發表。
- [2024-08-31] 發佈 Chinese-Mistral-7B-Instruct-v0.2 指令模型。在語言理解和多輪對話能力方面有顯著提升。
- [2024-06-30] 發佈 JiuZhou-Instruct-v0.2 指令模型。在語言理解和多輪對話能力方面有顯著提升。
- [2024-05-15] 微信文章:Chinese Vocabulary Expansion Incremental Pretraining for Large Language Models: Chinese-Mistral Released。
- [2024-04-04] 發佈 Chinese-Mistral-7B-Instruct-v0.1 指令模型。
- [2024-03-31] 發佈 Chinese-Mistral-7B-v0.1 基礎模型。
- [2024-03-15] 發佈基礎版本 JiuZhou-base、指令版本 JiuZhou-instruct-v0.1 和 中間檢查點。
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