模型概述
模型特點
模型能力
使用案例
🚀 Falcon-7B-Instruct GPTQ
本倉庫包含一個針對 Falcon-7B-Instruct 的實驗性GPTQ 4位模型。它是使用 AutoGPTQ 進行4位量化的結果。
項目頭部信息

TheBloke的大語言模型工作得到了 andreessen horowitz (a16z) 的慷慨資助
🚀 快速開始
本項目提供了Falcon-7B-Instruct的GPTQ 4位量化模型,下面將介紹如何下載和使用該模型。
✨ 主要特性
- 本模型是對Falcon-7B-Instruct進行4位量化的結果,使用了AutoGPTQ工具。
- 模型可能在最新的GPTQ-for-LLaMa代碼中有更好的性能表現。
- 提供了簡單的Python示例代碼,方便用戶快速上手。
📦 安裝指南
AutoGPTQ安裝
AutoGPTQ是必需的依賴庫,可使用以下命令進行安裝:
GITHUB_ACTIONS=true pip install auto-gptq
AutoGPTQ為Windows和Linux提供了預編譯的輪子,需要CUDA工具包11.7或11.8。如果你使用的是CUDA工具包12.x,則需要按照以下步驟手動編譯:
git clone https://github.com/PanQiWei/AutoGPTQ
cd AutoGPTQ
pip install .
手動編譯需要你安裝 Nvidia CUDA工具包。
運行Python示例代碼所需依賴
運行示例代碼還需要安裝einops:
pip install einops
💻 使用示例
基礎用法
在text-generation-webui中下載和使用本模型的步驟如下:
- 啟動text-generation-webui。
- 點擊 模型 標籤。
- 取消勾選 自動加載模型。
- 在 下載自定義模型或LoRA 下,輸入
TheBloke/falcon-7B-instruct-GPTQ
。 - 點擊 下載。
- 等待下載完成。
- 點擊左上角 模型 旁邊的 刷新 圖標。
- 在 模型下拉框 中選擇你剛剛下載的模型
falcon-7B-instruct-GPTQ
。 - 將 加載器 設置為 AutoGPTQ。該模型不適用於ExLlama,可能適用於最新的GPTQ-for-LLaMa,但尚未經過測試。
- 勾選 信任遠程代碼,然後點擊 保存設置。
- 點擊 重新加載。
- 當顯示模型已加載後,點擊 文本生成 標籤並輸入提示詞!
高級用法
以下是一個簡單的Python示例代碼,展示瞭如何使用該模型進行文本生成:
from transformers import AutoTokenizer, pipeline, logging
from auto_gptq import AutoGPTQForCausalLM, BaseQuantizeConfig
import argparse
model_name_or_path = "TheBloke/falcon-7b-instruct-GPTQ"
# 你也可以將模型下載到本地並訪問
# model_name_or_path = "/path/to/TheBloke_falcon-7b-instruct-GPTQ"
model_basename = "model"
use_triton = False
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, use_fast=True)
model = AutoGPTQForCausalLM.from_quantized(model_name_or_path,
model_basename=model_basename,
use_safetensors=True,
trust_remote_code=True,
device="cuda:0",
use_triton=use_triton,
quantize_config=None)
prompt = "Tell me about AI"
prompt_template=f'''A helpful assistant who helps the user with any questions asked.
User: {prompt}
Assistant:'''
print("\n\n*** Generate:")
input_ids = tokenizer(prompt_template, return_tensors='pt').input_ids.cuda()
output = model.generate(inputs=input_ids, temperature=0.7, max_new_tokens=512)
print(tokenizer.decode(output[0]))
# 也可以使用transformers的pipeline進行推理
# 注意,如果你使用pipeline,會看到一個虛假的錯誤消息,說模型類型不受支持
# 可以忽略這個消息!或者使用以下日誌記錄行來隱藏它:
# 防止在使用pipeline和AutoGPTQ時打印虛假的transformers錯誤
logging.set_verbosity(logging.CRITICAL)
print("*** Pipeline:")
pipe = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=512,
temperature=0.7,
top_p=0.95,
repetition_penalty=1.15
)
print(pipe(prompt_template)[0]['generated_text'])
📚 詳細文檔
關於 trust_remote_code
請注意,這個命令行參數會導致Falcon提供的Python代碼在你的機器上執行。目前需要這個代碼是因為Falcon太新,Hugging Face transformers還不支持它。未來某個時候,transformers將原生支持該模型,屆時就不再需要 trust_remote_code
了。在本倉庫中可以看到兩個 .py
文件,這些就是會被執行的文件,它們是從 Falcon-7B-Instruct 的基礎倉庫中複製過來的。
提供的文件
gptq_model-4bit-64g.safetensors
該文件適用於AutoGPTQ 0.2.0及更高版本。它使用組大小64以提高推理質量,並且沒有使用 desc_act
(激活順序)以提高推理速度。
gptq_model-4bit-64g.safetensors
- 適用於AutoGPTQ CUDA 0.2.0及更高版本。目前不適用於AutoGPTQ Triton,但有望在未來添加支持。
- 可在text-generation-webui中使用
--trust-remote-code
加載。 - 不適用於任何版本的GPTQ-for-LLaMa。
- 參數:組大小 = 64,無激活順序。
原模型信息
模型詳情
屬性 | 詳情 |
---|---|
開發方 | https://www.tii.ae |
模型類型 | 因果解碼器 |
語言 | 英語和法語 |
許可證 | TII Falcon LLM許可證 |
微調基礎模型 | Falcon-7B |
用途
- 直接使用:Falcon-7B-Instruct在指令和聊天數據集的混合數據上進行了微調。
- 超出範圍的使用:未經充分風險評估和緩解的生產使用;任何可能被認為不負責任或有害的使用場景。
偏差、風險和侷限性
Falcon-7B-Instruct主要在英語數據上進行訓練,可能無法很好地泛化到其他語言。此外,由於它是在代表網絡的大規模語料庫上訓練的,可能會帶有網絡上常見的刻板印象和偏差。
建議
建議Falcon-7B-Instruct的用戶開發防護措施,並在任何生產使用中採取適當的預防措施。
訓練詳情
訓練數據
Falcon-7B-Instruct在2.5億個標記的指令/聊天數據集混合數據上進行了微調,具體數據來源如下:
數據源 | 比例 | 標記數 | 描述 |
---|---|---|---|
Bai ze | 65% | 1.64億 | 聊天數據 |
GPT4All | 25% | 6200萬 | 指令數據 |
GPTeacher | 5% | 1100萬 | 指令數據 |
RefinedWeb-English | 5% | 1300萬 | 大規模網絡爬取數據 |
技術規格
模型架構和目標
Falcon-7B是一個因果解碼器模型,在因果語言建模任務(即預測下一個標記)上進行訓練。其架構大致改編自GPT-3論文 (Brown et al., 2020),有以下不同點:
- 位置嵌入:旋轉嵌入 (Su et al., 2021)。
- 注意力機制:多查詢注意力 (Shazeer et al., 2019) 和FlashAttention (Dao et al., 2022)。
- 解碼器塊:並行注意力/多層感知機,帶有單個層歸一化。
超參數 | 值 | 註釋 |
---|---|---|
層數 | 32 | |
d_model |
4544 | 為補償多查詢注意力而增加 |
head_dim |
64 | 為優化FlashAttention而減小 |
詞彙表 | 65024 | |
序列長度 | 2048 |
計算基礎設施
- 硬件:Falcon-7B-Instruct在AWS SageMaker上進行訓練,使用了32個A100 40GB GPU的P4d實例。
- 軟件:使用自定義的分佈式訓練代碼庫Gigatron進行訓練,採用3D並行方法,結合ZeRO和高性能Triton內核(如FlashAttention等)。
引用
相關論文即將發佈。
🔧 技術細節
性能說明
目前使用AutoGPTQ時,該GPTQ模型的性能非常慢。它可能在最新的GPTQ-for-LLaMa代碼中有更好的性能表現,但尚未經過個人測試。
提示模板
A helpful assistant who helps the user with any questions asked.
User: prompt
Assistant:
📄 許可證
Falcon-7B-Instruct根據 TII Falcon LLM許可證 提供。大致來說:
- 你可以自由使用我們的模型進行研究和/或個人用途。
- 你可以分享和構建這些模型的衍生作品,但需要註明出處並使用相同的許可證進行共享。
- 對於商業用途,如果可歸因收入低於每年100萬美元,則無需支付版稅;否則,你需要與TII達成商業協議。
其他信息
Discord
如需進一步的支持,以及參與關於這些模型和人工智能的討論,請加入我們的 TheBloke AI的Discord服務器。
感謝與貢獻方式
感謝 chirper.ai 團隊!有很多人詢問是否可以進行貢獻。我喜歡提供模型並幫助他人,也希望能夠花更多時間做這些事情,以及開展新的項目,如微調/訓練。如果你有能力並願意貢獻,將不勝感激,這將幫助我繼續提供更多模型,並開展新的人工智能項目。捐贈者將在所有AI/大語言模型/模型問題和請求上獲得優先支持,訪問私人Discord房間,以及其他福利。
- Patreon: https://patreon.com/TheBlokeAI
- Ko-Fi: https://ko-fi.com/TheBlokeAI
特別感謝:Aemon Algiz。
Patreon特別提及:Sam, theTransient, Jonathan Leane等眾多支持者。
聯繫信息
如有任何問題,可通過郵箱 falconllm@tii.ae 聯繫。



