pratical llms
1.0.0
Добро пожаловать в репозиторий для инженеров LLM (Large Language Model)! Эта коллекция блокнотов Jupyter предназначена для сбора практических аспектов нашей работы. Я соберу и добавлю Jupyter и/или скрипт для обучения и экспериментов.
Блокнот | Описание | URL |
---|---|---|
1_understanding_llms_benchmarks.ipynb | В этом блокноте представлены объяснения основных тестов, используемых в таблице лидеров openLLM. Его цель – помочь вам понять ключевые показатели и методологии, используемые при сравнительном анализе LLM. | Связь |
2_quantization_base.ipynb | Из этой записной книжки вы узнаете, как открыть модель Hugging Face в 8-битной и 4-битной версии с помощью библиотеки BitandBytes. Квантование — это важнейший метод оптимизации производительности модели и использования ресурсов, и этот блокнот поможет вам выполнить этот процесс. | Связь |
3_quantization_gptq.ipynb | Изучите квантование в формате GPTQ с помощью библиотеки auto-gptq в этом блокноте. Формат GPTQ набирает популярность благодаря своей эффективности при сжатии и квантовании больших моделей, таких как GPT. Узнайте, как использовать этот формат для своих моделей. | Связь |
4_quantization_exllamav2.ipynb | Как квантовать модель от ВЧ до exllamav2 | Связь |
5_sharding_and_offloading.ipynb | Как разделить модель на несколько частей. Это позволяет загружать его на разные устройства или загружать по одному, управляя памятью. Узнайте, как переместить некоторые уровни на процессор или даже на диск. | Связь |
6_gguf_quantization_and_inference.ipynb | Квантуйте модель в GGUF, используя библиотеку llama.cpp. Вывод на OpenAI-совместимом сервере. | Связь |
7_gguf_split_and_load.ipynb | Разделите квантованную модель GGUF на несколько частей, чтобы ее можно было легко использовать совместно. | Связь |
8_hqq_quantization.ipynb | Изучите квантование с использованием полуквадратичного квантования (HQQ) | Связь |
9_inference_big_model_cpu_plus_gpu.ipynb | В этом блокноте показано, как рассчитать объем ОЗУ, необходимый для квантовой модели GGUF, и как загрузить его в память, используя как ОЗУ, так и VRAM, оптимизируя количество слоев, которые можно выгрузить в графический процессор. Ноутбук демонстрирует загрузку Qwen/Qwen1.5-32B-Chat-GGUF в качестве примера в системе с видеопамятью T4 объемом 15 ГБ и примерно 32 ГБ оперативной памяти. | Связь |
a10_inference_llama3.ipynb | LLama3 выпущена. В этом блокноте показано, как запустить LLama3-8B-Instruct с половинной точностью, если у вас есть доступ к графическому процессору с 24 ГБ видеопамяти, квантованному до 8 бит, если у вас 10 ГБ видеопамяти, и показано, как запустить версию Q8 GGUF для достижения максимальной производительности, если у вас есть только 10 ГБ видеопамяти. | Связь |
a11_llm_guardrails_using_llama3_guard.ipynb | Защитите свою серверную часть и генерирующие приложения искусственного интеллекта с помощью LLama3-guard-2. В этой записной книжке я покажу вам, как настроить сервер с использованием 10 ГБ видеопамяти и как выполнять логические выводы с помощью HTTP-запросов POST. | Связь |
a12_speculative_decoding.ipynb | В блокноте практически описывается и демонстрируется метод «спекулятивного декодирования» для увеличения количества токенов в секунду, генерируемых целевой моделью, за счет использования меньшего и более легкого чернового варианта модели. Пример реализован на LLama-3-70B-Instruct (Target) и LLama-3-8B-Instruct (Черновик). | Связь |
a13_inference_vision_llm.ipynb | В блокноте показано, как сделать простой вывод с помощью LLM-видения. В качестве примера я выбрал недавно выпущенную инструкцию Microsoft Phi-3-vision-128k. Модель имеет лицензию MIT, поэтому ее можно использовать в собственных приложениях без каких-либо ограничений. Модель может работать на одной Nvidia L4. | Связь |
a14_llm_as_evaluator.ipynb | В записной книжке показано, как использовать LLM в качестве судьи с помощью Prometheus 2. В записной книжке показано, как оценивать ответ, возвращаемый любым нашим LLM или конвейером приложений. | Связь |
a15_llm_evaluation.ipynb | В блокноте показано, как использовать EleutherAI/lm-evaluation-harness для оценки LLM по общим критериям, которые также используются в официальных таблицах лидеров. Процесс аналогичен автоматическому, когда вы отправляете модель в таблицу лидеров. | Связь |
a16_synthetic_data_generation.ipynb | В этом блокноте я создал собственный класс для создания синтетического набора данных QA из входного файла, используя Llama-3-8B в качестве LLM. Скрипт также демонстрирует, как собрать и запустить новую версию llama-server на llama-3-8b-Q_8 GGUF. | Связь |
a17_sglan_serving_llm_multiusers.ipynb | В этом блокноте я показываю все шаги по эффективному развертыванию LLama3.1-8B-FP8 на пользовательском сервере с использованием SGLang и обслуживанию 64 потенциально параллельных пользователей, сохраняя при этом хорошую производительность. | Связь |
a18_jailbreak_control_using_promptguard.ipynb | Пробуем новый PromptGuard-86M для джейлбрейка. Спойлер: в данный момент модель кажется сломанной или совсем плохой. | Связь |
a19_document_information_and_table_extraction.ipynb | В этом блокноте показано, как использовать мультимодальную грамотную модель (Космос 2.5) для точного и эффективного извлечения текста и таблиц без использования платных облачных сервисов. Модель работает на вашем личном графическом процессоре, обеспечивая конфиденциальность и безопасность ваших данных. | Связь |
a20_finetuning_llm_unsloth.ipynb | В этом блокноте показано, как точно настроить Phi-3.5-мини-инструкцию с использованием unsloth на наборе данных ВЧ цепочки «мыслящей» структуры. | Связь |
Для получения дополнительных ресурсов и поддержки обращайтесь к сообществу или обратитесь к следующему:
Приятного обучения и экспериментов с LLM!