Sobre o projeto

Este é um projeto de aprendizado de modelos multimodais organizado em notebooks, com a linha principal "modelos visuais básicos → alinhamento imagem-texto → compreensão e geração multimodal → modelos de difusão → grandes modelos multimodais". Cada notebook possui comentários em chinês, adequado para iniciantes e aprendizado avançado. O conteúdo progride por numeração: 01 ViT: implementação do Vision Transformer do zero, cobrindo Patch Embedding, codificação posicional aprendível, CLS Token, Transformer Encoder e cabeça de classificação, com visualização da divisão de patches e mapas de calor de atenção, além de demonstrar a API oficial do HuggingFace. 02 CLIP: demonstra similaridade imagem-texto e classificação zero-shot da API oficial, decompondo passo a passo a codificação de texto/imagem, projeção, normalização L2 e similaridade cosseno com escala de temperatura, além de implementar manualmente um codificador duplo simplificado e a perda contrastiva. 03 ALBEF: com a ideia de "alinhar primeiro, fundir depois", implementa o codificador de imagem ViT, o codificador de texto BERT, atenção cruzada multi-cabeça e camada de fusão multimodal, explicando os três objetivos ITC/ITM/MLM e a destilação por momentum. 04 BLIP: apresenta a arquitetura unificada de codificação-decodificação MED, onde os mesmos pesos BERT alternam entre três modos — codificação unimodal, codificação cross-modal e decodificação causal — por meio de máscaras de atenção, demonstrando legendagem de imagens, resposta a perguntas visuais, extração de características e correspondência imagem-texto. 05 BLIP-2: usa o Q-Former para conectar o EVA-ViT-G/14 congelado e o OPT congelado, captura tensores internos do Q-Former com Hooks, mostra a forma dos 32 Query Tokens aprendíveis e implementa manualmente uma versão simplificada do Q-Former. 06 Visualização da arquitetura do Stable Diffusion: três sub-notebooks usam print(model), torchinfo e torchviz respectivamente para exibir o VAE, o codificador de texto CLIP, o Tokenizer e o U-Net, comparando três perspectivas: árvore de texto, tabela de parâmetros e grafo computacional do autograd. 07 Inferência manual DDIM: sem depender do Pipeline do Diffusers, implementa do zero a incorporação de passos de tempo, codificação de texto, atenção cruzada, loop de denoising do U-Net e decodificação VAE, explicando as diferenças entre DDIM e DDPM. 08 Prática de geração texto-para-imagem: baseado em diffusers e ModelScope, realiza download de pesos, carregamento do Pipeline, inferência de Prompt e visualização de resultados. 09 Qwen3-VL: carrega o Qwen3-VL-2B-Instruct, demonstra inferência multimodal e a estrutura completa, explicando o Patch Merger, DeepStack e a incorporação de patches por convolução 3D para processamento unificado de imagens/vídeos. O repositório também fornece sugestões de trilha de aprendizado, lista de dependências (torch, transformers, diffusers, modelscope, torchinfo, torchviz etc., sendo que o torchviz requer Graphviz no nível do sistema) e passos de início rápido; os pesos dos modelos são baixados automaticamente na primeira execução e armazenados em cache no subdiretório correspondente de model_cache/. O projeto adota a licença MIT.