mirror of
https://github.com/He4eT/oddsquat.git
synced 2026-05-04 20:37:22 +00:00
posts: selfhosted_llm: update anchors
This commit is contained in:
parent
428ad40c31
commit
fab4cdf835
1 changed files with 30 additions and 30 deletions
|
|
@ -43,9 +43,9 @@ description: 'Персональные LLM в docker-контейнере на
|
|||
|
||||
---
|
||||
|
||||
<div id='setup'></div>
|
||||
|
||||
## Установка и настройка
|
||||
<h2 id='setup'>
|
||||
Установка и настройка
|
||||
</h2>
|
||||
|
||||
Существует несколько продуктов, которые стараются избавить пользователя от головной боли и возни с инфраструктурой. Мне понятнее всего оказался проект [Ollama](https://ollama.ai/), с ним мы и будем экспериментировать.
|
||||
|
||||
|
|
@ -53,9 +53,9 @@ description: 'Персональные LLM в docker-контейнере на
|
|||
|
||||
Использование docker-контейнеров, к сожалению, слегка усложняет взаимодействие с Ollama, так что большая часть текста и кода в этом посте посвящены решению проблем, которые, по сути, я придумал себе сам.
|
||||
|
||||
<div id='setup-ollama'></div>
|
||||
|
||||
### Установка Ollama
|
||||
<h3 id='setup-ollama'>
|
||||
Установка Ollama
|
||||
</h3>
|
||||
|
||||
Для создания и первого запуска контейнера нужно выполнить команду:
|
||||
```
|
||||
|
|
@ -72,9 +72,9 @@ docker stop ollama
|
|||
|
||||
Контейнер предоставляет доступ к [Ollama API](https://github.com/jmorganca/ollama/blob/main/docs/api.md) на 11434 порту, а также позволяет устанавливать и общаться с установленными LLM через терминал.
|
||||
|
||||
<div id='setup-model'></div>
|
||||
|
||||
### Загрузка модели и диалог с ней
|
||||
<h3 id='setup-model'>
|
||||
Загрузка модели и диалог с ней
|
||||
</h3>
|
||||
|
||||
Ollama позволяет запускать любые GGUF, PyTorch или Safetensors модели (что бы это ни значило), но самый простой путь — загрузка моделей из специальной [библиотеки](https://ollama.ai/library).
|
||||
|
||||
|
|
@ -98,9 +98,9 @@ alias summon='clear && docker exec -it ollama ollama run'
|
|||
summonable
|
||||
summon phi
|
||||
```
|
||||
<div id='custom-model'></div>
|
||||
|
||||
### Кастомные модели и их тонкая настройка
|
||||
<h3 id='custom-model'>
|
||||
Кастомные модели и их тонкая настройка
|
||||
</h3>
|
||||
|
||||
Ollama позволяет на основе существующих создавать производные модели с заранее определёнными инструкциями или параметрами. Для этого нужно создать специальный файл, в котором указана родительская модель и определены желаемые значения параметров. Подробнее о формате этих файлов можно прочесть в документации: [Modelfile](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md).
|
||||
|
||||
|
|
@ -170,9 +170,9 @@ docker exec -it ollama ollama create $modelName -f $targetPath
|
|||
summon EnglishTeacher
|
||||
```
|
||||
|
||||
<div id='usage'></div>
|
||||
|
||||
## Использование
|
||||
<h2 id='usage'>
|
||||
Использование
|
||||
</h2>
|
||||
|
||||
Разговоры с галлюцинирующим искусственным интеллектом в терминале — это, конечно, волшебно, но потенциал больших языковых моделeй по-настоящему раскрывается, когда они начинают портить данные в соседних приложениях!
|
||||
|
||||
|
|
@ -180,9 +180,9 @@ summon EnglishTeacher
|
|||
|
||||
Не ручаюсь за весь список, но расскажу про то, с чем экспериментировал сам.
|
||||
|
||||
<div id='fake-open-ai'></div>
|
||||
|
||||
### Мимикрия под API от OpenAI
|
||||
<h3 id='fake-open-ai'>
|
||||
Мимикрия под API от OpenAI
|
||||
</h3>
|
||||
|
||||
> В какой-то момент [в Ollama появилась поддержка совместимости с форматом API от OpenAI](https://ollama.com/blog/openai-compatibility) и этот раздел потерял актуальность.
|
||||
|
||||
|
|
@ -224,9 +224,9 @@ docker run --net=host diy-ollama-proxy
|
|||
```
|
||||
После запуска вы получите API, который совместим с API от OpenAI и доступен по адресу `http://localhost:8000/`.
|
||||
|
||||
<div id='ollama-nvim'></div>
|
||||
|
||||
### Интеграция с NeoVim
|
||||
<h3 id='ollama-nvim'>
|
||||
Интеграция с NeoVim
|
||||
</h3>
|
||||
|
||||
Языковые модели отлично умеют взаимодействовать с текстом, так что использование их в текстовом редакторе кажется разумной идеей.
|
||||
|
||||
|
|
@ -295,9 +295,9 @@ docker run --net=host diy-ollama-proxy
|
|||
|
||||
Возможность добавления кастомных промптов позволяет в будущем реализовать новые сценарии или вынести повторяющиеся действия в отдельный пункт меню или даже на отдельный шорткат.
|
||||
|
||||
<div id='update-delete'></div>
|
||||
|
||||
## Обновление и удаление
|
||||
<h2 id='update-delete'>
|
||||
Обновление и удаление
|
||||
</h2>
|
||||
|
||||
Для обновления и удаления моделей можно использовать команды `pull` и `rm`:
|
||||
```
|
||||
|
|
@ -307,9 +307,9 @@ docker exec -it ollama ollama rm mistral
|
|||
|
||||
Я знаю, что для обновления и удаления docker-образов и docker-контейнеров тоже есть специальные команды (это тоже `pull` и `rm`), но каждый раз ленюсь в этом разобраться, просто сношу всё с помощью утилиты [sen](https://github.com/TomasTomecek/sen) и разворачиваю нужное заново.
|
||||
|
||||
<div id='performance'></div>
|
||||
|
||||
## Производительность
|
||||
<h2 id='performance'>
|
||||
Производительность
|
||||
</h2>
|
||||
|
||||
Для эксплуатации LLM требуется гораздо меньше ресурсов, чем для её обучения. Запустить 7b-модель средней тупости можно практически на любом CPU и 8 GB RAM, но нагрузка на систему и скорость генерации ответов часто будут далеки от комфортных значений.
|
||||
|
||||
|
|
@ -319,9 +319,9 @@ docker exec -it ollama ollama rm mistral
|
|||
|
||||
Неприятным открытием стало то, что docker-версия Ollama на MacOS выполняется заметно медленнее (от 3 до 5 раз, если верить ощущениям), чем нативная. Возможно, всё дело в том, что я как-то неправильно настроил docker или приложение в контейнере нужно запускать с какими-нибудь специальными флагами для максимальной утилизации ресурсов. В любом случае, к порядку на этом ноутбуке я отношусь гораздо менее трепетно, поэтому просто установил и использую приложение с сайта Ollama.
|
||||
|
||||
<div id='why'></div>
|
||||
|
||||
## Зачем всё это нужно?
|
||||
<h2 id='why'>
|
||||
Зачем всё это нужно?
|
||||
</h2>
|
||||
|
||||
Конечно, ChatGPT умнее и умеет из коробки гораздо больше.<br>
|
||||
Конечно, ChatGPT требует меньше телодвижений для использования.<br>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue