Бульдоги под ковром.

Так что, вот обзор, с точки зрения скорее разработчика, чем пользователя, на тему "чего ждать неожиданного".
Итак, ниже приводятся ссылки. А вот описание.
Сначала были трансформеры, и они пытались угадывать следующее слово в тексте. Так, слово за слово, они гененировали полную хрень. Помню, при попытке подражать Хемингуэю, была рождена фраза "я являюсь карпом". Нормально.
Затем методы усовершенствовались, кластеры, на которых все это учили, выросли и данных стали скармливать больше. Тот же ChatGpt может принять задание "используя ROS2 и Питон, напиши программу по стыковке робота с зарядной станцией", и после двух-трех наводящих вопросов, вы получаете рабочий код, плюс понимание того, что такое aruca markers, что за алгоритм выводит вас на перпендикуляр к станции, и какие слать сообщения о заряде батареи. \
Не зная всего этого, вы потратите от двух до пяти часов в Гугле, а с ChatGpt я это сделал за пять минут, плюс пять - прежде, чем код был интегрирован в мой проект. Серьезное ускорение.
Тут все поняли, что вот они - денежки, и OpenAI (Open, Карл!) продался Майкрософту, который предлагает доступ к ChatGpt 4 за $20 в месяц. Что тут скажешь? "На его месте так поступил бы каждый".
А вот и нет.
Мета, ака Фейсбук, совершила очередной факап, простите, прорыв, передав свой бот Llama в research facilities на бета тестирование. Веса немедленно были выложены в сеть. И тут оказалось, что веса не патентуются. По крайней мере, пока.
Хакеры радостно взялись за дело, и применили подход, который называется квантизацией. Квантизация - это группа методов, я опишу только самый простой, потому, что общее описание потребует отдельного эссе под рабочим названием "обожемойэтопрекрасно".
Итак, веса - это числа в формате float64 и в диапазоне 0-1, либо -1 - 1. Умножаем их, например, на 100,000 и делаем их типа int16. Размер сети только что уменьшился в 4 раза, а скорость резко выросла, ибо мы больше не делаем вычислений с плавающей точкой.
Остальные методы еще круче, они снижают количество весов. Долго ли, коротко ли, весов из 150 миллиардов стало 7 миллиардов, и это дело спокойно поместилось в память персонального компьютера.
Там, ниже ссылки.
Но Llama - это всего лишь генератор продолжения текста. Не вопрос. Ребята из Стэнфорда провели fine tuning, и получилась Llama-alpaca, бот, отвечающий на вопросы. Он работает на ПС (но там внизу где-то ссылка на сайт, где можно попробовать). Он смог решить приведенную выше задачу по роботу и зарядной станции. В дефолтных настройках немногословен, в отличие от ChatGpt, но это лечится ползунками на сайте.
Дальше, народ вдохновился, взял сеть двухлетней давности, и применил тот же метод. И оказалось, что можно не заморачиваться с гигаданными - результат очень хорош и так. Хотя, конечно, не дашь роботу всего, он всего знать и не будет.
Правда, галлюцинировать этот бот тоже умеет, как и Llama и ChatGpt. Мой любимый тест "почему слово cool длиннее слова intelligent". Гы. С другой стороны, может быть, так бот выражает уважение. Да, крокодилы летают. Но нызэнько.
Больше того, хотя, казалось бы, куда уже. Там же, в ссылках, Jupiter notebook, который можно запустить на Google Colab, то есть, вам вообще не нужен ПС, всё на бесплатных ЛИЧНЫХ сетевых ресурсах.
=-====
Зачем нужны личные боты? Во-первых, мне почему-то кажется, что всё это станет монетизировано.
Во-вторых, что-то много стало разговоров насчет запрета ботов для не-боярских сословий. Ибо, как писал Оруэл, кто контролирует Интернет, тот контролирует будущее.
В-третьих, боты могут собирать личные данные так, как Гуглу и не снилось. Вообще, Гугл на фоне ChatGpt смотрится жалко, по крайней мере, для задач разработки.
Ну и наконец, главное. Как, по-вашему, добились политкорректности от ChatGpt? Нет, не обучением. Там крутится отдельная сеть, которая выполняет роль (Вартанов, Эй-Ай) "программы подавления излишней самостоятельности".
Так вот, боты по ссылкам ниже этой хренью не страдают.
https://www.listendata.com/2023/03/open-source-chatgpt-models-step-by-step.html
https://www.databricks.com/blog/2023/03/24/hello-dolly-democratizing-magic-chatgpt-open-models.html
https://huggingface.co/databricks/dolly-v1-6b
https://github.com/databrickslabs/dolly
Alpaca Jupiter:
https://colab.research.google.com/drive/1mR1Rlx_wSzDSrhv_YFXAL2rZBo4u3iVF?usp=sharing
https://github.com/deepanshu88/Alpaca-LoRA-Serve
Gpt4 Jupiter:
https://colab.research.google.com/drive/1z9_dlZ36yfq_Aab-LddRdVgWQv6V_69m?usp=sharing
!git clone --recurse-submodules
https://github.com/nomic-ai/gpt4all.git
Cerebras-GPT
https://colab.research.google.com/drive/1rrCX67xP0GTCAe8GSo6Z-JYIc7_u0L2c?usp=sharing
https://github.com/gmorenz/llama/tree/cpu
https://simonwillison.net/2023/Mar/11/llama/
https://til.simonwillison.net/llms/llama-7b-m2
https://github.com/facebookresearch/llama/pull/73
https://medium.com/@martin-thissen/llama-alpaca-chatgpt-on-your-local-computer-tutorial-17adda704c23
https://github.com/qwopqwop200/GPTQ-for-LLaMa
https://aituts.com/llama/
https://github.com/ggerganov/llama.cpp
https://github.com/soulteary/llama-docker-playground
https://github.com/facebookresearch/llama/pull/126/files
https://github.com/juncongmoo/pyllama
https://github.com/tloen/llama-int8
https://huggingface.co/spaces/tloen/alpaca-lora/tree/main
https://huggingface.co/spaces/tloen/alpaca-lora
https://github.com/cocktailpeanut/dalai
https://github.com/kuleshov/minillm
https://huggingface.co/tloen/alpaca-lora-7b/tree/main
https://github.com/tloen/alpaca-lora
https://replicate.com/blog/replicate-alpaca
https://medium.com/software-testing-pipeline/how-to-install-chatgpt-locally-cb5d3efdb0c8#:~:text=Yes%2C%20you%20can%20install%20ChatGPT%20locally%20on%20your%20machine.,which%20was%20developed%20by%20OpenAI.
https://mirror.xyz/xanny.eth/TBgwcBOoP9LZC6Mf570fG8VvZWhEn_uWZPHy3axIpsI
https://github.com/facebookresearch/llama/pull/73/commits/56de950af8a48c7cae221581e2e3e2c342b2ad82
https://github.com/ggerganov/llama.cpp
|
</> |