Оптимизация LLM с помощью C и запуск GPT, Lama, Whisper на вашем ноутбуке.

Оптимизация LLM с помощью C и запуск GPT, Lama, Whisper на ноутбуке.

В этой первой статье мы погрузимся в ggml, фантастическую библиотеку тензоров, созданную Георги Гергановым. Как она работает? Каков процесс создания тензоров? Можем ли мы начать с некоторых простых примеров?

Изображение Арьо Ярахмади на Unsplash

Содержание

  1. Реализация простой математической функции1.1 Определение контекста1.2 Инициализация тензоров1.3 Прямое вычисление и вычислительный граф1.4 Компиляция и выполнение
  2. Заключительные замечания по этой первой части
  3. Поддержите мою работу

Большие языковые модели (LLM) сейчас на пике популярности. Газеты тратят массу слов, чтобы описать новый наступающий мир, заверяя, что “ИИ наконец-то пришел”. Хотя LLM имеют ощутимый влияние на нашу жизнь, мы должны быть спокойными и критически анализировать всю ситуацию. Шум вокруг LLM напоминает мне шум, который был вокруг профессии “дата-сайентист” несколько лет назад. В 2014 году, когда я начал свою докторскую программу, я заметил постепенное увеличение количества вакансий для дата-сайентистов, которое достигло пика примерно в 2018 году. В то время газеты снова писали: “Дата-сайентист: профессия за 1 миллион долларов” или “Самая сексуальная профессия 21 века” – звучат ли эти заголовки знакомо с заголовками про LLM?

С одной стороны, LLM – это ВЕЛИКАЯ технология и шаг вперед к более общей AI-платформе. Эти модели являются отправной точкой для более глубокого погружения в AI, и я уверен, что однажды большинство приложений и технологий будут основываться на этих моделях. Однако, я часто вижу, в том числе и на VoAGI, некоторую неясность относительно этих моделей. Независимо от их мощи и фантастических результатов, эти модели слишком тяжелы для легкого запуска или обучения. Поэтому компании должны хорошо знать LLM, прежде чем принимать какие-либо решения в стратегическом направлении. Один из самых заметных моментов – это огромные затраты на память, которые требуют эти модели, а также требуемая для обучения и дорогостоящая инфраструктура для вывода.

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