Pular para o conteúdo
Skillpedia
Agentes41 mil · #4904

vision-sft

Faz seu agente treinar modelos que entendem imagens e texto juntos. É útil para adaptar modelos a tarefas visuais específicas, como descrever fotos.

O que ela faz

Esta ferramenta ensina um modelo de inteligência artificial a entender imagens e textos juntos. Ela ajusta o modelo para que ele possa realizar tarefas específicas que envolvam ambos, como descrever uma imagem ou responder perguntas sobre ela.

Quando usar

  • ✓Quando você quer que a IA descreva imagens com mais detalhes.
  • ✓Quando você quer que a IA responda perguntas sobre o conteúdo de uma imagem.
  • ✓Quando você quer adaptar a IA para entender um tipo específico de imagem (ex: exames médicos, diagramas).

Exemplo do que pedir para a IA

“Adapte este modelo para que ele entenda imagens de radiografias e responda perguntas sobre elas.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/wshobson/agents/blob/main/plugins/llm-finetuning/skills/vision-sft/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/wshobson/agents/blob/main/plugins/llm-finetuning/skills/vision-sft/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta ajusta partes específicas do modelo de IA que processam imagens e textos. Ela usa um método chamado LoRA para fazer essas mudanças de forma eficiente, mantendo a maior parte do modelo original intacta.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add wshobson/agents --skill vision-sft

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/llm-finetuning/skills/vision-sft/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Visão-Linguagem SFT

Esta habilidade assume que finetuning-method-selection já foi roteado para cá: a forma dos dados é demonstrações de imagem+texto, não pares de preferência ou um sinal de recompensa verificável, e a base é um modelo de visão-linguagem em vez de um modelo apenas de texto. lora-qlora-recipes cobre a receita LoRA/QLoRA apenas de texto que esta habilidade especializa para a torre e o projetor de visão; leia essa habilidade primeiro se os fundamentos de LoRA (rank, alpha, módulos alvo) ainda não forem familiares.

Entrada: um conjunto de dados de imagem+texto e um modelo base VLM já selecionado no catálogo de modelos. Formato de saída: uma configuração de adaptador validada — quais componentes estão congelados, módulos alvo LoRA, e um orçamento de min_pixels/max_pixels — que llm-finetuning-training-engineer consome diretamente ao gerar um script executável.

Referência Rápida

Situação Padrão
Adaptando comportamento em imagens familiares Torre+projetor congelados, LoRA r=8–16, α=16–32
Mudança de domínio visual Descongelar as últimas 6 camadas ViT, LR visual 5–10x menor
Não cabe em bf16 no rank alvo QLoRA — apenas torre de visão congelada
fast_inference=True finetune_vision_layers=False
Perda normal, avaliação não melhora Verifique os Dois Assassinos Silenciosos abaixo primeiro

A Receita de Consenso

Congele a torre de visão e o projetor. Coloque LoRA apenas no LLM, todo-linear (a mesma lista de módulos alvo de atenção + MLP que SFT apenas de texto — veja lora-qlora-recipes), em r=8–16, α=16–32. Este é o padrão estabelecido para adaptar o comportamento de um VLM sem perturbar como ele vê.

  • A torre de visão e o projetor permanecem congelados por padrão. Eles já codificam uma representação visual geral; retreiná-los raramente é necessário e adiciona risco sem adicionar capacidade para a maioria das tarefas.
  • O rank LoRA é menor que o padrão geral apenas de texto (r=8–16 aqui vs r=16–32 para SFT apenas de texto) porque o adaptador apenas de LLM está adaptando o comportamento, não injetando novo conhecimento visual.
  • QLoRA é permitido apenas com uma torre de visão congelada. Quantizar a base e, ao mesmo tempo, descongelar e treinar camadas de visão é não suportado e instável — trate isso como uma regra rígida de emparelhamento, não como algo ajustável. Se a torre de visão precisar ser descongelada, abandone QLoRA e use LoRA bf16 em vez disso.
# freeze tower + projector; LoRA on LLM only
for name, param in model.named_parameters():
    if "vision_tower" in name or "projector" in name:
        param.requires_grad = False

target_modules = [
    "q_proj", "k_proj", "v_proj", "o_proj",
    "gate_proj", "up_proj", "down_proj",
]  # LLM-only, all-linear — r=8-16, alpha=16-32

Quando Descongelar

Descongelar camadas de visão é uma escalada deliberada, não uma decisão padrão — recorra a isso apenas quando a mudança de domínio for visual, não textual.

  • Descongele apenas para mudança de domínio visual. Se a tarefa é ensinar novo comportamento em imagens que a torre já entende (gráficos, fotos do dia a dia), a receita de torre congelada acima é suficiente. Descongele quando o próprio domínio visual for desconhecido para a torre — imagens de satélite, exames médicos, diagramas técnicos densos — e a receita de torre congelada atingir um platô.
  • As últimas 6 camadas ViT são o ponto ideal. Descongelar as seis últimas camadas de visão-transformer (não a torre inteira) resultou em +1.7pt DocVQA com ~1.75x custo de treinamento sobre a linha de base congelada. Considere seis camadas como o teto que vale a pena pagar; ir além gasta computação sem um resultado correspondente.
  • O LR visual deve ser 5–10x menor que o LR do LLM quando descongelado. A representação pré-treinada da torre de visão é mais frágil que o adaptador do LLM; o mesmo LR para ambos arrisca sobrescrever a representação visual mais rápido do que o adaptador do LLM pode compensar.
  • Rank LoRA alto na camada de patch-embedding arrisca NaN. Se o patch-embedding estiver no conjunto descongelado, mantenha seu rank baixo e observe a perda nos primeiros passos atentamente — um dos lugares mais frágeis para aplicar LoRA em um VLM.

Os Dois Assassinos Silenciosos

Ambos produzem uma execução que treina sem erro e sem aprendizado: a curva de perda parece normal, o modelo não melhora, e nenhum deles gera uma exceção — ambos precisam de uma verificação explícita de pré-treinamento, não apenas de um log de treinamento limpo.

  • Incompatibilidade de tag/contagem de imagem. Cada token placeholder de imagem no texto modelado deve mapear 1:1 para um item de mídia realmente passado para o collator. Uma incompatibilidade (um placeholder, zero ou duas imagens anexadas; ou uma imagem sem placeholder) não gera erro na maioria dos collators —
Perguntas frequentes

O que significa 'congelar' partes do modelo?

Congelar significa que essas partes do modelo não serão alteradas durante o treinamento. É como manter intacto o conhecimento que a IA já tem sobre como ver.

O que é LoRA?

LoRA é uma técnica que permite ajustar um modelo de IA sem precisar retreinar tudo. É mais rápido e usa menos recursos, focando em pequenas 'adaptações'.

Por que o tamanho da imagem (min_pixels/max_pixels) é importante?

Define a resolução das imagens que o modelo pode processar. Ajustar isso corretamente é crucial para que o modelo veja detalhes importantes sem usar muita memória ou falhar.

Detalhes

Descrição original do autor

Fine-tune vision-language models (VLMs) with supervised learning on image+text data. Use when adapting a VLM to a visual domain or task, configuring frozen-vision-tower LoRA, or debugging a VLM fine-tune that trains without learning.

repo: wshobson/agents

Popularidade

Estrelas no GitHub
41 mil
Posição no ranking
#4904
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas