nanochat

nanochat

Andrej Karpathy · Outros · Chatbot

O nanochat é um framework de código aberto e de pilha completa para treinar LLM, criado por Andrej Karpathy, que constrói um modelo de linguagem no estilo ChatGPT do zero. Ele cobre todo o pipeline, da tokenização e do pré-treinamento até o ajuste fino, a avaliação e a inferência, em uma única base de código de cerca de 8.000 linhas. Você aluga um nó com GPU, roda um script e, algumas horas depois, conversa com o modelo que acabou de treinar por uma interface web ou pela linha de comando.

Prévia da interface de nanochat

Sobre nanochat

O que é o nanochat

O nanochat é a configuração experimental mais simples para treinar grandes modelos de linguagem. Ele foi feito para um único nó com GPU, o código é mínimo e fácil de alterar, e percorre todas as etapas importantes de um LLM: tokenização, pré-treinamento, treinamento intermediário, ajuste fino supervisionado, aprendizado por reforço opcional, avaliação e inferência. Karpathy o chama de o melhor ChatGPT que 100 dólares podem comprar.

A ideia não é competir com modelos de fronteira. Um modelo nanochat treinado por algumas horas é algo pequeno e curioso, capaz de manter conversas básicas, contar histórias e responder perguntas simples. O que você ganha é um pipeline de treinamento completo e legível, que de fato dá para entender e mudar. Por isso ele vem se firmando como o projeto final do curso LLM101n de Karpathy.

O limite honesto: isto é uma ferramenta de aprendizado e pesquisa, não um modelo de produção. O próprio Karpathy não recomenda ajustá-lo com os seus próprios textos. Um modelo tão pequeno imita o estilo superficial, não capta o raciocínio mais profundo que um LLM de ponta tem. Se você quer isso, faça o ajuste fino de um modelo aberto maior, como o Llama 3, ou use recuperação com um sistema maior.

Primeiros passos

  1. Suba um servidor de GPU na nuvem com um único nó 8XH100 (o preço de mercado gira em torno de 24 dólares por hora).
  2. Clone o repositório do GitHub e instale o gerenciador de projetos uv caso ainda não o tenha.
  3. Rode o script runs/speedrun.sh, que cuida da preparação dos dados, do treinamento e do ajuste fino de ponta a ponta.
  4. Espere algumas horas. O script treina um modelo de nível GPT-2 e informa as suas pontuações.
  5. Inicie o servidor web ou a CLI e converse com o seu modelo recém-treinado.

Informações do produto

Uma visão rápida dos preços, das plataformas compatíveis e do desempenho de nanochat.

Plano gratuitoSim
Planos pagos$0 (MIT-licensed, you pay only for the GPU you rent; roughly $48 for a 2-hour 8XH100 run)
PlataformaLinux (CUDA GPU node)
DesenvolvedorAndrej Karpathy
CategoriaOutros · Chatbot
Data de lançamentoOct 2025
Última atualizaçãoMar 2026
Visitas ao site649.3M
Ranking global do site50
Disponibilidade da APINão

Ideal para

Os usuários, tarefas e cenários em que esta ferramenta se encaixa melhor.

Usuários

  • Estudantes de aprendizado de máquina
  • Pesquisadores e entusiastas
  • Equipes pequenas que exploram modelos personalizados

Tarefas

  • Treinar um modelo de linguagem da classe GPT-2
  • Estudar o pipeline de um LLM
  • Comparar ajustes de treinamento

Cenários

  • Rodar o seu primeiro trabalho de treinamento de ponta a ponta
  • Dar aula ou ministrar um workshop
  • Experimentar no fim de semana

Principais recursos

Um script, o pipeline inteiro

O speedrun do nanochat amarra todo o processo em um servidor recém-criado. Ele prepara os dados, treina um tokenizador, pré-treina o transformer, roda o treinamento intermediário e o ajuste fino, e produz um modelo com o qual você pode conversar. Um único comando substitui o habitual mosaico de ferramentas separadas, que é justamente o motivo de manter tudo em um só repositório em vez de espalhar por vários projetos.

O botão de profundidade

O nanochat foi montado para treinar toda uma família de modelos de custo computacional ótimo mudando um único ajuste: --depth, o número de camadas do transformer. Todo o resto, incluindo largura, cabeças de atenção, cronogramas de taxa de aprendizado e horizonte de treinamento, é calculado de forma automática. Quer nível GPT-2? Defina a profundidade em 26. É mais ou menos aí que fica a capacidade do GPT-2.

Tokenizador em Rust e preparação de dados limpa

O tokenizador foi escrito do zero em Rust para ganhar velocidade, e o pipeline de dados reempacota um subconjunto do dataset FineWeb-Edu em arquivos Parquet compactos para streaming. É o encanamento pouco glamouroso. Mas é a parte que quase todo tutorial pula, e aqui ela está inteira.

Motor de inferência com interface web

O treinamento termina com algo que você realmente pode usar. O nanochat traz um motor de inferência eficiente com cache KV, além de uma CLI e uma interface web no estilo ChatGPT. Há também um sandbox leve de Python para chamadas de ferramentas, então o modelo tenta executar código. Esse último detalhe é um bom toque.

Etapa de RL opcional

Além do ajuste fino supervisionado, você pode rodar uma etapa opcional de aprendizado por reforço com o algoritmo GRPO sobre o dataset de matemática GSM8K. É uma etapa extra, não um requisito central, mas mostra como dá para levar um modelo pequeno em tarefas avaliáveis, o que é bastante útil se a sua pesquisa toca em raciocínio ou matemática.

Relatório em Markdown

Depois do treinamento, o nanochat gera um único relatório em Markdown que resume a execução. Ele se lê como um placar, com o tamanho do modelo, o tempo de treinamento e os resultados em testes como MMLU, ARC-Easy e GSM8K. Isso deixa as comparações fáceis. Guarde-o.

Licença MIT e fácil de alterar

Todo o projeto é aberto sob a licença MIT e tem cerca de 8.000 linhas, em sua maioria Python com um pouco de Rust. O código foi feito para ser lido, bifurcado e modificado. Karpathy escreveu a maior parte à mão, e a estrutura fica próxima do metal, o que significa que há pouca mágica escondida para te surpreender quando você começar a fuçar.

Prós e contras

Prós

  • Cobre todo o pipeline de um LLM, do tokenizador à interface de chat, em um repositório pequeno.
  • Treina um modelo da classe GPT-2 por cerca de 100 dólares de aluguel de GPU, muito abaixo do que custava em 2019.
  • Precisa de apenas um nó com GPU, então você pula a complexidade do treinamento distribuído.
  • A licença MIT e o código legível facilitam bifurcar e adaptar para os seus próprios experimentos.
  • Mantém um ranking ativo do speedrun que mostra até onde outras pessoas levaram a mesma tarefa.

Contras

  • Não é um modelo de produção. O resultado é um modelo pequeno para aprendizado, não um rival do GPT-4 ou do Claude, então não espere respostas refinadas.
  • Você ainda precisa de hardware de GPU de verdade ou de uma conta na nuvem; não há como treinar em um notebook ou em um celular.
  • Ajustá-lo para imitar um estilo de escrita pessoal não funciona bem, porque o modelo base é pequeno demais para absorver mais do que padrões superficiais.
  • A configuração pressupõe certa familiaridade com Linux, Python e a linha de comando, o que deixa de fora os usuários não técnicos.

Perguntas frequentes

O nanochat serve para treinar e rodar um pequeno modelo de linguagem no estilo ChatGPT do zero. As pessoas o usam para aprender como os LLM funcionam de ponta a ponta, para testar ideias de treinamento de forma barata e para construir um chatbot funcional a partir de um único script.

Conteúdo relacionado

Explore ferramentas, skills e artigos relacionados a nanochat.

Alternativas a nanochat

BinkBink

BinkBink

BinkBink · Outros
Escolha do editor

O BinkBink é uma plataforma de jogos online gratuita e um criador de jogos com IA que deixa qualquer pessoa transformar uma breve descrição em texto em um jogo de navegador jogável. Você pode entrar em centenas de jogos feitos pela comunidade. Ou descreve a sua própria ideia, joga em segundos e compartilha com amigos. Quer criar seu próprio jogo? Não precisa programar. Sem configurar motor, sem download, sem complicação.

Grátis / $0Ver detalhes
Audiogen

Audiogen

Audiogen Inc. · Outros

O Audiogen é um gerador de música com IA criado pela Audiogen Inc., uma equipe de pesquisa pequena que passou cerca de 2,5 anos treinando o próprio modelo de música generativa e desenhando uma interface web em volta dele. Em vez de uma simples caixa de texto, essa ferramenta de música com IA transforma a linha do tempo em uma Estação de Trabalho de Áudio Generativo, ou GAW, voltada para iniciantes, na qual o inpainting, a extensão, a remixagem e a edição de faixas funcionam mais como pintar em uma tela. O produto ainda está em beta, então o acesso passa por uma lista de espera ou por um convite. Os planos pagos ainda não foram publicados.

Grátis / Free (beta)Ver detalhes
Aiml API

Aiml API

AIMLAPI OÜ · Outros

A Aiml API é uma API unificada de modelos de IA que coloca mais de 1000 modelos da OpenAI, Google, Anthropic e outros por trás de um único endpoint e uma única fatura. Você escreve código contra um só esquema compatível com OpenAI e depois alterna entre modelos de chat, imagem, vídeo e áudio mudando uma string de modelo. Ela serve para desenvolvedores e equipes pequenas que querem acesso multimodelo sem administrar uma dúzia de contas de fornecedor separadas, e elimina a dor de cabeça comum de faturamento que vem com testar vários fornecedores. Uma chave cobre tudo.

Grátis / $0 - $200/moVer detalhes