概要
なにが起きた?
どうやって直した?
- Difyが参照できるようにLLMのmanifestファイルの場所を変更した。
状況
- Windows 11 (+ WSL2)で,Dockerを使ってローカルでDifyを利用している。
- Ollamaを使ってローカルでLLMを動かして,Difyのアプリに組み込んでいる。
- Dify v1.0.0以降,Ollama公式で用意しているモデル(gemma3, nomic-embed-text など)は使えるが,HuggingFaceからなど別の手段で導入したモデル(sarashina2.2-3b など)を,Difyの「モデルプロバイダー」画面で「モデルを追加」すると,「変更が正常に行われました」と表示されるが,実際は反映されず利用できなくなっていた。
やったこと
- Gemma3などOllama公式サイトから導入したモデルを見ると,manifestファイルが以下に格納されていた。
..\.ollama\models\manifests\registry.ollama.ai\library\
- それ以外の,HuggingFaceなどから導入したモデルのmanifestファイルは,これとは異なるディレクトリに存在していた。 例:
..\.ollama\models\manifests\hf.co\..
- Difyが認識しないモデルのmanifestファイル(フォルダ)を,1.の
..\registry.ollama.ai\library\
の下に置いたところ,Difyに問題なくモデルが認識され,利用できるようになった。 例:..\.ollama\models\manifests\registry.ollama.ai\library\sarashina2.2-3b-instruct-v0.1-gguf\Q4_K_M
おまけ
- manifestファイルをコピーして別フォルダに置くと,
ollama list
の際に両方ヒットしてしまう。ので,気になる場合は元の方を削除するなどする。(自己責任) - DifyでのOllamaのモデルの設定は以下。
- Model Name :
library以下のフォルダ名:manifestファイル名 ※latestの場合は指定不要
- 例:
sarashina2.2-3b-instruct-v0.1-gguf:Q4_K_M
- 例:
- BASE URL :
http://host.docker.internal:11434
- Model Name :