Pular para o conteúdo principal
ToolPotion

Shumai

Shumai é uma biblioteca de tensores diferenciável e rápida para JavaScript e TypeScript, construída com Bun e Flashlight. Ela permite que engenheiros de software e pesquisadores criem conjuntos de dados, treinem modelos pequenos e implementem lógica de treinamento avançada de forma eficiente no ecossistema JavaScript. Ela utiliza arrays tipados nativos e um compilador JIT para desempenho.

Visitar URL

Descrição

Shumai é uma biblioteca de tensores diferenciável projetada para JavaScript e TypeScript, aproveitando a velocidade do Bun e o poder do Flashlight. Ela visa tornar a manipulação de dados, o treinamento de modelos e a lógica de inferência avançada mais acessíveis e eficientes para desenvolvedores dentro do ecossistema JavaScript. Ao utilizar arrays tipados nativos e o compilador Just-In-Time (JIT) do Bun, Shumai oferece uma solução de alto desempenho para tarefas que vão desde a criação de conjuntos de dados até o treinamento de pequenos modelos de aprendizado de máquina.

A biblioteca fornece operações de tensor centrais, diferenciação automática para computação de gradientes e conversão contínua de e para arrays nativos do JavaScript. Isso permite que os desenvolvedores trabalhem com dados diretamente em JavaScript, preparem-nos para arrays compatíveis com GPU e, em seguida, treinem modelos sem sair do ambiente. A arquitetura do Shumai é construída para minimizar a sobrecarga, permitindo que o JavaScript saia do caminho durante o treinamento e a inferência, especialmente para modelos menores.

As principais capacidades incluem utilitários de array padrão, criação de tensores, operações matemáticas e rastreamento de gradientes. Os usuários podem habilitar a computação de gradientes para tensores, realizar operações e, em seguida, acessar os gradientes computados. A biblioteca também oferece recursos para ajuste de uso de memória, permitindo que os usuários ajustem os parâmetros de coleta de lixo para otimizar o desempenho com base nas capacidades do hardware. Além disso, Shumai inclui um sistema de coleta de estatísticas que pode registrar o desempenho das operações no console ou via HTTP, com opções para profiling com escopo e coleta de rastreamentos de pilha.

Shumai é particularmente benéfico para engenheiros de software e pesquisadores que já trabalham dentro do ecossistema JavaScript e desejam incorporar capacidades de aprendizado de máquina sem uma curva de aprendizado acentuada associada a outras linguagens ou frameworks. Seus benchmarks de desempenho mostram vantagens significativas sobre bibliotecas como TensorFlow.js em várias operações, especialmente em GPUs Apple M1 Pro e Nvidia. O projeto é experimental e contribuições são bem-vindas para melhorar sua funcionalidade e estabilidade.

Recursos principais de Shumai

  • Biblioteca de tensores diferenciável e rápida para JavaScript e TypeScript

  • Construída com Bun e Flashlight para alto desempenho

  • Suporta diferenciação automática para computação de gradientes

  • Conversão contínua entre tensores e arrays nativos do JavaScript

  • Otimizada para treinamento de modelos pequenos e lógica de inferência avançada

  • Utiliza arrays tipados nativos e compilação JIT

  • Ajuste de uso de memória para otimização de desempenho

  • Coleta de estatísticas integrada para profiling de operações

  • Coleta de estatísticas com escopo para profiling isolado

  • Software experimental com desenvolvimento ativo

  • Suporta computação GPU via backends ArrayFire (CUDA em Linux, CPU em macOS)

  • Registro de estatísticas extensível com opções de Console e HTTP

Primeiros passos com Shumai

  1. Instalar Bun e ArrayFire: Siga as instruções específicas da plataforma para macOS e Linux.

  2. Instalar Shumai: Execute `bun install @shumai/shumai`.

  3. Importar Shumai: Use `import * as sm from '@shumai/shumai'` em seu código TypeScript/JavaScript.

  4. Criar Tensores: Utilize funções como `sm.randn()` ou `sm.tensor()` para criar tensores.

  5. Realizar Operações: Aplique operações matemáticas como `matmul()`, `mul()` e `sum()`.

  6. Habilitar Gradientes: Defina `tensor.requires_grad = true` para tensores que precisam de rastreamento de gradiente.

  7. Computar Gradientes: Chame `.backward()` no tensor de perda para preencher os gradientes.

  8. Ajustar Memória: Ajuste as opções de memória usando `util.memoryOptions()` para desempenho.

Casos de uso de Shumai

  • Criação de Conjuntos de Dados
  • Treinamento de Modelos
  • Lógica de Inferência
  • Pré-processamento de Dados
  • Prototipagem de Pesquisa
  • Desenvolvimento de Aplicações

Perguntas frequentes de Shumai

Avaliações de Shumai

Carregando...

Ferramentas de IA populares como Shumai

Frameworks de IA

TensorFlow é uma plataforma de aprendizado de máquina open source de ponta a ponta, projetada para todos. Ela fornece um ecossistema flexível de ferramentas, bibliotecas e…

DestaquePlataformas de machine learning

Repositórios de IA no GitHub

Keras é uma biblioteca de deep learning de código aberto projetada para humanos. Ela simplifica o processo de construção de redes neurais e permite que desenvolvedores contribuam…

DestaquePlataformas de machine learning

Repositórios de IA no GitHub

nanoGPT é um repositório GitHub minimalista e de alto desempenho para treinar e ajustar modelos GPT de tamanho médio. Ele oferece um código simples e legível para pesquisadores e…

DestaquePlataformas de machine learning

🤗 Transformers é um framework de definição de modelos projetado para modelos de aprendizado de máquina de ponta em domínios de texto, visão, áudio e multimodal, facilitando tanto…

DestaquePlataformas de machine learning

PyTorch é uma biblioteca de aprendizado de máquina de código aberto que fornece ferramentas para construir redes neurais dinâmicas em Python, aproveitando uma forte aceleração de…

DestaquePlataformas de machine learning

Repositórios de IA no GitHub

Ray é um motor de cálculo de IA projetado para acelerar cargas de trabalho de aprendizado de máquina. Ele possui um núcleo de tempo de execução distribuído e um conjunto de…

DestaquePlataformas de machine learning

Repositórios de IA no GitHub

LocalAI é um motor de IA de código aberto que permite aos usuários executar vários modelos, incluindo LLMs, visão, voz, imagem e vídeo, em qualquer hardware sem exigir uma GPU.…

DestaquePlataformas de machine learning