Последние новости
hf-multimodal
и vllm-vlm
, а также задачу mmmu
в качестве функции прототипа. . Мы приглашаем пользователей опробовать эту находящуюся в разработке функцию и протестировать ее на себе, а также предлагаем им попробовать lmms-eval
, замечательный проект, изначально созданный на основе lm-evaluation-harness, для более широкого спектра мультимодальных задач. модели и особенности.local-completions
для оценки модели.Доступна новая версия lm-evaluation-harness v0.4.0 !
Новые обновления и функции включают в себя:
Более подробную информацию можно найти на наших обновленных страницах документации в docs/
.
Разработка main
ветки будет продолжена, и мы призываем вас оставить нам отзыв о том, какие функции желательны и как улучшить библиотеку дальше, или задавать вопросы либо в вопросах, либо в PR на GitHub, либо в дискорде EleutherAI!
Этот проект предоставляет единую среду для тестирования моделей генеративного языка на большом количестве различных задач оценки.
Функции:
Средство оценки языковой модели является серверной частью для ? Популярная таблица лидеров Open LLM от Hugging Face использовалась в сотнях статей и используется внутри десятков организаций, включая NVIDIA, Cohere, BigScience, BigCode, Nous Research и Mosaic ML.
Чтобы установить пакет lm-eval
из репозитория github, запустите:
git clone --depth 1 https://github.com/EleutherAI/lm-evaluation-harness
cd lm-evaluation-harness
pip install -e .
Мы также предоставляем ряд дополнительных зависимостей для расширенной функциональности. Подробная таблица доступна в конце этого документа.
Руководство пользователя с подробным описанием полного списка поддерживаемых аргументов представлено здесь, а также на терминале при вызове lm_eval -h
. Альтернативно вы можете использовать lm-eval
вместо lm_eval
.
Список поддерживаемых задач (или групп задач) можно просмотреть с помощью lm-eval --tasks list
. Здесь представлены описания задач и ссылки на соответствующие подпапки.
transformers
Hugging Face Чтобы оценить модель, размещенную в HuggingFace Hub (например, GPT-J-6B) на hellaswag
вы можете использовать следующую команду (предполагается, что вы используете CUDA-совместимый графический процессор):
lm_eval --model hf
--model_args pretrained=EleutherAI/gpt-j-6B
--tasks hellaswag
--device cuda:0
--batch_size 8
Дополнительные аргументы можно передать конструктору модели с помощью флага --model_args
. В частности, это поддерживает распространенную практику использования функции revisions
в Hub для хранения частично обученных контрольных точек или для указания типа данных для запуска модели:
lm_eval --model hf
--model_args pretrained=EleutherAI/pythia-160m,revision=step100000,dtype= " float "
--tasks lambada_openai,hellaswag
--device cuda:0
--batch_size 8
В Huggingface поддерживаются модели, загружаемые как через transformers.AutoModelForCausalLM
(авторегрессионные модели в стиле GPT, использующие только декодер), так и transformers.AutoModelForSeq2SeqLM
(например, модели кодировщика-декодера, такие как T5).
Выбор размера пакета можно автоматизировать, установив для флага --batch_size
auto
. При этом будет выполнено автоматическое определение наибольшего размера пакета, который поместится на вашем устройстве. В задачах, где существует большая разница между самым длинным и самым коротким примером, может быть полезно периодически пересчитывать самый большой размер пакета, чтобы получить дальнейшее ускорение. Для этого добавьте :N
к указанному выше флагу, чтобы автоматически пересчитать наибольший размер пакета N
раз. Например, чтобы пересчитать размер пакета 4 раза, команда будет такой:
lm_eval --model hf
--model_args pretrained=EleutherAI/pythia-160m,revision=step100000,dtype= " float "
--tasks lambada_openai,hellaswag
--device cuda:0
--batch_size auto:4
Примечание
Точно так же, как вы можете указать локальный путь к transformers.AutoModel
, вы также можете указать локальный путь к lm_eval
через --model_args pretrained=/path/to/model
accelerate
Hugging FaceМы поддерживаем три основных способа использования библиотеки ускорения Hugging Face для оценки нескольких графических процессоров.
Для выполнения параллельной оценки данных (когда каждый графический процессор загружает отдельную полную копию модели) мы используем средство запуска accelerate
следующим образом:
accelerate launch -m lm_eval --model hf
--tasks lambada_openai,arc_easy
--batch_size 16
(или через accelerate launch --no-python lm_eval
).
В случаях, когда ваша модель может поместиться на одном графическом процессоре, это позволяет вам выполнять оценку на K графических процессорах в K раз быстрее, чем на одном.
ВНИМАНИЕ : эта настройка не работает с сегментированием модели FSDP, поэтому в accelerate config
FSDP необходимо отключить или использовать опцию NO_SHARD FSDP.
Второй способ использования accelerate
для оценки нескольких графических процессоров — это когда ваша модель слишком велика, чтобы поместиться на одном графическом процессоре.
В этом случае запустите библиотеку вне средства запуска accelerate
, но передав parallelize=True
в --model_args
следующим образом:
lm_eval --model hf
--tasks lambada_openai,arc_easy
--model_args parallelize=True
--batch_size 16
Это означает, что веса вашей модели будут разделены между всеми доступными графическими процессорами.
Для более опытных пользователей или даже более крупных моделей мы также разрешаем использовать следующие аргументы, когда parallelize=True
:
device_map_option
: Как разделить вес модели между доступными графическими процессорами. по умолчанию установлено «авто».max_memory_per_gpu
: максимальный объем памяти графического процессора, используемый каждым графическим процессором при загрузке модели.max_cpu_memory
: максимальный объем памяти ЦП, который будет использоваться при выгрузке весов модели в ОЗУ.offload_folder
: папка, в которую при необходимости веса моделей будут выгружены на диск.Третий вариант — использовать оба одновременно. Это позволит вам воспользоваться преимуществами как параллелизма данных, так и сегментирования модели, что особенно полезно для моделей, которые слишком велики для размещения на одном графическом процессоре.
accelerate launch --multi_gpu --num_processes {nb_of_copies_of_your_model}
-m lm_eval --model hf
--tasks lambada_openai,arc_easy
--model_args parallelize=True
--batch_size 16
Чтобы узнать больше о параллелизме моделей и о том, как его использовать с библиотекой accelerate
, см. документацию по ускорению.
Предупреждение: мы изначально не поддерживаем многоузловую оценку с использованием типа модели hf
! Пожалуйста, обратитесь к нашей интеграции библиотеки GPT-NeoX для примера кода, в котором написан собственный сценарий оценки для нескольких компьютеров.
Примечание. В настоящее время мы не поддерживаем изначально многоузловые оценки и советуем использовать либо внешний сервер для выполнения запросов на вывод, либо создать собственную интеграцию с вашей распределенной платформой, как это делается для библиотеки GPT-NeoX.
nemo
NVIDIA NeMo Framework — это генеративная среда искусственного интеллекта, созданная для исследователей и разработчиков pytorch, работающих над языковыми моделями.
Чтобы оценить модель nemo
, начните с установки NeMo, следуя документации. Мы настоятельно рекомендуем использовать контейнер NVIDIA PyTorch или NeMo, особенно если возникают проблемы с установкой Apex или любых других зависимостей (см. последние выпущенные контейнеры). Также установите оценочную библиотеку lm, следуя инструкциям в разделе «Установка».
Модели NeMo можно получить через каталог NVIDIA NGC или на странице NVIDIA Hugging Face. В NVIDIA NeMo Framework есть скрипты преобразования для преобразования контрольных точек hf
популярных моделей, таких как llama, falcon, mixtral или mpt, в nemo
.
Запустите модель nemo
на одном графическом процессоре:
lm_eval --model nemo_lm
--model_args path= < path_to_nemo_model >
--tasks hellaswag
--batch_size 32
Рекомендуется распаковать модель nemo
, чтобы избежать распаковки внутри докер-контейнера — это может привести к переполнению дискового пространства. Для этого вы можете запустить:
mkdir MY_MODEL
tar -xvf MY_MODEL.nemo -c MY_MODEL
nemo
По умолчанию используется только один графический процессор. Но мы поддерживаем либо репликацию данных, либо параллелизм тензоров/конвейеров во время оценки на одном узле.
model_args
devices
количество запускаемых реплик данных. Например, команда для запуска 8 реплик данных на 8 графических процессорах: torchrun --nproc-per-node=8 --no-python lm_eval
--model nemo_lm
--model_args path= < path_to_nemo_model > ,devices=8
--tasks hellaswag
--batch_size 32
model_args
для tensor_model_parallel_size
и/или pipeline_model_parallel_size
. Кроме того, вам также необходимо настроить devices
, равные произведению tensor_model_parallel_size
и/или pipeline_model_parallel_size
. Например, команда для использования одного узла из 4 графических процессоров с тензорным параллелизмом 2 и конвейерным параллелизмом 2: torchrun --nproc-per-node=4 --no-python lm_eval
--model nemo_lm
--model_args path= < path_to_nemo_model > ,devices=4,tensor_model_parallel_size=2,pipeline_model_parallel_size=2
--tasks hellaswag
--batch_size 32
Обратите внимание, что рекомендуется заменить команду python
на torchrun --nproc-per-node=<number of devices> --no-python
чтобы облегчить загрузку модели в графические процессоры. Это особенно важно для больших контрольных точек, загруженных в несколько графических процессоров.
Пока не поддерживается: многоузловая оценка и комбинации репликации данных с тензорным или конвейерным параллелизмом.
vLLM
Мы также поддерживаем vLLM для более быстрого вывода поддерживаемых типов моделей, особенно быстрее при разделении модели на несколько графических процессоров. Для одного или нескольких графических процессоров — тензорный параллель, параллель данных или их комбинация — вывод, например:
lm_eval --model vllm
--model_args pretrained={model_name},tensor_parallel_size={GPUs_per_model},dtype=auto,gpu_memory_utilization=0.8,data_parallel_size={model_replicas}
--tasks lambada_openai
--batch_size auto
Чтобы использовать vllm, выполните pip install lm_eval[vllm]
. Полный список поддерживаемых конфигураций vLLM см. в нашей интеграции vLLM и документации vLLM.
vLLM иногда отличается по выводам от Huggingface. Мы рассматриваем Huggingface как эталонную реализацию и предоставляем сценарий для проверки достоверности результатов vllm по сравнению с HF.
Кончик
Для обеспечения максимальной производительности мы рекомендуем по возможности использовать --batch_size auto
для vLLM, чтобы задействовать его функцию непрерывной пакетной обработки!
Кончик
Передача max_model_len=4096
или другого разумного значения по умолчанию в vLLM через аргументы модели может привести к ускорению или предотвращению ошибок нехватки памяти при попытке использовать автоматический размер пакета, например, для Mistral-7B-v0.1, максимальная длина которого по умолчанию равна 32к.
Наша библиотека также поддерживает оценку моделей, обслуживаемых через несколько коммерческих API, и мы надеемся реализовать поддержку наиболее часто используемых высокопроизводительных локальных/автономных серверов вывода.
Чтобы вызвать размещенную модель, используйте:
export OPENAI_API_KEY=YOUR_KEY_HERE
lm_eval --model openai-completions
--model_args model=davinci
--tasks lambada_openai,hellaswag
Мы также поддерживаем использование вашего собственного локального сервера вывода с серверами, которые отражают API-интерфейсы OpenAI Completions и ChatCompletions.
lm_eval --model local-completions --tasks gsm8k --model_args model=facebook/opt-125m,base_url=http://{yourip}:8000/v1/completions,num_concurrent=1,max_retries=3,tokenized_requests=False,batch_size=16
Обратите внимание, что для моделей, размещенных на внешнем сервере, такие конфигурации, как --device
, которые определяют место размещения локальной модели, не должны использоваться и не работают. Точно так же, как вы можете использовать --model_args
для передачи произвольных аргументов конструктору модели для локальных моделей, вы можете использовать его для передачи произвольных аргументов в API модели для размещенных моделей. См. документацию службы хостинга для получения информации о том, какие аргументы они поддерживают.
API или сервер вывода | Реализовано? | --model <xxx> имя | Поддерживаемые модели: | Типы запросов: |
---|---|---|---|---|
Завершения OpenAI | ✔️ | openai-completions , local-completions | Все модели OpenAI Completions API | generate_until , loglikelihood , loglikelihood_rolling |
Чат OpenAIЗавершения | ✔️ | openai-chat-completions , local-chat-completions | Все модели ChatCompletions API | generate_until (без журнальных проб) |
антропный | ✔️ | anthropic | Поддерживаемые антропные двигатели | generate_until (без журнальных проб) |
Антропный чат | ✔️ | anthropic-chat , anthropic-chat-completions | Поддерживаемые антропные двигатели | generate_until (без журнальных проб) |
Текстсинт | ✔️ | textsynth | Все поддерживаемые двигатели | generate_until , loglikelihood , loglikelihood_rolling |
Согласовать | ⌛ — заблокировано из-за ошибки API Cohere | Н/Д | Все механизмы cohere.generate() | generate_until , loglikelihood , loglikelihood_rolling |
Llama.cpp (через llama-cpp-python) | ✔️ | gguf , ggml | Все модели поддерживаются llama.cpp | generate_until , loglikelihood , (оценка недоумения еще не реализована) |
vLLM | ✔️ | vllm | Большинство моделей каузального языка HF | generate_until , loglikelihood , loglikelihood_rolling |
Мамба | ✔️ | mamba_ssm | Языковые модели архитектуры Mamba через пакет mamba_ssm | generate_until , loglikelihood , loglikelihood_rolling |
Huggingface Optimum (Каузальные LM) | ✔️ | openvino | Любой AutoModelForCausalLM, предназначенный только для декодера, преобразованный с помощью Huggingface Optimum в формат промежуточного представления OpenVINO™ (IR). | generate_until , loglikelihood , loglikelihood_rolling |
Нейрон через AWS Inf2 (причинные LM) | ✔️ | neuronx | Любой AutoModelForCausalLM, предназначенный только для декодера, поддерживается для запуска на изображении Huggingface-ami для inferentia2. | generate_until , loglikelihood , loglikelihood_rolling |
Нейронная магия DeepSparse | ✔️ | deepsparse | Любой LM из SparseZoo или на HF Hub с тегом «deepsparse». | generate_until , loglikelihood |
Нейронная магия SparseML | ✔️ | sparseml | Любой AutoModelForCausalLM только для декодера из SparseZoo или HF Hub. Особенно полезно для моделей с квантованием, таких как zoo:llama2-7b-gsm8k_llama2_pretrain-pruned60_quantized | generate_until , loglikelihood , loglikelihood_rolling |
Ваш локальный сервер вывода! | ✔️ | local-completions или local-chat-completions | Поддержка серверов, совместимых с OpenAI API, с простой настройкой для других API. | generate_until , loglikelihood , loglikelihood_rolling |
Модели, которые не предоставляют логиты или журнальные пробы, можно использовать только с задачами generate_until
, тогда как локальные модели или API, которые предоставляют логиты/логиты своих подсказок, могут запускаться для всех типов задач: generate_until
, loglikelihood
, loglikelihood_rolling
и multiple_choice
.
Дополнительную информацию о различных типах output_types
задач и типах запросов модели см. в нашей документации.
Примечание
Для достижения наилучшей производительности с API модели закрытого чата, такими как Anthropic Claude 3 и GPT-4, мы рекомендуем сначала внимательно просмотреть несколько примеров выходных данных, используя --limit 10
чтобы убедиться, что извлечение ответов и оценка генеративных задач выполняются должным образом. предоставление system="<some system prompt here>"
внутри --model_args
для антропных-чат-завершений, чтобы указать модели, в каком формате отвечать, может быть полезным.
Ряд других библиотек содержат сценарии для вызова программы eval через свою библиотеку. К ним относятся GPT-NeoX, Megatron-DeepSpeed и mesh-transformer-jax.
Чтобы создать свою собственную интеграцию, вы можете следовать инструкциям из этого руководства.
Примечание
Для задач, неподходящих для прямой оценки — либо из-за рисков, связанных с выполнением ненадежного кода, либо из-за сложностей в процессе оценки — доступен флаг --predict_only
для получения декодированных поколений для последующей оценки.
Если у вас Mac, совместимый с Metal, вы можете запустить программу оценки с помощью серверной части MPS, заменив --device cuda:0
на --device mps
(требуется PyTorch версии 2.1 или выше). Обратите внимание, что серверная часть PyTorch MPS все еще находится на ранних стадиях разработки, поэтому могут существовать проблемы с корректностью или неподдерживаемые операции. Если вы наблюдаете странности в производительности модели на серверной части MPS, мы рекомендуем сначала проверить, совпадают ли прямые проходы вашей модели на --device cpu
и --device mps
.
Примечание
Вы можете проверить, как выглядят входы LM, выполнив следующую команду:
python write_out.py
--tasks < task1,task2,... >
--num_fewshot 5
--num_examples 10
--output_base_path /path/to/output/folder
При этом для каждой задачи будет записан один текстовый файл.
Чтобы проверить целостность данных задач, которые вы выполняете, помимо запуска самих задач, вы можете использовать флаг --check_integrity
:
lm_eval --model openai
--model_args engine=davinci
--tasks lambada_openai,hellaswag
--check_integrity
Для моделей, загруженных с помощью библиотеки transformers
HuggingFace, любые аргументы, предоставленные через --model_args
передаются непосредственно соответствующему конструктору. Это означает, что все, что вы можете сделать с AutoModel
, можно сделать с помощью нашей библиотеки. Например, вы можете передать локальный путь через pretrained=
или использовать модели, настроенные с помощью PEFT, приняв вызов, который вы выполнили бы для оценки базовой модели, и добавив ,peft=PATH
к аргументу model_args
:
lm_eval --model hf
--model_args pretrained=EleutherAI/gpt-j-6b,parallelize=True,load_in_4bit=True,peft=nomic-ai/gpt4all-j-lora
--tasks openbookqa,arc_easy,winogrande,hellaswag,arc_challenge,piqa,boolq
--device cuda:0
Модели, представленные в виде дельта-весов, можно легко загрузить с помощью библиотеки трансформаторов Hugging Face. В --model_args установите аргумент delta, чтобы указать дельта-веса, и используйте предварительно обученный аргумент, чтобы указать относительную базовую модель, к которой они будут применяться:
lm_eval --model hf
--model_args pretrained=Ejafa/llama_7B,delta=lmsys/vicuna-7b-delta-v1.1
--tasks hellaswag
Квантованные модели GPTQ можно загрузить с помощью GPTQModel (быстрее) или AutoGPTQ.
GPTQModel: добавьте ,gptqmodel=True
к model_args
lm_eval --model hf
--model_args pretrained=model-name-or-path,gptqmodel=True
--tasks hellaswag
AutoGPTQ: добавьте ,autogptq=True
для model_args
:
lm_eval --model hf
--model_args pretrained=model-name-or-path,autogptq=model.safetensors,gptq_use_triton=True
--tasks hellaswag
Мы поддерживаем подстановочные знаки в именах задач, например, вы можете запускать все машинно-переведенные лямбада-задачи через --task lambada_openai_mt_*
.
Чтобы сохранить результаты оценки, укажите --output_path
. Мы также поддерживаем регистрацию ответов модели с помощью флага --log_samples
для последующего анализа.
Кроме того, можно указать каталог с --use_cache
для кэширования результатов предыдущих запусков. Это позволяет избежать повторного выполнения одних и тех же пар (модель, задача) для повторного зачета.
Чтобы отправить результаты и образцы в Hugging Face Hub, сначала убедитесь, что в переменной среды HF_TOKEN
установлен токен доступа с доступом на запись. Затем используйте флаг --hf_hub_log_args
, чтобы указать организацию, имя репозитория, видимость репозитория и указать, следует ли отправлять результаты и образцы в Hub — пример набора данных на HF Hub. Например:
lm_eval --model hf
--model_args pretrained=model-name-or-path,autogptq=model.safetensors,gptq_use_triton=True
--tasks hellaswag
--log_samples
--output_path results
--hf_hub_log_args hub_results_org=EleutherAI,hub_repo_name=lm-eval-results,push_results_to_hub=True,push_samples_to_hub=True,public_repo=False
Это позволяет легко загружать результаты и образцы из хаба, используя:
from datasets import load_dataset
load_dataset ( "EleutherAI/lm-eval-results-private" , "hellaswag" , "latest" )
Полный список поддерживаемых аргументов можно найти в руководстве по интерфейсу в нашей документации!
Вы можете легко визуализировать и анализировать результаты ваших анализов с использованием весов и смещений (W&B) и Zeno.
Вы можете использовать Zeno для визуализации результатов ваших оценочных прогонов.
Сначала зайдите на сайтhub.zenoml.com, чтобы создать учетную запись и получить ключ API на странице своей учетной записи. Добавьте этот ключ в качестве переменной среды:
export ZENO_API_KEY=[your api key]
Вам также потребуется установить дополнительный пакет lm_eval[zeno]
.
Чтобы визуализировать результаты, запустите программу оценки с флагами log_samples
и output_path
. Мы ожидаем, что output_path
будет содержать несколько папок, представляющих отдельные названия моделей. Таким образом, вы можете выполнить оценку любого количества задач и моделей и загрузить все результаты в виде проектов в Zeno.
lm_eval
--model hf
--model_args pretrained=EleutherAI/gpt-j-6B
--tasks hellaswag
--device cuda:0
--batch_size 8
--log_samples
--output_path output/gpt-j-6B
Затем вы можете загрузить полученные данные с помощью скрипта zeno_visualize
:
python scripts/zeno_visualize.py
--data_path output
--project_name " Eleuther Project "
При этом все подпапки в data_path
будут использоваться как разные модели и все задачи в этих папках моделей будут загружены в Zeno. Если вы запустите программу оценки для нескольких задач, project_name
будет использоваться в качестве префикса, и для каждой задачи будет создан один проект.
Вы можете найти пример этого рабочего процесса в example/visualize-zeno.ipynb.
Благодаря интеграции «Вес и предвзятость» вы теперь можете тратить больше времени на получение более глубокой информации о результатах вашей оценки. Интеграция предназначена для оптимизации процесса регистрации и визуализации результатов экспериментов с использованием платформы Weights & Biases (W&B).
Интеграция обеспечивает функциональные возможности
results.json
как артефакт для контроля версий,<task_name>_eval_samples.json
если образцы зарегистрированы, Сначала вам нужно установить дополнительный пакет lm_eval[wandb]. Выполните pip install lm_eval[wandb]
.
Подтвердите подлинность своей машины с помощью уникального токена W&B. Посетите https://wandb.ai/authorize, чтобы получить его. Выполните wandb login
в терминале командной строки.
Запустите программу eval, как обычно, с флагом wandb_args
. Используйте этот флаг, чтобы предоставить аргументы для инициализации запуска wandb (wandb.init) в виде строковых аргументов, разделенных запятыми.
lm_eval
--model hf
--model_args pretrained=microsoft/phi-2,trust_remote_code=True
--tasks hellaswag,mmlu_abstract_algebra
--device cuda:0
--batch_size 8
--output_path output/phi-2
--limit 10
--wandb_args project=lm-eval-harness-integration
--log_samples
В стандартном выводе вы найдете ссылку на страницу запуска W&B, а также ссылку на созданный отчет. Вы можете найти пример этого рабочего процесса в example/visualize-wandb.ipynb и пример его интеграции за пределы CLI.
Для получения дополнительной информации о библиотеке и о том, как все сочетается друг с другом, посетите все наши страницы документации! В ближайшее время мы планируем опубликовать более обширную дорожную карту желаемых и запланированных улучшений библиотеки с дополнительной информацией о том, как участники могут помочь.
Чтобы реализовать новую задачу в программе eval, см. это руководство.
В целом мы следуем следующему списку приоритетов для решения проблем, связанных с подсказками и другими деталями оценки:
Это рекомендации, а не правила, и в особых обстоятельствах их можно отменить.
Мы стараемся уделять приоритетное внимание согласию с процедурами, используемыми другими группами, чтобы уменьшить вред, когда люди неизбежно сравнивают прогоны разных статей, несмотря на то, что мы не одобряем эту практику. Исторически сложилось так, что мы также отдавали приоритет реализации «Языковых моделей мало кто учится», поскольку нашей первоначальной целью было именно сравнить результаты с этой статьей.
Лучший способ получить поддержку — открыть проблему в этом репозитории или присоединиться к серверу EleutherAI Discord. Канал #lm-thunderdome
посвящен развитию этого проекта, а канал #release-discussion
— для получения поддержки наших релизов. Если вы пользовались библиотекой и получили положительный (или отрицательный) опыт, мы будем рады услышать ваше мнение!
Дополнительные зависимости можно установить с помощью pip install -e ".[NAME]"
Имя | Использовать |
---|---|
API | Для использования моделей API (Anthropic, OpenAI API) |
глубокая разреженность | Для запуска моделей DeepSparse NM |
разработчик | За линтинг пиар и вклад |
gptq | Для загрузки моделей с GPTQ |
hf_transfer | Для ускорения загрузки файлов HF Hub |
возможность | Для запуска задачи IFEval |
нейронкс | Для работы на экземплярах AWS inf2 |
мамба | Для загрузки моделей Mamba SSM |
математика | Для запуска проверки ответов на математическое задание |
многоязычный | Для многоязычных токенизаторов |
оптимальный | Для запуска моделей Intel OpenVINO |
подсказка | Для использования подсказок PromptSource |
кусок предложения | Для использования токенизатора предложения |
редкость | Для использования моделей SparseML от NM. |
тестирование | Для запуска набора тестов библиотеки |
вллм | Для загрузки моделей с помощью vLLM |
Зенон | Для визуализации результатов с помощью Zeno |
--------------- | --------------------------------------- |
все | Загружает все дополнения (не рекомендуется) |
@misc{eval-harness,
author = {Gao, Leo and Tow, Jonathan and Abbasi, Baber and Biderman, Stella and Black, Sid and DiPofi, Anthony and Foster, Charles and Golding, Laurence and Hsu, Jeffrey and Le Noac'h, Alain and Li, Haonan and McDonell, Kyle and Muennighoff, Niklas and Ociepa, Chris and Phang, Jason and Reynolds, Laria and Schoelkopf, Hailey and Skowron, Aviya and Sutawika, Lintang and Tang, Eric and Thite, Anish and Wang, Ben and Wang, Kevin and Zou, Andy},
title = {A framework for few-shot language model evaluation},
month = 07,
year = 2024,
publisher = {Zenodo},
version = {v0.4.3},
doi = {10.5281/zenodo.12608602},
url = {https://zenodo.org/records/12608602}
}