Aprendizagem pessoal com IA
e orientação prática

EXO: execução de clusters de IA distribuídos usando dispositivos domésticos ociosos, com suporte a vários mecanismos de inferência e descoberta automatizada de dispositivos.

Introdução geral

O Exo é um projeto de código aberto que tem como objetivo executar seu próprio cluster de IA usando dispositivos cotidianos (por exemplo, iPhone, iPad, Android, Mac, Linux etc.). Por meio do particionamento dinâmico de modelos e da descoberta automatizada de dispositivos, o Exo é capaz de unificar vários dispositivos em uma única GPU avançada com suporte a vários modelos, como LLaMA, Mistral, LlaVA, Qwen e Deepseek. O Exo também fornece uma API compatível com ChatGPT que permite aos usuários executar facilmente modelos em seu próprio hardware.

EXO: execução de clusters de IA distribuídos usando computadores domésticos ociosos com suporte para vários mecanismos de inferência e descoberta automatizada de dispositivos. -1


 

Lista de funções

  • Amplo suporte ao modeloSuporte a uma ampla variedade de modelos, como LLaMA, Mistral, LlaVA, Qwen e Deepseek.
  • Particionamento de modelo dinâmicoOtimize o particionamento do modelo com base na topologia de rede atual e nos recursos do dispositivo.
  • Descoberta automatizada de dispositivosDescobre automaticamente outros dispositivos sem configuração manual.
  • API compatível com ChatGPTAPI compatível com ChatGPT: fornece uma API compatível com ChatGPT para facilitar a execução de modelos em seu próprio hardware.
  • igualdade de equipamentosOs dispositivos são conectados uns aos outros usando uma conexão ponto a ponto e não usam uma arquitetura mestre-escravo.
  • Várias estratégias de particionamentoSuporte a uma variedade de estratégias de particionamento, como o particionamento ponderado pela memória em anel.

 

Usando a Ajuda

Usando a Ajuda

Processo de instalação

  1. preliminar::
    • Certifique-se de que a versão do Python seja >= 3.12.0.
    • Se estiver usando Linux e suportar GPUs NVIDIA, instale os drivers NVIDIA, o kit de ferramentas CUDA e a biblioteca cuDNN.
  2. Instalação a partir da fonte::
    • Projeto de clonagem:git clone https://github.com/exo-explore/exo.git
    • Vá para o catálogo de projetos:cd exo
    • Instale a dependência:pip install -e .
    • Ou use um ambiente virtual para instalá-lo:fonte install.sh

Função Fluxo de operação

  1. modelo operacional::
    • Execute o exemplo em vários dispositivos macOS:
      • Equipamento 1:exo
      • Equipamento 2:exo
      • O Exo descobre automaticamente outros dispositivos e inicia uma WebUI semelhante ao ChatGPT (com tecnologia tinygrad tinychat) emhttp://localhost:52415.
    • Execute o exemplo em um único dispositivo:
      • Use o comando:exo executar llama-3.2-3b
      • Use um prompt personalizado:exo run llama-3.2-3b --prompt "Qual é o significado de exo?"
  2. Armazenamento de modelos::
    • Por padrão, os modelos são armazenados na pasta~/.cache/huggingface/hub.
    • Isso pode ser feito definindo a variável de ambienteHF_HOMEpara alterar o local de armazenamento do modelo.
  3. ajustar os componentes durante o teste::
    • Uso de variáveis de ambienteDEBUG(0-9) Ativar o registro de depuração:DEBUG=9 exo
    • Para o mecanismo de inferência tinygrad, use um sinalizador de depuração separadoTINYGRAD_DEBUG(1-6):TINYGRAD_DEBUG=2 exo
  4. Código de formatação::
    • fazer uso deyapfCódigo de formatação:
      • Requisitos de formatação da instalação:pip3 install -e '. [formatação]'
      • Execute o script de formatação:python3 format.py . /exo

Uso

  1. Lançamento do EXO::
   exo

O EXO descobrirá e se conectará automaticamente a outros dispositivos sem configuração adicional.

  1. modelo operacional::
    • Use o modelo padrão:
     exo executar llama-3.2-3b
    
    • Dicas personalizadas:
     exo run llama-3.2-3b --prompt "Qual é o significado de EXO?"
    
  2. Exemplos de uso da API::
    • Enviar solicitação: bash
      Curl http://localhost:52415/v1/chat/completions \
      -H "Content-Type: application/json" \
      -d '{
      "modelo": "llama-3.2-3b".
      "messages": [{"role": "user", "content": "What is the meaning of EXO?"}] ,
      "temperatura": 0,7
      }'

otimização do desempenho

  • Usuários do macOS::
    • Atualize para a versão mais recente do macOS.
    • estar em movimento. /configure_mlx.shOtimize a alocação de memória da GPU.

problemas comuns

  • Erro de SSLEm algumas versões do MacOS/Python, o certificado não está instalado corretamente. Execute o seguinte comando para corrigi-lo:
  /Applications/Python 3.x/Install Certificates.command
  • Registro de depuraçãoAtivar o registro de depuração:
  DEBUG=9 exo
Aprendizagem fácil com IA

O guia do leigo para começar a usar a IA

Ajuda você a aprender a utilizar as ferramentas de IA com baixo custo e a partir de uma base zero.A IA, assim como o software de escritório, é uma habilidade essencial para todos. Dominar a IA lhe dará uma vantagem em sua busca de emprego e metade do esforço em seu trabalho e estudos futuros.

Ver detalhes>
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " EXO: execução de clusters de IA distribuídos usando dispositivos domésticos ociosos, com suporte a vários mecanismos de inferência e descoberta automatizada de dispositivos.

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil