使用Ollama调用自定义LLM模型时遇404模型未找到问题求助
解决Ollama调用Hugging Face自定义模型的404错误及相关疑问
问题场景
我运行一个用ollama库调用自定义LLM模型的Python脚本,指定模型名称为:
chosen_model = 'hf.co/mradermacher/Llama-3.2-3B-Instruct-uncensored-GGUF'
核心调用代码:
def extract_keyword(prompt): response = ollama.generate( model=chosen_model, prompt=f"Identify the product/item in {prompt}. ..." ) return response.get('response', '').strip()
本地已安装并运行Ollama,其他标准模型可正常使用,但运行时报错:
Traceback (most recent call last): File "/home/jas/Desktop/WNE3/Old/updatedPromptEnhancer.py", line 113, in <module> main() File "/home/jas/Desktop/WNE3/Old/updatedPromptEnhancer.py", line 80, in main keyword = extract_keyword(user_input) File "/home/jas/Desktop/WNE3/Old/updatedPromptEnhancer.py", line 33, in extract_keyword response = ollama.generate( File "/home/jas/anaconda3/lib/python3.11/site-packages/ollama/_client.py", line 242, in generate return self._request( File "/home/jas/anaconda3/lib/python3.11/site-packages/ollama/_client.py", line 178, in _request return cls(**self._request_raw(*args, **kwargs)).json() File "/home/jas/anaconda3/lib/python3.11/site-packages/ollama/_client.py", line 122, in _request_raw raise ResponseError(e.response.text, e.response.status_code) from None ollama._types.ResponseError: model 'hf.co/mradermacher/Llama-3.2-3B-Instruct-uncensored-GGUF' not found (status code: 404)
疑问解答及解决步骤
1. 该仓库地址是否为Ollama可用的有效模型名称?
不是。Ollama支持直接拉取Hugging Face的模型,但必须指定具体的GGUF文件名,而非仓库地址。这个仓库下有多个不同量化精度的GGUF文件,直接用仓库地址会导致Ollama无法定位具体模型文件,从而返回404错误。
2. 是否需要手动拉取或格式转换?
需要手动拉取,但无需格式转换(仓库内已提供Ollama兼容的GGUF格式文件)。拉取时必须指定完整的Hugging Face路径+具体文件名。
3. 如何验证模型与Ollama的可用性及兼容性?
- 确认格式:Ollama仅支持GGUF格式模型,其他格式(如PyTorch权重、旧版GGML)无法直接使用。
- 测试拉取:用
ollama pull命令尝试拉取具体模型文件,能成功拉取则说明格式兼容。 - 本地验证:拉取完成后,用
ollama run [模型名称]启动对话,能正常响应则说明模型可用。
具体操作步骤
确定具体GGUF文件名
从该Hugging Face仓库中选择一个适合的量化版本(如Q4_K_M,平衡速度与精度),复制对应文件名,例如Llama-3.2-3B-Instruct-uncensored-Q4_K_M.gguf。拉取模型
在终端执行以下命令(替换为你选择的文件名):ollama pull hf.co/mradermacher/Llama-3.2-3B-Instruct-uncensored-GGUF:Llama-3.2-3B-Instruct-uncensored-Q4_K_M.gguf也可以给模型起别名,方便后续调用:
ollama pull llama3.2-3b-uncensored=hf.co/mradermacher/Llama-3.2-3B-Instruct-uncensored-GGUF:Llama-3.2-3B-Instruct-uncensored-Q4_K_M.gguf修改Python代码中的模型名称
若使用别名:chosen_model = 'llama3.2-3b-uncensored'若未使用别名,直接用完整拉取路径:
chosen_model = 'hf.co/mradermacher/Llama-3.2-3B-Instruct-uncensored-GGUF:Llama-3.2-3B-Instruct-uncensored-Q4_K_M.gguf'验证模型可用性
拉取完成后,在终端执行:ollama run llama3.2-3b-uncensored输入测试prompt,能正常生成响应则说明模型可用,此时再运行Python脚本即可正常调用。
内容的提问来源于stack exchange,提问作者JaS
相关产品推荐
相关产品推荐

