问题是什么?
问题是什么?
我尝试使用 ollama create -f Modelfile
从huggingface导入llama 3.1 8B模型,但遇到了错误:Error: json: cannot unmarshal array into Go struct field Params.eos_token_id of type int
。我找到了这个错误的浅层原因,并简单地修复了它。但我想了解为什么会出现这个错误,以及是否有更好的解决方案。
从错误中得到什么?
Go struct
获取 int
作为 eos_token_id
的替代。但是 config.json
文件和 generation_config.json
文件包含 "eos_token_id": [128001, 128008, 128009]
。因此,它们面临类型不匹配的问题,我们得到了这个错误。
我的简单解决方案是什么?
我没有具体的原因就将 eos_token_id
的值更改为 "eos_token_id": 128001
,然后解决了问题并创建了一个模型。
为什么会出现这个错误?正确的解决方案是什么?
我不知道。如果有人知道,请告知。
操作系统
Linux
GPU
Nvidia
CPU
Intel
Ollama版本
0.2.8
3条答案
按热度按时间t98cgbkg1#
我在这个docker日志中看到了这个错误
error from daemon in stream: Error grabbing logs: invalid character 'l' after object key:value pair
5jvtdoz22#
创建llama3.1 -f lama31.txt
传输模型数据
解包模型元数据
错误:json:无法将数组解析为Go结构体字段Params.eos_token_id的类型int
配置文件是:
FROM D:\LLaMA-Factory\Meta-Llama-3.1-8B-Instruct
TEMPLATE "{{ if .System }}<|start_header_id|>system<|end_header_id|>
{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>
{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>
{{ .Response }}<|eot_id|>"
PARAMETER stop <|start_header_id|>
PARAMETER stop <|end_header_id|>
PARAMETER stop <|eot_id|>
PARAMETER num_keep 24
ccgok5k53#
这与问题无关,但当我在Postman中向
/api/generate
发送POST请求时,我遇到了完全相同的错误。结果发现,这个问题是由于流值中的引号引起的。例如: