模型概述
模型特點
模型能力
使用案例
🚀 RedPajama-INCITE-7B-Chat
RedPajama-INCITE-7B-Chat 由 Together 以及開源 AI 社區的領導者們共同開發,這些領導者來自 Ontocord.ai、ETH DS3Lab、AAI CERC、蒙特利爾大學、魁北克人工智能研究所 MILA、斯坦福基礎模型研究中心 (CRFM)、斯坦福 Hazy Research 研究小組和 LAION。
該模型在 OASST1 和 Dolly2 上進行了微調,以增強其聊天能力。
- 基礎模型:RedPajama-INCITE-7B-Base
- 指令微調版本:RedPajama-INCITE-7B-Instruct
- 聊天版本:RedPajama-INCITE-7B-Chat
✨ 主要特性
- 由多個開源 AI 社區的領導者共同開發,保證了模型開發的多元性和專業性。
- 在 OASST1 和 Dolly2 上進行微調,顯著提升了聊天能力。
📦 安裝指南
請注意,該模型需要 transformers
版本 >= 4.25.1。
若要使用 int8 進行推理,請確保已安裝 accelerate
和 bitsandbytes
,可以使用以下命令進行安裝:
pip install accelerate
pip install bitsandbytes
💻 使用示例
基礎用法
以下是在 GPU 上進行推理的示例代碼:
import torch
import transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
MIN_TRANSFORMERS_VERSION = '4.25.1'
# check transformers version
assert transformers.__version__ >= MIN_TRANSFORMERS_VERSION, f'Please upgrade transformers to version {MIN_TRANSFORMERS_VERSION} or higher.'
# init
tokenizer = AutoTokenizer.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat")
model = AutoModelForCausalLM.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat", torch_dtype=torch.float16)
model = model.to('cuda:0')
# infer
prompt = "<human>: Who is Alan Turing?\n<bot>:"
inputs = tokenizer(prompt, return_tensors='pt').to(model.device)
input_length = inputs.input_ids.shape[1]
outputs = model.generate(
**inputs, max_new_tokens=128, do_sample=True, temperature=0.7, top_p=0.7, top_k=50, return_dict_in_generate=True
)
token = outputs.sequences[0, input_length:]
output_str = tokenizer.decode(token)
print(output_str)
"""
Alan Mathison Turing (23 June 1912 7 June 1954) was an English computer scientist, mathematician, logician, cryptanalyst, philosopher, mathematician, and theoretical biologist.
"""
高級用法
GPU Inference in Int8
此方法需要一個具有 12GB 內存的 GPU。
import torch
import transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
MIN_TRANSFORMERS_VERSION = '4.25.1'
# check transformers version
assert transformers.__version__ >= MIN_TRANSFORMERS_VERSION, f'Please upgrade transformers to version {MIN_TRANSFORMERS_VERSION} or higher.'
# init
tokenizer = AutoTokenizer.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat")
model = AutoModelForCausalLM.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat", device_map='auto', torch_dtype=torch.float16, load_in_8bit=True)
# infer
prompt = "<human>: Who is Alan Turing?\n<bot>:"
inputs = tokenizer(prompt, return_tensors='pt').to(model.device)
input_length = inputs.input_ids.shape[1]
outputs = model.generate(
**inputs, max_new_tokens=128, do_sample=True, temperature=0.7, top_p=0.7, top_k=50, return_dict_in_generate=True
)
token = outputs.sequences[0, input_length:]
output_str = tokenizer.decode(token)
print(output_str)
"""
Alan Mathison Turing (23 June 1912 – 7 June 1954) was an English computer scientist, mathematician, logician, cryptanalyst, philosopher, and theoretical biologist.
"""
CPU Inference
import torch
import transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
MIN_TRANSFORMERS_VERSION = '4.25.1'
# check transformers version
assert transformers.__version__ >= MIN_TRANSFORMERS_VERSION, f'Please upgrade transformers to version {MIN_TRANSFORMERS_VERSION} or higher.'
# init
tokenizer = AutoTokenizer.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat")
model = AutoModelForCausalLM.from_pretrained("togethercomputer/RedPajama-INCITE-7B-Chat", torch_dtype=torch.bfloat16)
# infer
prompt = "<human>: Who is Alan Turing?\n<bot>:"
inputs = tokenizer(prompt, return_tensors='pt').to(model.device)
input_length = inputs.input_ids.shape[1]
outputs = model.generate(
**inputs, max_new_tokens=128, do_sample=True, temperature=0.7, top_p=0.7, top_k=50, return_dict_in_generate=True
)
token = outputs.sequences[0, input_length:]
output_str = tokenizer.decode(token)
print(output_str)
"""
Alan Mathison Turing, OBE, FRS, (23 June 1912 – 7 June 1954) was an English computer scientist, mathematician, logician, cryptanalyst, philosopher, and theoretical biologist.
"""
⚠️ 重要提示
由於
LayerNormKernelImpl
未在 CPU 的 fp16 中實現,因此在 CPU 推理時使用bfloat16
。
📚 詳細文檔
模型詳情
屬性 | 詳情 |
---|---|
開發團隊 | Together Computer |
模型類型 | 語言模型 |
支持語言 | 英語 |
許可證 | Apache 2.0 |
模型描述 | 一個具有 69 億參數的預訓練語言模型 |
使用方式
直接使用
排除的使用情況如下所述。
濫用、惡意使用和超出範圍使用
最終用戶有責任確保以負責任和合乎道德的方式使用該模型。
超出範圍使用
RedPajama-INCITE-7B-Chat
是一個語言模型,對於其預期範圍之外的其他用例可能表現不佳。例如,它可能不適用於安全關鍵型應用程序或用於做出對個人或社會有重大影響的決策。重要的是要考慮模型的侷限性,並僅將其用於預期目的。
濫用和惡意使用
RedPajama-INCITE-7B-Chat
是為語言建模而設計的。濫用該模型,例如使用它從事非法或不道德活動,是嚴格禁止的,並且違反了項目的原則。
使用該模型生成對個人殘酷的內容是對該模型的濫用。這包括但不限於:
- 生成假新聞、錯誤信息或宣傳內容
- 宣傳針對個人或群體的仇恨言論、歧視或暴力
- 在未經同意的情況下冒充個人或組織
- 進行網絡欺凌或騷擾
- 誹謗性內容
- 垃圾郵件或詐騙
- 在沒有適當授權的情況下分享機密或敏感信息
- 違反模型或用於訓練它的數據的使用條款
- 創建用於惡意目的的自動化機器人,如傳播惡意軟件、釣魚詐騙或垃圾郵件
侷限性
RedPajama-INCITE-7B-Chat
與其他語言模型一樣,有一些需要考慮的侷限性。例如,該模型可能並不總是提供準確或相關的答案,特別是對於複雜、模糊或超出其訓練數據範圍的問題。因此,我們歡迎個人和組織的貢獻,並鼓勵合作以創建更強大和包容的聊天機器人。
訓練
訓練數據 請參考 togethercomputer/RedPajama-Data-1T
訓練過程
- 硬件:8 個 A100
- 優化器:Adam
- 梯度累積:1
- 令牌數量:7900 萬個令牌
- 學習率:1e-5
社區
加入我們的 Together Discord
📄 許可證
本項目採用 Apache 2.0 許可證。



