diff --git a/content/posts/nextcloud_x_litellm_x_ollama.md b/content/posts/nextcloud_x_litellm_x_ollama.md index 57bd86f..85139e4 100644 --- a/content/posts/nextcloud_x_litellm_x_ollama.md +++ b/content/posts/nextcloud_x_litellm_x_ollama.md @@ -8,6 +8,7 @@ cover: "/posts/covers/nlo.avif" --- Опять же, как было в случае с [принтером](/posts/ricoh_config), у меня Arch-based дистрибутив, поэтому буду расписывать по нему. +## Установка {#install} Начнём с установки **[Ollama](https://github.com/ollama/ollama)**. У меня карточка от красных, поэтому я ставлю версию **rocm**. ```bash @@ -18,6 +19,7 @@ yay -S ollama-rocm sudo pacman -S ollama-rocm ``` +## Сервис systemd {#systemd_service} Как в моём случае, почему-то оно не подхватывало мою **RX 6700 XT** (но [тут](https://github.com/ollama/ollama/issues/3547) нашлось решение), поэтому мне пришлось редактировать **сервис systemd** следующим образом: ```bash @@ -49,6 +51,8 @@ ProtectHome=yes WantedBy=multi-user.target ``` +## Импорт модели GGUF {#gguf_import} + Обн. от `05.08.24` - добавлена инструкция импорта моделей `.gguf` Далее устанавливаем желаемую модель, в моём случае это **`llama3`** и модель, которую можно импортировать из файла `.gguf`, я буду использовать **`saiga-llama3`[[🔗](https://huggingface.co/IlyaGusev/saiga_llama3_8b_gguf)]**. @@ -75,9 +79,8 @@ ollama -f файл_название_модели название_модели ```bash ollama -f saiga-llama3 saiga-llama3 ``` -Модели импортированы ---- +## LiteLLM Далее идём ставить **[LiteLLM](https://github.com/BerriAI/litellm)**. Это прослойка между Ollama и [Nextcloud LocalAI](https://github.com/nextcloud/integration_openai), которая использует запросы в формате OpenAI API. ```bash @@ -99,7 +102,7 @@ model_list: # ну далее по шаблону, если есть другие модели ``` - +## LiteLLM systemd Затем я сделал **systemd** сервис, чтобы не запускать это дело ручками, он должен располагаться в ```bash /home/ваш_пользователь/.config/systemd/user/litellm.service @@ -123,22 +126,20 @@ WantedBy=default.target systemctl --user daemon-reload systemctl --user enable --now litellm ``` - +## Nextcloud Assistant Теперь идём в настройки сервера **Искусственный интеллект** [/settings/admin/ai], предварительно установив **Nextcloud Assistant** и **OpenAI and LocalAI integration**, листаем ниже до **`OpenAI и локальная интеграция`**. -```bash -Service URL - ip_пк:4000 -Service Name (optional) - LiteLLM (или другое, какое хотите) +**`Service URL`** - ip_пк:4000 \ +**`Service Name (optional)`** - LiteLLM (или другое, какое хотите) -API key - не нужен -Default completion model to use - выбираем ollama/ваша_модель (openai) -Max new tokens per request - я поставил 17500, но это уже индивидуально +**`API key`** - не нужен \ +**`Default completion model to use`** - выбираем **ollama/ваша_модель** (openai) \ +**`Max new tokens per request`** - ставите сколько считаете нужным -Select enabled features -отключил: -Image generation provider -Speech-to-text -потому что модель такое не умеет -``` +**`Select enabled features`** + +Отключил потому что модель такое не умеет: +- Image generation provider +- Speech-to-text Статья написана без использования ИИ. Хотя, наверное, это и так видно 🙃 \ No newline at end of file