Большая модель llm: Оллама развертывает llama3, чтобы изучить и начать работу с llm
Большая модель llm: Оллама развертывает llama3, чтобы изучить и начать работу с llm

1. Знакомство с ламой3

Llama 3 — это авторегрессионная языковая модель, использующая оптимизированную архитектуру преобразователя. Адаптированная версия использует контролируемую точную настройку (SFT) и обучение с подкреплением с обратной связью с человеком (RLHF), чтобы соответствовать предпочтениям человека в отношении полезности и безопасности.

Связанные параметры

данные обучения

Количество параметров

длина контекста

Внимание к групповым запросам (GQA)

предварительноданные обучения

Срок действия знаний

Llama 3

Общедоступные онлайн-наборы данных

8B

8K

да

15T+

март 2023 г.

Llama 3

70B

8K

да

15T+

декабрь 2023 г.

Llama3 обучается в двух новых центральных кластерах Meta, включающих более 49 000 графических процессоров Nvidia H100.

Llama3Большой Модель Затем он достигает400B,все еще тренируюсь,Целью является достижение мультимодальных и многоязычных функций.,Ожидается, что эффект будет таким же, как у GPT 4/GPT 4 В эквивалентно.

2. Установка Олламы

1. Знакомство с Олламой

Ollama да Инструмент с открытым исходным кодом Большой языковой модели (LLM), который позволяет пользователям запускать и развертывать большую языковую модель на локальном компьютере. Оллама Разработан как основа для упрощения Docker Процесс развертывания и управления большими языковыми моделями в контейнерах делает этот процесс быстрым и простым. Пользователи могут быстро запускать локальные операции, такие как Llama 3 Такая большая языковая модель с открытым исходным кодом.

Официальный адрес сайта: https://ollama.com/download

Ollama поддерживает несколько платформ, включая Mac и Linux, и предоставляет образы Docker для упрощения процесса установки. Пользователи могут импортировать и настраивать больше моделей, написав Modelfile, который аналогичен роли Dockerfile. Ollama также имеет REST API для запуска моделей и управления ими, а также набор инструментов командной строки для взаимодействия с моделями.

оллама экология

GitHub - ollama/ollama: Get up and running with Llama 3, Mistral, Gemma, and other large language models.

  • Клиентский рабочий стол, Интернет
  • Инструменты командной строки
  • Инструменты базы данных
  • Инструменты управления пакетами
  • Библиотека классов

2. Установите олламу

Автоматическая установка Linux очень проста, просто выполните:

yum update -y nss curl libcurl

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

Скачать сертификат Curl:

Язык кода:javascript
копировать
wget https://curl.se/ca/cacert.pem --no-check-certificate

Добавить сертификат Curl

Язык кода:javascript
копировать
cat cacert.pem >> /etc/pki/tls/certs/ca-bundle.crt

sh install.sh

Язык кода:javascript
копировать
curl -fsSL https://ollama.com/install.sh | sh

3. Запустите олламу

nohup ollama serve &

Доступ к веб-интерфейсу Ollama: откройте браузер и посетите http://localhost:11434.

Если страница появляетсяOllama is бег. Это значит, что программа нормальная.

(Если ваш демон Docker работает на удаленном хосте, замените localhost соответствующим IP-адресом). Вы увидите веб-интерфейс Ollama, который позволит вам начать создавать, обучать и развертывать модели глубокого обучения.

Ensure that the Ollama server is properly configured to accept incoming connections from all origins. To do this, make sure the server is launched with the OLLAMA_ORIGINS=* environment variable, as shown in the following command:

Язык кода:javascript
копировать
OLLAMA_HOST=0.0.0.0 OLLAMA_ORIGINS=* ollama serve

This configuration allows Ollama to accept connections from any source.

Доступ ко всем местам,Используйте переменные настройки,В противном случае можно получить только да127.0.0.1доступ:

export OLLAMA_HOST=0.0.0.0 export OLLAMA_ORIGINS=*

nohup ollama serve &

Чтобы разрешить внешней сетевой среде доступ к службе, необходимо настроить HOST.

Откройте файл конфигурации: vim /etc/systemd/system/ollama.service и измените переменную Environment в соответствии с ситуацией:

В среде сервера: Environment="OLLAMA_HOST=0.0.0.0:11434" В среде виртуальной машины: Environment="OLLAMA_HOST=IP-адрес интрасети сервера: 11434"

Способ первый:осуществлятьcurl http://ip:11434Заказ,нравитьсявозвращаться“Ollama is работает", это означает, что соединение нормальное.

Способ 2. Посетите http://ip:11434 в браузере, если на странице отображается текст «Оллама. is работает", это означает, что соединение нормальное.

3. Скачайте и установите модель llama3.

1. скачать лама3

По умолчанию скачатьиздаллама3:8b. Двоеточие здесь обозначает имя Модель.,Тег после двоеточия представляет,Вы можете просмотреть все теги llama3iz здесь

Язык кода:javascript
копировать
ollama pull llama3:8b

По умолчанию скачатьиздаллама3:8b. Двоеточие здесь обозначает имя Модель.,Тег после двоеточия представляет,Вы можете просмотреть все теги llama3iz здесь

ollama pull llama3:70b

2. Запускаем модель llama3.

Язык кода:javascript
копировать
ollama run llama3

Приведенная выше команда автоматически извлечет модель и выполнит проверку подписи sha256. После завершения обработки он автоматически войдет в рабочую среду llama3. Вы можете задавать вопросы на китайском или английском языке и выйти, нажав Ctrl+D.

4. Доступ к сервисам API

1. быстрый интерфейс:

Язык кода:javascript
копировать
curl http://localhost:11434/api/generate -d '{
    "model":"llama3:70b",
    "prompt": «Пожалуйста, переведите на китайский, корейский и японский языки соответственно. -> Meta Llama 3: The most capable openly available LLM to date",
    "stream": false
}'

Параметры объясняются следующим образом:

  • модель (обязательно): Название модели.
  • подсказка: текст подсказки, используемый для генерации ответа.
  • изображения (необязательно): Содержит список мультимедийных моделей (например, llava), изображений и кодировок base64.

Расширенные параметры (необязательно):

  • формат: Возвращает формат ответа. На данный момент поддерживается только формат json.
  • Опции: Другие параметры модели, такие как температура, перечислены в документации файла модели.
  • system: системное сообщение, используемое для отмены системного сообщения, определенного в файле модели.
  • шаблон: использовать шаблон приглашения, перезаписывая шаблон, определенный в файле модели.
  • контекст: параметр контекста, возвращаемый из предыдущего запроса /generate, который можно использовать для сохранения краткой памяти разговора.
  • поток: если ложь,тогда ответ будет как единый ответный объект,Вместо серии объектных потоков.
  • raw: если true, к тексту приглашения не будет применено форматирование. Необработанный параметр можно использовать, если при запросе API указан полный шаблонный текст приглашения.
  • Keep_alive: контролирует, как долго Модель остается загруженной в память после запроса (по умолчанию — 5 минут).

Возврат данных JSON

Язык кода:javascript
копировать
{
   
   
    "model": "llama3",
    "created_at": "2024-04-23T08:05:11.020314Z",
    "response": "Here are the translations:\n\n**Chinese:** 《Meta Llama 3》: Самый мощный общедоступный LLM на сегодняшний день.\n\n**Корейский:** 《Meta Llama 3》:현재 가장 강력한 공개 사용 가능한 LLM\n\n**Japanese:**\n\n《Meta Llama 3》:На данный момент это самый сильный общедоступный LLM\n\n\n\nПримечание: (Meta Llama 3) is a literal translation, as there is no direct equivalent for \"Meta\" in Japanese. In Japan, it's common to use the English term \"\" or \"\" when referring to Meta.",
    "done": true,
    "context": [
        ...
    ],
    "total_duration": 30786629492,
    "load_duration": 3000782,
    "prompt_eval_count": 32,
    "prompt_eval_duration": 6142245000,
    "eval_count": 122,
    "eval_duration": 24639975000
}

Возвращаемое значение объясняется следующим образом:

  • total_duration: общее время, затраченное на генерацию ответа.
  • load_duration: время загрузки модели в наносекундах.
  • Prompt_eval_count: количество токенов в тексте приглашения.
  • Prompt_eval_duration: время в наносекундах, потраченное на оценку текста приглашения.
  • eval_count: количество токенов в сгенерированном ответе.
  • eval_duration: время, необходимое для генерации ответа в наносекундах.
  • контекст: кодировка разговора, используемая в этом ответе, которую можно отправить в следующем запросе, чтобы сохранить разговор в памяти.
  • ответ: Если ответ да в потоке из формы появитсяиз,пусто, если не да находится в потоке из формы появляется;,затем содержит полный ответ.

Чтобы рассчитать, как быстро генерируется ответ (в токенах в секунду (токен/с), вы можете вычислить eval_count/eval_duration.

2. Интерфейс чата

curl http://localhost:11434/api/chat -d '{ "model": "llama3:70b", "messages": [ { "role": "user", "content": "why is the sky blue?" } ] }'

5. Настройте Open-WebUI

Вы можете напрямую использовать программу diify с открытым исходным кодом. opsинтегрированный:https://guisu.blog.csdn.net/article/details/138978737?spm=1001.2014.3001.5502

Два способа установки:

1. развертывание докера:

Язык кода:javascript
копировать
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

Посмотреть шлюз:Найти тегиdefaultили0.0.0.0иззапись маршрутизации,этоиз Адрес шлюзадавам нужноизhost-gateway

ip route

docker run -d -p 3000:8080 --add-host=host.docker.internal:172.25.191.253 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

Чтобы использовать Docker Установить Open-webui, вы можете создать Docker контейнер и запустим в нем Open-webui Служить。нижеда Установить Open-webui Шаги:

Извлеките изображение Open WebUI:

Сначала вам нужно извлечь образ Open WebUI из Docker Hub. Запустите следующую команду в терминале или командной строке:

docker search open-webui

docker pull wanjinyoung/open-webui-main

Запустите контейнер Open WebUI:

Запустите службу Open WebUI в контейнере, используя следующую команду:

docker run -d -p 3000:8080 --add-host=host.docker.internal:172.25.191.253 -v open-webui:/app/backend/data --name open-webui --restart always docker.io/wanjinyoung/open-webui-main:main

Это запустит контейнер под названием «open-webui» в фоновом режиме и сопоставит порт 3000 внутри контейнера с портом 3000 на хосте.

Чтобы получить доступ к Open WebUI: откройте браузер и посетите http://localhost:3000. Вы должны увидеть пользовательский интерфейс Open WebUI, который позволяет взаимодействовать с платформой Ollama, управлять моделями и контролировать процесс обучения.

2. Развертывание исходного кода:

Установите Node.js

Существует множество веб-интерфейсов, поддерживающих Ollama. Автор испытал самый популярный веб-интерфейс (github.com/open-webui/…%EF%BC%8C%E9%9C%80%E8%A6%81Docker%E6%88%96). %E8%80%85Kubernetes%E9%83%A8%E7%BD%B2 %EF%BC%8C%E6%9C%89%E7%82%B9%E9%BA%BB%E7%83%A6%EF%BC%8C%E8%80%8C%E4%B8 %94%E9%95%9C%E5%83%8F%E4%B9%9F%E5%B7%AE%E4%B8%8D%E5%A4%9A1G%E3%80%82)

В этой статье рекомендуется использоватьollama-webui-lite(github.com/ollama-webu…%EF%BC%8C%E9%9D%9E%E5%B8%B8%E8%BD%BB%E9 %87%8F%E7%BA%A7%EF%BC%8C%E5%8F%AA%E9%9C%80%E8%A6%81%E4%BE%9D%E8%B5%96Node.js%E3 %80%82)

Настройка внутреннего зеркала NPM

Внутренний доступ к официальному источнику изNPM немного медленный.,Автор рекомендует отечественным пользователям использовать Tencent.NPMисточник(Mirrors.cloud.tencent.com/npm/), до того, как автор использовал...

Откройте терминал и выполните следующую команду, чтобы настроить NPM на использование источника Tencent:

Язык кода:javascript
копировать
npm config set registry http://mirrors.cloud.tencent.com/npm/
Развертывание веб-интерфейса

Откройте терминал и выполните следующую команду Развертывание веб-интерфейса:

Язык кода:javascript
копировать
git clone https://github.com/ollama-webui/ollama-webui-lite.git
cd ollama-webui-lite
npm install
npm run dev

WebUI уже прослушивает локальный порт 3000:

3. Настройка и использование

Перейдите на страницу Open WebUI, нажмите «Настройки», нажмите «Модель» в настройках, введите модель, которую нам нужно загрузить, и нажмите «Загрузить». Мы сможем использовать ее после завершения загрузки.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose