Об этом проекте

PowerInfer — это среда выполнения для развертывания больших языковых моделей на персональном компьютере. Ее конструкция использует локальность активации: постоянно активные нейроны хранятся на GPU, а нейроны, зависящие от входа, выполняются на CPU. Адаптивные предикторы и разреженные операторы с учетом нейронов направляют это разделение, снижая давление на память GPU и объемы передачи данных между CPU и GPU. Гибридный вывод может использовать всю доступную VRAM или следовать настраиваемому лимиту --vram-budget; также доступен вывод только на CPU. Проект использует файлы PowerInfer GGUF, содержащие веса модели и предиктора, с инструментами для конвертации исходных репозиториев моделей и предикторов. Поддерживается INT4-квантование Q4_0, ограниченный режим плотного вывода, локальное обслуживание, пакетная генерация и оценка перплексии. Примеры командной строки в основном следуют использованию llama.cpp, хотя --vram-budget заменяет -ngl для разгрузки PowerInfer. Документированные семейства моделей включают Falcon-40B, варианты Llama 2 на основе ReLU, ProSparse Llama 2 и Bamboo-7B. Совместимость не является общей: в FAQ указано, что модели должны использовать активации ReLU, ReGLU или Squared ReLU, поэтому неподдерживаемые архитектуры, такие как Mistral, оригинальная Llama и Qwen, в настоящее время не охвачены. PowerInfer собирается с помощью CMake и Python на Linux или Windows с процессорами x86-64 AVX2, предлагая пути NVIDIA CUDA и AMD ROCm/HIP, а также работу только на CPU. Вывод на Apple Silicon CPU указан для macOS, но в README сказано, что он не оптимизирован там, и разреженный вывод Metal остается в планах. В README сообщаются результаты бенчмарков на конкретных тестах RTX 4090 и RTX 2080 Ti, а также дается ссылка на статью для деталей оценки.