Баннер мобильный (3) Пройти тест

Нейросети Ollama и как с ними работать

Бесплатный ИИ на вашем компьютере

Инструкция

25 декабря 2024

Поделиться

Скопировано
Нейросети Ollama и как с ними работать

Содержание

    Расскажем, где взять и как установить на свой компьютер нейросетевые модели. Покажем, как с ними работать в консольном режиме и при помощи некоторых инструментов с графическим интерфейсом пользователя.

    Установка моделей и работа с ними в консольном режиме

    В наши дни нейросети приобрели довольно большую популярность. Они помогают создавать программное обеспечение, пишут тексты, рисуют вполне неплохие картины в разных жанрах и многое другое. Большинство этих нейросетей работают в режиме онлайн, то есть обработка запроса и генерация ответа происходит где-то на удаленном сервере.

    Пользователь лишь отправляет запрос, а через какое-то время ему приходит ответ с сервера, на котором работает нейросеть. Другими словами, компьютер пользователя работает как приемопередатчик: передал запрос — принял ответ. 

    Куда как интереснее, если нейросеть будет обитать на этом же компьютере, причем совершенно бесплатно. Но для этого ее надо на него установить. И с этим нам поможет фреймворк Ollama. Этот фреймворк предоставляет достаточно большое количество крупных языковых моделей, которые легко могут быть установлены и запущены локально на компьютере пользователя. 

    Перед тем как начать использовать модели, необходимо произвести установку Ollama. На этой странице можно скачать установщики для операционных систем macOS и Windows. Для этих систем установка Ollama не должна вызвать каких-либо затруднений. Просто запускаем скачанный установщик, а дальше все должно произойти автоматически. А вот пользователям Linux придется немного пообщаться с терминалом, в который нужно ввести следующую команду:

    curl -fsSL https://ollama.com/install.sh | sh

    Нажимаем Enter и ждем завершения выполнения установочного сценария. Теперь можно запустить какую-нибудь модель. На этой странице имеется список всех моделей, поддерживаемых Ollama. Для примера возьмем модель codellama. Вот ее отдельная страничка со всей необходимой информацией. Для ее запуска нужно скомандовать:

    ollama run codellama

    После установки и запуска модели мы увидим примерно следующее:

    После установки и запуска модели мы увидим примерно следующее
    Источник: автор статьи

    Модель приглашает нас отправить ей сообщение. Судя по описанию, эта модель должна неплохо справляться с генерацией кода. Попросим ее написать простенькую программу. В терминале нет подсветки синтаксиса, поэтому для наглядности приводим текст запроса и ответа вне терминала.

    Текст запроса:

    Напиши исходник программы-счетчика нажатий на кнопку на Python. В интерфейсе должны быть две кнопки. Одна увеличивает число на единицу, а другая - уменьшает. GUI пиши на Tkinter.

    А вот ответ нейросети:

    import tkinter as tk
    
    class Counter(tk.Tk):
        def __init__(self):
            super().__init__()
            self.title("Счетчик нажатий")
    
            self.button1 = tk.Button(self, text="+", command=self.increment)
            self.button1.pack()
    
            self.button2 = tk.Button(self, text="-", command=self.decrement)
            self.button2.pack()
    
            self.count = 0
            self.label = tk.Label(self, text=f"Счетчик: {self.count}")
            self.label.pack()
    
        def increment(self):
            self.count += 1
            self.update_counter()
    
        def decrement(self):
            if self.count > 0:
                self.count -= 1
                self.update_counter()
    
        def update_counter(self):
            self.label.config(text=f"Счетчик: {self.count}")
    
    if __name__ == "__main__":
        Counter().mainloop()
    Нажмите на кнопку "+", чтобы увеличить число, а на кнопку "-", чтобы уменьшить его.

    Нейросеть даже оставила в конце небольшую инструкцию по эксплуатации программы. Программа, кстати, вполне рабочая. Вот так она выглядит в запущенном виде:

    Счетчик нажатий
    Источник: автор статьи

    Чтобы запустить программу, нужно сохранить исходник в любом удобном месте под каким-нибудь подходящим именем, например таким, как counter.py, а потом скомандовать в терминале:

    python3 counter.py

    Для завершения работы с моделью достаточно отправить сообщение с текстом /bye. Для удаления ненужной модели можно воспользоваться командой rm, например так:

    ollama rm codellama

    Для обновления моделей можно использовать команду pull:

    ollama pull codellama

    А чтобы показать список всех установленных моделей, делаем так:

    ollama list

    Но это все работа в консольном режиме. Далеко не каждому такое по нраву. Поэтому дальше рассмотрим инструменты для работы с нейросетями с графическим интерфейсом пользователя.

    Ollama-GUI

    Этот инструмент легко установить при помощи пакетного менеджера PIP. В терминале пишем:

    pip install ollama-gui

    Жмем клавишу Enter и ждем завершения процесса установки. Для запуска программы командуем:

    ollama-gui

    Перед нами должно появиться такое окно:

    Ollama
    Источник: автор статьи

    В выпадающем списке сверху отображаются все установленные модели, из которых можно выбрать ту, с которой хочется пообщаться. С помощью следующей за списком кнопки открывается вот такой менеджер моделей:

    Менеджер моделей
    Источник: автор статьи

    Здесь можно загрузить новые модели и удалить старые. Для загрузки новой модели достаточно просто указать ее название в специальном поле и нажать на кнопку «Download». В главном окне у нас уже выбрана нейросеть под названием openchat. Давайте спросим ее о том, что она умеет. Вводим запрос в нижнее поле и нажимаем на кнопку «Send»:

    openchat
    Источник: автор статьи

    Ответ получен. Все работает. Рассмотрим еще один графический инструмент.

    Ollama-ui

    Данный инструмент является расширением для браузера Google Chrome и других браузеров на основе движка Chromium. Установить его можно из официального магазина расширений. После установки переходим в список расширений браузера в тулбаре, находим и запускаем расширение:

    Ollama-ui
    Источник: автор статьи

    Расширение запускается в отдельной вкладке. В выпадающем списке справа отображаются все установленные модели. Для теста выберем модель llama3.2 и попросим ее решить простой арифметический пример:

    Ollama-ui
    Источник: автор статьи

    Пример решен правильно.

    У расширения очень простой и понятный интерфейс, которым достаточно легко пользоваться. Настроек никаких нет, да они тут и не нужны. Перейдем к следующему инструменту.

    Open WebUI

    Этот инструмент для общения с нейросетями тоже работает в браузере, но не является расширением. Установить его можно при помощи PIP:

    pip install open-webui

    Но тут следует иметь в виду то, что на момент написания статьи эта штука работает только с Python версии 3.11, и если в системе установлена какая-то другая версия, то установка завершится с ошибкой. На помощь может прийти Conda. Она создаст виртуальное окружение с той версией Python, которая на данный момент необходима. Сначала нужно скачать и запустить установщик отсюда. Советуем загружать инсталлятор для Miniconda. Ее вполне должно хватить для нашей задачи. После установки вводим в терминале следующую команду:

    conda create -n open-webui python=3.11

    Эта команда как раз создаст нужное нам окружение. Далее нужно активировать созданное окружение:

    conda activate open-webui

    А вот теперь можно устанавливать нужный нам инструмент:

    pip install open-webui

    После установки запускаем сервер:

    open-webui server

    После запуска сервера в терминале увидим следующее:

    Open WebUI
    Источник: автор статьи

    В последней строке содержится адрес http://0.0.0.0:8080. Переходим по этому адресу при помощи любого браузера. От нас потребуется пройти простейшую регистрацию. Вводим имя, почту и придумываем какой-нибудь пароль. После регистрации заходим на наш локальный сервер и видим примерно следующее:

    Arena Model
    Источник: автор статьи

    Сверху в левом углу расположен список всех загруженных моделей. Сразу же нас приглашают пообщаться с Arena Model, которая была загружена автоматически при установке Open WebUI. Не будем отказываться и попросим ее решить простенькую задачу:

    Arena Model
    Источник: автор статьи

    Как видим, задача решена верно. 

    Чтобы завершить работу сервера, достаточно, находясь в терминале, нажать комбинацию клавиш Ctrl + C. Для того чтобы деактивировать окружение Conda, нужно скомандовать:

    conda deactivate

    Чтобы снова запустить Open WebUI, необходимо сначала активировать окружение и только потом запускать сервер. Понятно, что зайти на вышеуказанный адрес без запущенного сервера не получится. Подробнее об Open WebUI можно прочитать здесь. Теперь рассмотрим еще один инструмент с GUI.

    Alpaca

    Если инструменты, показанные в прошлых разделах, являются кросс-платформенными, то есть работают на большинстве десктопных ОС (Windows, macOS, Linux), то Alpaca создавалась чисто под Linux. Это приложение создано при помощи фреймворка GTK и библиотеки Libadwaita, поэтому идеально подходит для дистрибутивов с рабочим окружением GNOME.

    Установить Alpaca можно через магазин приложений Flathub. На этой странице магазина для установки приложения предоставляется возможность скачать установочный пакет в формате .flatpakref или воспользоваться специальными командами для терминала.

    После установки запускаем приложение:

    Alpaca
    Источник: автор статьи

    Сразу же нам предлагается открыть менеджер моделей. Открываем:

    Alpaca
    Источник: автор статьи

    Выберем какую-нибудь модель из этого списка. Возьмем, например, Llama3 от компании Meta*. Эта нейросеть создавалась для очень широкого круга задач. С ее помощью можно получать ответы на разные вопросы на естественном языке, генерировать код, анализировать тексты и многое другое. Загружаем нейросеть и после завершения процесса установки закрываем окно менеджера моделей. Можно сразу же начинать вводить первый запрос:

    Alpaca
    Источник: автор статьи

    Здесь уже предлагаются три варианта запроса на английском языке. Попросим рассказать нейросеть о чем-нибудь из области астрономии:

    Alpaca
    Источник: автор статьи

    Пришлось уточнять в запросе, что ответ нужен именно на русском языке. Без этого уточнения нейросеть будет писать ответ на английском языке. Как видим, ответ получился довольно развернутый. Нейросеть неплохо раскидала по группам состав Солнечной системы, указала все известные большие планеты и некоторые их спутники. Не забыла написать и о малых телах Солнечной системы. Информация, конечно, не совсем полная. Например, про те же кометы можно было бы написать, что они могут быть короткопериодические и долгопериодические.

    Сообщество KDE ведет разработку похожего приложения под названием Alpaka. На этой странице можно немного с ним ознакомиться. Приложение на момент написания статьи еще находится на стадии разработки и нигде не выпущено.

    Для Windows и macOS тоже есть парочка приложений для работы с моделями Ollama. Вот здесь можно найти приложение для Windows, а здесь — приложение для Mac, iPhone и iPad.

    Подведем итоги

    • Нейросети становятся все более популярными. Они помогают людям в их работе и творчестве.
    • Нейросетевые модели Ollama довольно просты в установке, и их достаточно легко использовать в консольном режиме.
    • Для работы с нейросетями имеются неплохие инструменты с графическим интерфейсом пользователя. Для тех, кто не любит работать с терминалом, некоторые из них могут быть удачным решением.

    * Компания Meta признана экстремистской организацией в России.

    Инструкция

    Поделиться

    Скопировано
    0 комментариев
    Комментарии