地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

Dify(docker compose)+Ollama(docker)を試す。

WSLを使って動作。おそらく、ubuntuなどのLinux全般同じようにできる・・・と思う。

 

ollamaのdockerでの動かし方:

hub.docker.com

 

GPUを利用するならば、GPU周りの設定を実施した後に、以下で起動。

docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

 

今回使ったのは以下のモデル。小さなモデルでどの程度動作するのか確認したかった。

docker exec -it ollama ollama run hawkclaws/japanese-stablelm-2-instruct-1_6b

 

次に、Difyを動かす。

docs.dify.ai

 

Ollamaと同じマシンで動かしているため、OllamaのBASE URLをDifyに設定しやすいように、Difyのdocker-compose.yamlにhost側を見る様に設定する。

docker-compose.yamlのservices:api:以下にextra_hostsを加える。

    extra_hosts:
      - host.docker.internal:host-gateway

Docker詳しくないけど、これで動いたので、たぶん大丈夫。もちろん、ホストのIPを調べておいて記入しても大丈夫だと思います。これが正しいやり方なのかわかりませんが、他にはdocker compose.yaml中にollama部分も入れ混んじゃうという手もあるのかもしれません。そのあたりは本職さんじゃないので動けばOK。

 

最終的にDify上のモデル設定ではollamaを選んだ後に・・・

Model Name:hawkclaws/japanese-stablelm-2-instruct-1_6b

Base URL:http://host.docker.internal:11434

で、動作しました。

 

japanese-stablelm-2-instruct-1_6bでも、そこそこ動くのも確認できました。もちろん、gpt-4には及びませんが、タスクによっては使えそうです。