模型概述
模型特點
模型能力
使用案例
🚀 PLLuM:波蘭大型語言模型家族
PLLuM 是一系列專注于波蘭語及其他斯拉夫/波羅的海語言的大型語言模型(LLM),同時融入了英語數據以實現更廣泛的泛化能力。該模型由多個數據提供商廣泛合作開發,基於高質量文本語料庫構建,並通過指令微調、偏好學習和先進的對齊技術進行優化。這些模型旨在生成上下文連貫的文本,為各種任務(如問答、摘要)提供幫助,併為特定領域的智能助手等專業應用奠定基礎。
🚀 快速開始
每個 PLLuM 模型都可以通過 Hugging Face Transformers 庫(或兼容框架)加載。對於基於 RAG 的場景,需要將模型與相關的向量存儲或文檔檢索系統配合使用。以下是一些推薦步驟和代碼示例:
1. 安裝
確保你安裝了最新版本的 transformers
和 torch
(或其他兼容的深度學習框架):
pip install transformers accelerate torch
2. 加載模型
使用以下示例加載其中一個 PLLuM 模型:
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "CYFRAGOVPL/PLLuM-12B-chat" # 替換為你選擇的 PLLuM 模型名稱
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
3. 使用 bfloat16(BF16)
如果你的硬件(如較新的 GPU)支持 bfloat16,你可以減少內存使用並可能加快推理速度:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "CYFRAGOVPL/PLLuM-12B-chat"
tokenizer = AutoTokenizer.from_pretrained(model_name)
# 以 bfloat16 精度加載模型
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.bfloat16,
device_map="auto" # 自動將模型層放置在可用設備上
)
4. 生成示例文本
prompt = "Napisz krótki wiersz o wiośnie." # 英文:"Write a short poem about spring."
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=50,
do_sample=True,
top_k=50,
top_p=0.9,
temperature=0.7
)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)
5. 預期輸出
以下是上述提示的示例(假設)輸出:
Przykładowy wiersz o tematyce wiosennej:
Wiosna, wiosna, wiosna, ach to ty!
Kwiecień plecień wciąż przeplata,
trochę zimy, trochę lata.
A ja nie mogę się już doczekać,
kiedy w kalendarzu ujrzę maj.
Wtedy wszystko wkoło rozkwita,
a ptaki tak pięknie śpiewają.
Wiosno, wiosno, czekam z utęsknieniem,
zrób mi tę przyjemność i przyjdź wreszcie, proszę!
你的結果可能會因模型參數(如溫度、top_k、top_p)、硬件和其他設置而有所不同。
6. 檢索增強生成(RAG)
我們的 Llama - PLLuM 模型(聊天和指令版本)還經過額外訓練,可在檢索增強生成(RAG)設置中表現出色。提示採用 .jinja 格式,其中 docs
是文檔文本列表,question
是應根據提供的文檔回答的查詢。如果提供的文檔中沒有答案,模型將生成 "Nie udało mi się odnaleźć odpowiedzi na pytanie"。
提示內容如下:
Numerowana lista dokumentów jest poniżej:
---------------------
<results>{% for doc in docs %}
Dokument: {{ loop.index0 }}
{{ doc }}
{% endfor %}</results>
---------------------
Odpowiedz na pytanie użytkownika wykorzystując tylko informacje znajdujące się w dokumentach, a nie wcześniejszą wiedzę.
Udziel wysokiej jakości, poprawnej gramatycznie odpowiedzi w języku polskim. Odpowiedź powinna zawierać cytowania do dokumentów, z których pochodzą informacje. Zacytuj dokument za pomocą symbolu [nr_dokumentu] powołując się na fragment np. [0] dla fragmentu z dokumentu 0. Jeżeli w dokumentach nie ma informacji potrzebnych do odpowiedzi na pytanie, zamiast odpowiedzi zwróć tekst: "Nie udało mi się odnaleźć odpowiedzi na pytanie".
Pytanie: {{ question }}
✨ 主要特性
廣泛的數據收集
我們收集了大規模、高質量的波蘭語文本數據(清理和去重後約 1500 億個標記),以及其他斯拉夫語、波羅的海語和英語文本。其中一部分標記(280 億)可用於完全開源的模型,包括商業用途(需遵守相關法律法規)。
有機指令數據集
我們精心策劃了最大的波蘭語手動創建的 “有機指令” 集合(約 40000 個提示 - 響應對,包括約 3500 個多輪對話)。這個人編寫的指令集基於廣泛的人機交互類型,涵蓋了監督微調(SFT)中可能被自動化方法忽略的一系列細微方面(包括對 “強大大語言模型” 的大規模蒸餾)。它還旨在減輕預訓練階段使用的非波蘭語文本數據帶來的負面語言遷移。
波蘭語偏好語料庫
我們創建了第一個波蘭語偏好語料庫,其中包含由不同背景的註釋團隊手動評估的提示和多個模型響應。這個數據集不僅教會模型正確性(事實和語言方面),還教會其平衡性和安全性 —— 特別是對於潛在的有爭議或對抗性的話題。
評估基準
我們開發了自定義基準,用於評估我們的模型在與波蘭公共管理相關的任務上的表現,PLLuM 在所有測試模型中取得了最高分。在更廣泛的波蘭語任務中,PLLuM 模型也達到了最先進的水平。
📦 安裝指南
確保你安裝了最新版本的 transformers
和 torch
(或其他兼容的深度學習框架):
pip install transformers accelerate torch
💻 使用示例
基礎用法
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "CYFRAGOVPL/PLLuM-12B-chat" # 替換為你選擇的 PLLuM 模型名稱
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
高級用法
使用 bfloat16(BF16)
如果你的硬件(如較新的 GPU)支持 bfloat16,你可以減少內存使用並可能加快推理速度:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "CYFRAGOVPL/PLLuM-12B-chat"
tokenizer = AutoTokenizer.from_pretrained(model_name)
# 以 bfloat16 精度加載模型
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.bfloat16,
device_map="auto" # 自動將模型層放置在可用設備上
)
生成示例文本
prompt = "Napisz krótki wiersz o wiośnie." # 英文:"Write a short poem about spring."
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=50,
do_sample=True,
top_k=50,
top_p=0.9,
temperature=0.7
)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)
📚 詳細文檔
模型描述
以下是主要 PLLuM 模型的概述,包括它們的許可證、基礎模型和參數大小。所有模型名稱均鏈接到特定的 Hugging Face 資源,基礎模型和許可證鏈接到各自的來源或許可證參考。請注意,所有 -nc- 模型僅供非商業使用。
屬性 | 詳情 |
---|---|
模型類型 | 包括 Llama - PLLuM - 8B - base、Llama - PLLuM - 8B - instruct、Llama - PLLuM - 8B - chat、PLLuM - 12B - base、PLLuM - 12B - instruct、PLLuM - 12B - chat、PLLuM - 12B - nc - base、PLLuM - 12B - nc - instruct、PLLuM - 12B - nc - chat、PLLuM - 8x7B - base、PLLuM - 8x7B - instruct、PLLuM - 8x7B - chat、PLLuM - 8x7B - nc - base、PLLuM - 8x7B - nc - instruct、PLLuM - 8x7B - nc - chat、Llama - PLLuM - 70B - base、Llama - PLLuM - 70B - instruct、Llama - PLLuM - 70B - chat 等多種模型。 |
訓練數據 | 約 1500 億個來自波蘭語和多語言來源的標記,其中約 280 億個標記可用於完全開源的商業用途。 |
模型開發
- 預訓練:所有模型都在大規模的波蘭語語料庫(最多 1500 億個標記)以及一系列其他斯拉夫語、波羅的海語和英語文本上進行了預訓練或持續預訓練。
- 指令微調:我們在手動策劃的波蘭語 “有機指令”(約 40000 條)、來自優質波蘭語語料庫的轉換指令(約 50000 條)和由強大大語言模型生成的合成指令(約 10000 條)上對模型進行了優化。
- 對齊和偏好學習:手動註釋的偏好數據教會模型產生更安全、平衡且上下文合適的響應,即使在對抗性或敏感情況下也是如此。
- 特定領域適配:為公共管理等任務開發了基於 RAG(檢索增強生成)的專用模型,在複雜信息檢索和問答方面表現出色。
預期用例
- 通用語言任務:文本生成、摘要、問答等。
- 特定領域助手:特別適用於波蘭公共管理以及需要領域感知檢索的法律或官僚主題。
- 研發:在學術或工業環境中,作為下游人工智能應用的構建塊,對於精通波蘭語的場景至關重要。
訓練過程
- 數據集:約 1500 億個來自波蘭語和多語言來源的標記,其中約 280 億個標記可用於完全開源的商業用途。
- 超參數:根據模型大小而異,通常包括 Adam 或 AdamW 優化器、一系列批量大小和經過精心調整的學習率。
- 硬件和時長:使用 [Bem2](https://man.e - science.pl/pl/kdm/bem2) 高性能計算(最多 300 個 H100 GPU)進行訓練。每個模型的訓練時間取決於參數大小和硬件配置(80 億 - 700 億參數的模型在多 GPU 集群上訓練約 8 至 25 天)。
評估和基準
- 公共管理:PLLuM 模型在與政府服務相關的專業任務中表現出色。
- 波蘭語任務:在各種內部基準和標準語料庫中,PLLuM 在準確性、連貫性和安全性指標方面始終優於其他模型。
- 自定義測試:獨特的偏好語料庫和對齊測試確保了模型響應的健壯性、安全性和上下文準確性。
侷限性和偏差
- 潛在的幻覺:與其他大語言模型一樣,PLLuM 偶爾可能會產生事實錯誤或虛構的內容。
- 敏感性和偏差:儘管進行了廣泛的偏好學習,但偏差仍可能出現,特別是在有爭議或主觀的話題上。
- 上下文長度:根據內存限制,某些模型在處理非常長的上下文任務時可能會遇到挑戰。
倫理考慮
PLLuM 模型旨在進行建設性和負責任的使用。用戶在將其部署到生產環境中時應謹慎,特別是在敏感或受監管的領域。儘管已努力減少有害輸出,但始終存在生成冒犯性、有偏差或不適當文本的風險。建議進行人工監督和盡職調查。
引用
如果你在研究或部署中使用了 PLLuM 模型或本倉庫的任何部分,請按以下方式引用(BibTeX):
@unpublished{pllum2025,
title={PLLuM: A Family of Polish Large Language Models},
author={PLLuM Consortium},
year={2025}
}
許可證
PLLuM 家族中的不同模型根據不同的許可證發佈(Apache 2.0、CC - BY - NC - 4.0 或 Llama 3.1 許可證)。請查看上述表格中每個模型的條目以獲取詳細信息。
創建者和聯盟
PLLuM 項目是波蘭領先的科研機構與各領域專家之間的獨特合作,共同致力於創建具有開創性的波蘭語模型。這種研究合作匯聚了多樣化的能力和熱情,為推動波蘭人工智能的發展奠定了堅實基礎。
聯繫與支持
如有任何問題或想要做出貢獻,請通過 <pllum@e - science.pl> 聯繫我們。我們歡迎反饋、合作,並期待對 PLLuM 模型進行進一步探索!
致謝
本項目由數字事務部長根據定向補貼第 1/WI/DBiI/2023 號資助:“負責任地開發開放大語言模型 PLLuM(波蘭大型語言模型),以支持公共和經濟領域的突破性技術,包括為請願者提供開放的波蘭語智能助手。”
資助金額:14,504,392.00 波蘭茲羅提 合同簽訂日期:2024 年 1 月 22 日
注意事項
⚠️ 重要提示
與其他大語言模型一樣,PLLuM 偶爾可能會產生事實錯誤或虛構的內容,且儘管進行了廣泛的偏好學習,但偏差仍可能出現,特別是在有爭議或主觀的話題上。用戶在將其部署到生產環境中時應謹慎,特別是在敏感或受監管的領域。
💡 使用建議
對於基於 RAG 的場景,需要將模型與相關的向量存儲或文檔檢索系統配合使用。如果你的硬件支持 bfloat16,可以使用該數據類型以減少內存使用並可能加快推理速度。



