wujm424606 / ComfyUi-Ollama-YN

This is a comfyui project for expanding the prompt word or simple question and answer by ollama
71 stars 5 forks source link

模型的读取和下载存在问题 #14

Closed enternal-flame closed 2 weeks ago

enternal-flame commented 1 month ago

我第一次下载了这个节点,ollama,docker和openwebui,并且把ollama放在了docker里。这个时候,该节点可以正确的读出ollama中下载的模型,却不能够使用这些模型。之后,由于这些东西默认都放在C盘太占地方,而且下载的问题始终无法解决,所以我彻底删除了ollama,docker和openwebui,并且重新下载了ollama,将ollama的模型安装地址在系统变量中改到了D盘。但是,在我重新下回ollama和openwebui后,发生了这样的状况:my ollama generate不能正确的读取我放在ollama中的模型,只能读到上一次重装前我已经下好,现在已经删除的模型。而如果我选择这些模型,comfyui会直接下载这些模型到不知道什么地方去,而这个节点现在会直接忽视我在openwebui中下载的模型,转而自己自说自话重新在不知道哪里下载一个一模一样的模型。。。my ollama delete model又只能读到undefined。 之后,我试着用这个节点的ollama pull直接下载了(或者说是它单方面自说自话的下载了)几个不知道放在哪里的模型。这些模型即便被下载好也改变不了my ollama generate中的模型列表,但是my ollama delete model里却有了这些模型。同样的,我在openwebui里下载的模型无法被这个delete节点读取——而openwebui却可以正常的读取所有的,包括通过这个节点pull下来的模型。 我试着在你的pull_model_with_progress函数中的拉取方法后指定我的地址以解决下载路径的问题,即 process = subprocess.Popen( ['ollama', 'pull', model, '--path', 'D:\your\desired\model\path'], 但我并不确定这个问题是否被如此解决了。 最后,当我继续运行时,又突然爆出这样一个问题:MyOllamaGenerate

500 Internal Privoxy Error

500 Internal Privoxy Error

Privoxy encountered an error while processing your request:

Could not load template file no-server-data or one of its included components.

Please contact your proxy administrator.

If you are the proxy administrator, please put the required file(s)in the (confdir)/templates directory. The location of the (confdir) directory is specified in the main Privoxy config file. (It's typically the Privoxy install directory).

我实在对此感到相当大的困惑。希望作者能给出一个答案。谢谢!

wujm424606 commented 1 month ago

请问你是在客户端还是在本地运行插件的?

wujm424606 commented 1 month ago

实际上下载逻辑就是在命令行中运行ollama pull + 模型名,比如ollama pull llama3,至于模型下载的位置,如果是默认会在C盘里,如果你已经修改了环境变量进行修改模型下载的位置,正常应该是会在你默认的位置下载的,环境变量设置可以参考这个https://blog.csdn.net/Yurixu/article/details/136443395 ,下载完模型后需要重新载入节点,才会在模型列表中看到新下载的模型。如果你只是像单纯查看模型下载了哪些,可以打开cmd,输入ollama list查看 image

wujm424606 commented 1 month ago

我本身是默认路径下载的,关于一些其它的点你可以参考下tips里面,看一下有没有你需要的或者看下issues部分看下有没有和你相同问题的

wujm424606 commented 1 month ago

同时这个插件本身是基于comfyui进行适配的,是否能适配openwebui我也没有试验过

enternal-flame commented 1 month ago

关于节点对模型的加载问题,继续提出一点疑问: 我在ollama list里面有八个模型,file/category.csv文件中手动写了两个模型进去,但是my ollama generate加载出来六个模型,my ollama vision里面是四个其他模型,my ollama delete model里面却只有undefined。这是为什么呢? ComfyUI - Google Chrome 2024_9_30 13_43_39 ComfyUI - Google Chrome 2024_9_30 13_43_57 Screenshot 2024_9_30 13_44_23

enternal-flame commented 1 month ago

然后当我再刷新一次之后,它们就全都变成了undefined。 image 这个实在是令人摸不着头脑。这几个节点到底是如何拉取ollama list的,怎么能做到每个都不一样的呢? 希望作者能给予进一步回复和说明,谢谢!

wujm424606 commented 1 month ago

首先generate和vision节点会有默认的模型列表,这些主要是我认为还不错的模型,所以设置成默认了,用户第一次使用这些模型时会自动下载,并将模型名字添加到category.csv里。这里关于category.csv文件的作用我简单说一下,这个文件是把下载的模型按照vision和text模型进行分类设置的,因为本身ollama自身没有模型分类功能,所以我通过在csv文件中添加分类列表和模型名字实现了一个分类。所以说而这些节点读取模型列表实际上也就是读取csv文件里面的模型名再显示到前端,也就是说如果你在ollama list中有模型,但是这些模型名字如果没有加入到csv文件中,这些节点不会识别到你下载了模型。同时为了避免手动一个个添加到csv文件的麻烦操作,所以我在下面提供了一个extra_model,如果你想下载默认模型之外的模型,你想下载的模型名再点击运行,就会自动下载模型并自动将新添加的模型名保存到csv文件中。