Tópicos em alta
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Animado para lançar um novo repo: nanochat!
(está entre os mais desequilibrados que já escrevi).
Ao contrário do meu repositório semelhante anterior, o nanoGPT, que cobria apenas o pré-treinamento, o nanochat é um pipeline de treinamento/inferência de pilha completa mínimo, do zero, de um clone simples do ChatGPT em uma única base de código mínima de dependência. Você inicializa uma caixa de GPU em nuvem, executa um único script e, em menos de 4 horas depois, pode conversar com seu próprio LLM em uma interface de usuário da web semelhante ao ChatGPT.
Ele pesa ~ 8.000 linhas de código imo bastante limpo para:
- Treine o tokenizer usando uma nova implementação do Rust
- Pré-treinar um LLM de transformador no FineWeb, avaliar a pontuação CORE em várias métricas
- Treinamento intermediário em conversas de assistente de usuário do SmolTalk, perguntas de múltipla escolha, uso de ferramentas.
- SFT, avaliar o modelo de bate-papo em conhecimento mundial de múltipla escolha (ARC-E / C, MMLU), matemática (GSM8K), código (HumanEval)
- RL o modelo opcionalmente em GSM8K com "GRPO"
- Inferência eficiente do modelo em um mecanismo com cache KV, pré-preenchimento/decodificação simples, uso de ferramenta (interpretador Python em uma sandbox leve), converse com ele por CLI ou WebUI semelhante ao ChatGPT.
- Escreva um único boletim de remarcação, resumindo e gamificando tudo.
Mesmo por um custo tão baixo quanto ~ $ 100 (~ 4 horas em um nó 8XH100), você pode treinar um pequeno clone do ChatGPT com o qual você pode conversar e que pode escrever histórias/poemas, responder a perguntas simples. Cerca de ~12 horas supera a métrica GPT-2 CORE. À medida que você aumenta ainda mais para ~ $ 1000 (~ 41,6 horas de treinamento), ele rapidamente se torna muito mais coerente e pode resolver problemas simples de matemática / código e fazer testes de múltipla escolha. Por exemplo, um modelo de profundidade 30 treinado por 24 horas (isso é quase igual a FLOPs de GPT-3 Small 125M e 1/1000th de GPT-3) chega a 40s no MMLU e 70s no ARC-Easy, 20s no GSM8K, etc.
Meu objetivo é obter a pilha completa de "linha de base forte" em um repositório coeso, mínimo, legível, hackeável e com bifurcação máxima. nanochat será o projeto final do LLM101n (que ainda está sendo desenvolvido). Acho que também tem potencial para se tornar um arnês de pesquisa, ou um benchmark, semelhante ao nanoGPT antes dele. Não está de forma alguma terminado, ajustado ou otimizado (na verdade, acho que provavelmente há um pouco de frutos mais fáceis), mas acho que está em um lugar onde o esqueleto geral está ok o suficiente para que possa subir no GitHub, onde todas as partes dele podem ser melhoradas.
Link para o repositório e um passo a passo detalhado do speedrun do nanochat está na resposta.

Repositório do GitHub:
Passo a passo muito mais detalhado e técnico:
Exemplo de conversa com o nanochat de US$ 100 e 4 horas na WebUI. É... :) divertidas Modelos maiores (por exemplo, uma profundidade de 12 horas 26 ou uma profundidade de 24 horas 30) rapidamente se tornam mais coerentes.

E um exemplo de algumas das métricas resumidas produzidas pelo speedrun de $ 100 no boletim inicial. A base de código atual é um pouco mais de 8000 linhas, mas tentei mantê-las limpas e bem comentadas.
Agora vem a parte divertida - de afinação e escalada.

1,57M
Melhores
Classificação
Favoritos