1 В избранное 0 Ответвления 0

GITHUB-MIRROR/MooreThreads-vllm_musa

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_vllm_musa.md 3.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 08.02.2025 20:16 b0fe303

vllm_musa

ThreadMoor致力于构建一个完整且用户友好的国内GPU应用生态系统,独立开发了MUSA架构和软件平台。vllm项目在行业中广泛使用,作为大型语言模型的推理和服务引擎,并提供CUDA/ROCm加速功能。为了方便ThreadMoor GPU用户使用vllm框架,我们启动了开源vllm_musa项目,以提供MUSA加速,使用户能够充分发挥ThreadMoor GPU的强大计算能力。

现有的vllm代码不支持ThreadMoor GPU作为后端设备。因此,我们添加了一个MUSA设备后端。vllm_musa的接口与官方一致,允许用户无需修改业务代码即可直接使用。

MUSA的一个主要优势是其CUDA兼容性。通过musify工具,我们可以快速将官方代码移植到MUSA软件堆栈中。根据文档,用户可以升级vllm版本并将其适配到MUSA软件堆栈中。

Зависимости

  • musa_toolkit >= dev3.0.0
  • pytorch >= v2.2.0
  • torch_musa >= v1.3.0
  • triton >= v2.2.0
  • ray >= 2.9
  • vllm v0.4.2

Использование

Компиляция

Запустите bash build_musa.sh

Пример тестирования

from vllm import LLM, SamplingParams
from transformers import AutoTokenizer, LlamaForCausalLM
import transformers
import time
import torch
import torch_musa


model_path = <path_to_llm_model>

prompts = [
    "Hello, my name is",
    "The president of the United States is",
    "The capital of France is",
    "The future of AI is",
]

sampling_params = SamplingParams(temperature=0.8, top_p=0.95)
llm = LLM(model=model_path, trust_remote_code=True, device="musa")

outputs = llm.generate(prompts, sampling_params)

# Выводите результаты.
for output in outputs:
    prompt = output.prompt
    generated_text = output.outputs[0].text
    print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")

Портинг

Текущий репозиторий портирован из версии vllm 0.4.2. Если пользователи хотят использовать более новую версию vllm, им нужно запустить musa_porting.py, чтобы адаптировать исходный CUDA-код к MUSA-коду. Конечно, по мере эволюции vllm некоторые части кода могут ускользнуть и не быть успешно портированными; пользователи могут изменить правила замены текста в файле musa_porting.py для использования мощной CUDA-совместимости MUSA.

Шаги

  1. Запустите python musa_porting.py
  2. Измените расширения файлов с .cu на .mu для файлов, которые требуют компиляции в CMakeLists.txt.
  3. Скомпилируйте и запустите vllm_musa

Вклад

Мы приветствуем пользователей и разработчиков, чтобы они использовали, предоставляли обратную связь и помогали улучшить функциональность и производительность vllm_musa.

Командная работа по совместному строительству MUSA-софтверного экосистемы. Мы с нетерпением ждем возможности работать вместе со многими разработчиками для создания MUSA-ускоренных открытых проектов.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/github-mirror/MooreThreads-vllm_musa.git
git@api.gitlife.ru:github-mirror/MooreThreads-vllm_musa.git
github-mirror
MooreThreads-vllm_musa
MooreThreads-vllm_musa
main