Pétalos: ejecución y puesta a punto de grandes modelos lingüísticos en la GPU compartida y distribuida, compartiendo los recursos de la GPU como una red BitTorrent.

Introducción general

Petals es un proyecto de código abierto desarrollado por BigScience Workshop para ejecutar grandes modelos lingüísticos (LLM) mediante un enfoque de computación distribuida. Los usuarios pueden ejecutar y ajustar LLM como Llama 3.1, Mixtral, Falcon y BLOOM en casa utilizando GPU de consumo o Google Colab. Petals utiliza un enfoque similar a BitTorrent para distribuir diferentes partes del modelo entre los dispositivos de varios usuarios, lo que permite una inferencia y un ajuste eficientes.

Petals:分布式共享GPU运行和微调大语言模型,像BitTorrent网络一样共享GPU资源

 

Lista de funciones

  • Ejecución de grandes modelos lingüísticosCompatible con los modelos Llama 3.1 (hasta 405B), Mixtral (8x22B), Falcon (40B+) y BLOOM (176B).
  • inferencia distribuidaEjecuta el modelo a través de una red distribuida con velocidades de inferencia de lote único de hasta 6 tokens/seg (Llama 2 70B) y 4 tokens/seg (Falcon 180B).
  • Ajuste rápido: Permite al usuario ajustar rápidamente los modelos para diversas tareas.
  • impulsado por la comunidad: Basándose en una comunidad de usuarios que comparten recursos de GPU, los usuarios pueden contribuir con sus propias GPU para aumentar la capacidad de cálculo de Petals.
  • API flexible: Proporciona una API flexible similar a PyTorch y Transformers, con soporte para rutas personalizadas y visualización de estado oculto.
  • PrivacidadEl tratamiento de datos se realiza a través de una red pública, y los usuarios pueden establecer redes privadas para proteger los datos sensibles.

 

Utilizar la ayuda

Instalación y uso

  1. Instalación de dependencias::
    • Linux + Anaconda::
      conda install pytorch pytorch-cuda=11.7 -c pytorch -c nvidia
      pip install git+https://github.com/bigscience-workshop/petals
      python -m petals.cli.run_server meta-llama/Meta-Llama-3.1-405B-Instruct
      
    • Windows + WSLConsulte Wiki.
    • Docker::
      sudo docker run -p 31330:31330 --ipc host --gpus all --volume petals-cache:/cache --rm \
      learningathome/petals:main \
      python -m petals.cli.run_server --port 31330 meta-llama/Meta-Llama-3.1-405B-Instruct
      
    • macOS + GPU Apple M1/M2::
      brew install python
      python3 -m pip install git+https://github.com/bigscience-workshop/petals
      python3 -m petals.cli.run_server meta-llama/Meta-Llama-3.1-405B-Instruct
      
  2. modelo operativo::
    • Selecciona cualquiera de los modelos disponibles, por ejemplo:
      from transformers import AutoTokenizer
      from petals import AutoDistributedModelForCausalLM
      model_name = "meta-llama/Meta-Llama-3.1-405B-Instruct"
      tokenizer = AutoTokenizer.from_pretrained(model_name)
      model = AutoDistributedModelForCausalLM.from_pretrained(model_name)
      inputs = tokenizer("A cat sat", return_tensors="pt")["input_ids"]
      outputs = model.generate(inputs, max_new_tokens=5)
      print(tokenizer.decode(outputs[0]))
      
  3. Contribución GPU::
    • Los usuarios pueden aumentar la potencia de cálculo de Petals conectando una GPU. Modelo Hub.

Funciones principales

  1. Seleccionar modelo: Acceso Pétalos seleccione el modelo deseado.
  2. Modelos de cargaCarga y ejecuta el modelo según los pasos de instalación anteriores.
  3. Ajuste del modeloUtiliza la API proporcionada por Petals para ajustar el modelo a diversas tareas.
  4. Generar textoGeneración de texto en redes distribuidas para chatbots y aplicaciones interactivas.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...