Mindllm 1b3 Chat Zh V2.0
模型概述
模型特點
模型能力
使用案例
🚀 MindLLM模型卡片
MindLLM是由北京海量語言信息處理與雲計算應用工程技術研究中心和北京理工大學東南信息技術研究院聯合研發的一款預訓練大語言模型。它支持中英雙語,在常識、語言理解和邏輯推理等基準測試中表現出色,能為研究社區提供一個無限制的小模型,用於探索重要的安全挑戰和適應特定領域的應用。
🚀 快速開始
由於該模型已在特定聊天格式的指令數據上進行了監督訓練,你可以直接使用文本生成管道來使用此模型。以下示例每次運行時都會生成不同的序列:
from transformers import AutoTokenizer, AutoModelForCausalLM, TextGenerationPipeline
tokenizer = AutoTokenizer.from_pretrained('mindllm_path')
tokenizer.max_length = 1024
model = AutoModelForCausalLM.from_pretrained('mindllm_path').to(device)
generator = TextGenerationPipeline(model=model, tokenizer=tokenizer, device=device)
context = "<user>\n你知道電動車相對傳統汽油車有哪些優點嗎?\n<assistant>\n"
outputs = generator(context, max_new_tokens=1024, do_sample=True, num_beams=4, repetition_penalty=0.5, no_repeat_ngram_size=5, return_full_text=False)
[{'generated_text': '電動車相對傳統汽油車的優點包括:\n1. 更低的排放和更高的能源效率 - 電動車所產生的有害排放物質遠少於汽油車,並且它們的能源利用效率更高。\n2. 更低的維護成本 - 電動車需要更少的保養和通常擁有較少的運動部件,從而降低了總體維護成本。\n3. 更低的燃料成本 - 電動車需要比汽油車少得多的燃料,因此隨著時間的推移,可以節省成本。\n4. 更長的續航里程 - 電動車單次充電可以行駛比汽油車更遠的距離,非常適合長途通勤。\n5. 更為安靜的運行 - 電動車比汽油車要安靜得多,使駕駛更加愉悅。'}]
✨ 主要特性
- 雙語支持:支持中文和英文兩種語言。
- 性能出色:在常識、語言理解和邏輯推理等基準測試中表現出色,甚至超越了參數少於130億的模型。
- 可對話:經過特殊聊天格式的指令數據監督訓練,能夠進行多輪對話。
📚 詳細文檔
模型詳情
模型描述
MindLLM 13億參數的Transformer模型,由北京海量語言信息處理與雲計算應用工程技術研究中心和北京理工大學東南信息技術研究院聯合研發。
它使用了包括Pile、悟道、CBook等雙語數據源以及其他通過網頁爬取精心收集的數據進行訓練。在常識、語言理解和邏輯推理等基準測試中,MindLLM表現出色,甚至超越了參數少於130億的模型。
該模型在聊天格式的指令數據集上進行了微調,但尚未通過基於人類反饋的強化學習進行微調。開發這個開源模型的目的是為研究社區提供一個無限制的小模型,用於探索重要的安全挑戰和適應特定領域的應用。
- 開發者:北京海量語言信息處理與雲計算應用工程技術研究中心 & 北京理工大學東南信息技術研究院
- 模型類型:預訓練因果語言模型
- 語言:中文和英文
- 許可證:Apache-2.0
- 從頭開始訓練
模型來源
- 論文:https://arxiv.org/abs/2310.15777
如需引用此模型,請使用以下 BibTeX 格式:
@article{mindllm,
title={MindLLM: Pre-training Lightweight Large Language Model from Scratch, Evaluations and Domain Applications},
author={Yang, Yizhe and Sun, Huashan and Li, Jiawei and Liu, Runheng and Li, Yinghao and Liu, Yuhang and Huang, Heyan and Gao, Yang},
journal={arXiv preprint arXiv:2310.15777},
year={2023}
}
使用方式
直接使用
由於該模型已在特定聊天格式的指令數據上進行了監督訓練,你可以直接使用文本生成管道來使用此模型。以下示例每次運行時都會生成不同的序列:
from transformers import AutoTokenizer, AutoModelForCausalLM, TextGenerationPipeline
tokenizer = AutoTokenizer.from_pretrained('mindllm_path')
tokenizer.max_length = 1024
model = AutoModelForCausalLM.from_pretrained('mindllm_path').to(device)
generator = TextGenerationPipeline(model=model, tokenizer=tokenizer, device=device)
context = "<user>\n你知道電動車相對傳統汽油車有哪些優點嗎?\n<assistant>\n"
outputs = generator(context, max_new_tokens=1024, do_sample=True, num_beams=4, repetition_penalty=0.5, no_repeat_ngram_size=5, return_full_text=False)
[{'generated_text': '電動車相對傳統汽油車的優點包括:\n1. 更低的排放和更高的能源效率 - 電動車所產生的有害排放物質遠少於汽油車,並且它們的能源利用效率更高。\n2. 更低的維護成本 - 電動車需要更少的保養和通常擁有較少的運動部件,從而降低了總體維護成本。\n3. 更低的燃料成本 - 電動車需要比汽油車少得多的燃料,因此隨著時間的推移,可以節省成本。\n4. 更長的續航里程 - 電動車單次充電可以行駛比汽油車更遠的距離,非常適合長途通勤。\n5. 更為安靜的運行 - 電動車比汽油車要安靜得多,使駕駛更加愉悅。'}]
聊天模板
為了使聊天版本獲得預期的功能和性能,需要遵循特定的格式,包括 <user>
和 <assistant>
標籤、BOS 和 EOS 標記,以及它們之間的空格和換行符(建議對輸入調用 strip()
方法以避免出現雙空格)。以下是一些示例:
- 單輪對話
# 提示
<|endoftext|><user>\n你知道電動車相對傳統汽油車有哪些優點嗎?\n<assistant>\n
# 返回
電動車相對傳統汽油車的優點包括:\n1. 更低的排放和更高的能源效率 - 電動車所產生的有害排放物質遠少於汽油車,並且它們的能源利用效率更高。\n2. 更低的維護成本 - 電動車需要更少的保養和通常擁有較少的運動部件,從而降低了總體維護成本。\n3. 更低的燃料成本 - 電動車需要比汽油車少得多的燃料,因此隨著時間的推移,可以節省成本。\n4. 更長的續航里程 - 電動車單次充電可以行駛比汽油車更遠的距離,非常適合長途通勤。\n5. 更為安靜的運行 - 電動車比汽油車要安靜得多,使駕駛更加愉悅。
- 多輪對話
# 提示
<|endoftext|><user>\n你好,請問你叫什麼名字?\n<assistant>\n嗨,我是一個AI助手。<|endoftext|>\n<|endoftext|><user>\n請問你如何看待AI助手?\n<assistant>\n
# 返回
我認為AI助手是一個非常有前途的技術,它可以在多個領域幫助人們解決問題和完成任務。但是同時,我也認為在使用AI助手時要注意保護用戶隱私和安全。
其他示例
自我認知
user:你好,請問你叫什麼名字?
assistant:你好,我是 MindLLM,一個人工智能助手。
user:請問你如何看待AI助手?
assistant:我認為,AI助手是一種可以幫助人類完成各種任務的工具。它可以處理大量數據,並提供有用的信息給用戶。然而,我們也需要保持警惕,確保其不會被濫用或誤用。
user:你能介紹一下AI助手優點和缺點嗎?
assistant:當然可以。AI助手的優點之一是提高了日常生活中的便利性。例如,我們可以使用語音助手來控制家庭設備、查詢天氣、安排日程等。此外,AI助手還可以自動化流程,減少人力和時間成本。
缺點也是人們需要思考的問題。一方面,AI助手使用算法和數據分析來提供更準確的結果;另一方面,有些人擔心AI助手會取代人類工作,甚至可能取代人類職業。此外,AI助手也可能存在信息洩露和濫用的風險。
user:你覺得AI助手對人類存在的威脅或者問題是什麼?
assistant:我認為,AI助手在某些場景下可能會導致一些問題,比如個人隱私洩露、工作崗位的流失、機器人成為主宰人類的物種,這些都需要我們認真思考和妥善解決。我們需要確保AI助手是安全可靠的,避免受到濫用和誤用。
user:你可以具體舉例說明一下嗎?
assistant:比如說,一個公司可能需要大量數據來訓練AI助手,但由於數據隱私洩露的問題,這些數據可能被濫用或洩露,導致用戶數據被不當使用或洩露。另一個例子是,AI助手可能被用於武器開發,但由於缺乏監管,使用引起的倫理問題也需要關注。
user:你可以具體說一說,人類應該如何關注和管理AI助手帶來的安全和隱私問題嗎?
assistant:在關注安全和隱私問題上,我們需要採取一些措施。首先,我們需要強化AI助手的開發和使用,確保它們只被授權的開發者開發和使用。其次,我們需要建立更好的隱私保護機制,包括使用數據加密、授權訪問和差分隱私等技術手段。最後,我們需要在AI系統中保護用戶的隱私,確保他們的個人信息不被濫用或洩露。
user:好的,謝謝你!
assistant:不客氣,我隨時將繼續為您提供幫助和支持。
閒聊
user:你好
assistant:您好,有什麼需要我幫忙的嗎?
user:請問有哪些方法可以緩解焦慮情緒?
assistant:有的話,可以通過運動、音樂、冥想等方式來放鬆身心,還有一些藥物也可以緩解焦慮。您可以按照我提供的建議來選擇適合自己的方式,緩解焦慮情緒。
user:你可以詳細下嗎?
assistant:當我們感到焦慮時,大腦會產生一種內分泌系統的反應,這種反應會導致我們感到緊張、不安和無法集中注意力。這個時候可以嘗試一些讓自己放鬆的方法,比如深呼吸、瑜伽、冥想等。這些方法可以幫助我們緩解焦慮情緒,讓我們感覺更好。
user:請詳細介紹下冥想的方法。
assistant:冥想是一種可以幫助我們集中注意力,讓心情平靜、內心充實的活動。在冥想中,我們可以選擇一個特定的地點,舒展身體、調整氣息,讓自己放鬆、專注和冥思。在冥想中,我們通常會採用舒緩的音樂,讓自己的思維和情緒自由流動,緩解焦慮情緒。
user:有什麼音樂可以推薦給我嗎?緩解我的焦慮情緒。
assistant:常聽舒緩的音樂,比如鋼琴曲、古典音樂、流行音樂等,可以緩解焦慮情緒,促進身心放鬆。比如,您可以試試聽聽輕柔的鋼琴曲,或者是輕聲的流行歌曲,這些都可以緩解焦慮情緒。此外,您也可以通過聽冥想音樂,它可以幫助您放鬆身心、減輕壓力,帶來更好的效果。
user:謝謝。
assistant:不客氣,有需要再找我哦。
編程
user:找到下列數組的中位數[3.1,6.2,1.3,8.4,10.5,11.6,2.1],請用python代碼完成以上功能
assistant:對數組進行排序,然後取中間的數作為中位數,最後把這個數輸出即可完成所需的操作。
代碼實現:
```python
def median(numbers):
sorted_numbers = sorted(numbers)
length = len(numbers)
mid_index = length // 2
if length % 2 == 0:
return (sorted_numbers[mid_index - 1] + sorted_numbers[mid_index]) / 2
else:
return sorted_numbers[mid_index]
代碼解釋: 首先,定義了一個名為 median 的函數,它接受一個數字列表作為參數。函數使用內置函數 sorted,對數字列表進行排序,然後使用 len 函數計算所有數字的長度,並判斷長度是奇數還是偶數,如果是,則返回相應的中位數。如果長度為奇數,則返回中位數。否則,將數組分成兩半,找到中間的數,然後返回它。
</details>
#### 部署資源消耗
<details>
<summary>點擊展開</summary>
| 精度 | 最小GPU內存(推理) | 最小GPU內存(全參數微調) |
| ---- | ---- | ---- |
| float32 | 6.08G | 32.65G |
| float16(未量化) | 3.45G | -(36.94G*) |
| bfloat16(未量化) | 3.45G | 20.47G(33.93G*) |
* \* 表示使用混合精度
</details>
### 訓練詳情
#### 訓練數據
該模型的訓練語料庫是英語和中文語言數據源的多樣化混合。英語部分來自Pile數據集,中文部分包括來自悟道、CBook的數據以及通過網頁爬取精心收集的數據。
為了確保數據質量,執行了一個全面的預處理流程,包括通過嚴格的數據清理清除特殊標籤、使用局部敏感哈希(LSH)進行數據去重,以及全面過濾以消除主要來自廣告或不適當內容的低質量內容。還研究了數據量與模型容量之間的關係,評估了不同數據類型對模型擬合效果的影響,並評估了處理混合數據源時模型訓練的穩定性。此分析為預訓練數據的重要作用和處理它的複雜性提供了有價值的見解。還根據數據工程和經驗應用了一些混合技巧來構建訓練數據。
#### 訓練過程
此版本的模型採用兩階段訓練策略,在約2410億個英語標記和820億個中文標記上進行訓練。它作為自迴歸語言模型進行訓練,使用交叉熵損失。
此版本的模型還在從開源指令調優數據集中收集的400萬個中文指令樣本上進行了微調。指令調優階段使模型能夠用中文回答問題並進行多輪對話。
**如需更詳細的信息,請參考論文。**
## 📄 許可證
本模型使用 Apache-2.0 許可證。



