Bug Description
导入错误:使用 bitsandbytes
8位量化需要 Accelerate:pip install accelerate
和 bitsandbytes 的最新版本:pip install -i https://pypi.org/simple/ bitsandbytes
环境
使用CUDA 11.8安装的软件包:
torch - 2.3.0+cu118
llama-index - 0.10.37
llama-index-llms-huggingface - 0.2.0
transformers - 4.39.0
accelerate - 0.27.0
bitsandbytes - 0.43.1
版本
0.10.37
重现步骤
import torch
from llama_index.llms.huggingface import HuggingFaceLLM
# 可选的4位量化
from transformers import BitsAndBytesConfig
quantization_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype=torch.float16,
bnb_4bit_quant_type="nf4",
bnb_4bit_use_double_quant=True,
)
llm = HuggingFaceLLM(
model_name="meta-llama/Meta-Llama-3-8B-Instruct",
model_kwargs={
"token": hf_token,
"torch_dtype": torch.bfloat16, # 注解这一行并取消注解下面的代码以使用4位
# "quantization_config": quantization_config
},
generate_kwargs={
"do_sample": True,
"temperature": 0.6,
"top_p": 0.9,
},
tokenizer_name="meta-llama/Meta-Llama-3-8B-Instruct",
tokenizer_kwargs={"token": hf_token},
stopping_ids=stopping_ids,
)
3条答案
按热度按时间v09wglhw1#
嘿,@AnandUgale,很高兴再次在这里遇到你!🚀看起来你已经偶然发现了一项有趣的挑战。我现在正在深入了解细节,并将在不久后用更全面的回应回来。敬请期待!
z9ju0rcb2#
这不是一个真正的羊驼指数问题,而是一个Huggingface问题😅。如果你在笔记本中,安装后可能需要重新启动笔记本。
2guxujil3#
为了解决您在使用
bitsandbytes
和8位量化时遇到的ImportError
问题,请按照以下目标步骤进行操作:bitsandbytes
已正确安装您的CUDA版本,方法是运行:此命令将安装专门为CUDA 11.8编译的版本,这可能会解决兼容性问题。
检查环境变量:验证
CUDA_HOME
和LD_LIBRARY_PATH
是否正确设置以反映您的CUDA 11.8安装。错误的环境变量配置可能导致导入错误。隔离ImportError:确定
ImportError
确切发生的位置。是在从bitsandbytes
或其他包导入特定模块时发生的吗?确定位置可以帮助识别原因。查阅文档和问题:查看GitHub仓库和文档,了解
bitsandbytes
、llama_index
以及HuggingFace的transformers中类似问题的解决方案。有时,特定的版本冲突或错误会记录在文档中。环境清理:如果必要,创建一个新的虚拟环境并重新安装依赖项。这可以帮助消除之前安装中的冲突或问题。
要将
bitsandbytes
与HuggingFace的transformers集成,请确保您的BitsAndBytesConfig
和模型初始化与提供的示例相一致。这包括在创建HuggingFaceLLM
示例时在model_kwargs
中设置quantization_config
。如果这些步骤不能解决问题,请提供有关错误的更多详细信息以及导致错误的代码以便进一步协助。详情
来源
关于Dosu
此响应旨在帮助您节省时间并提高效率。它不是精确的解决方案,而是您自己研究的起点。
请帮助我变得更有用!如果您觉得有帮助,请留下一个👍,如果不相关,请留下一个👎。