Prompts A1111/Forge: Wildcards e Dynamic Prompts
Compara extensões que limpam prompts, geram variações e gerenciam bibliotecas de personagens no A1111 e Forge — com recursos verificados e erros comuns.
On this page
Prompts A1111/Forge: Wildcards e Dynamic Prompts
O que cada ferramenta faz de fato
sd-webui-prompt-format — limpeza para prompts baseados em tags
Esta extensão roda sempre que você clica em Generate no A1111 ou Forge, ou manualmente via Alt+Shift+F [^1]. Configurações ficam na seção Prompt Format na categoria System: Funcionalidade | O que faz | Limitação
|---|---|---
Remover espaços e vírgulas extras | Colapsa espaços em branco repetidos e vírgulas perdidas | Apenas na mesma linha Corrigir colchetes, vírgulas, pontos fora do lugar | Repara sintaxe como tag,, tag ou tag . | Apenas na mesma linha Remove Duplicates | Deleta tags idênticas | Apenas prompts baseados em tags; ignora prompts estilo frase Remove Underscores | Substitui _ por espaço | — Adicionar vírgula a cada quebra de linha | Garante separação de tags entre linhas | — Limpar ruído de paste do Booru | Remove metadados do danbooru/gelbooru | —
O removedor de duplicatas é local por linha — não pega uma tag que aparece na linha 1 e novamente na linha 3. Também não faz nada para prompts em linguagem natural. O README nota isso explicitamente: "Only checks within the same line ... Only works for tag-based prompt, not sentence-based prompt" [^1].
Gatilho manual: Alt+Shift+F. Modo automático pode ser desligado se outras extensões (ex.: tagcomplete) re-disparam nas edições do formatador.
sd-dynamic-prompts — linguagem de template + engine de wildcards
Esta extensão adiciona uma linguagem de template ao A1111/Forge. Sintaxe principal do tutorial oficial [^2]: Sintaxe | Comportamento | Exemplo
|---|---|---
{a\|b\|c} | Escolhe uma opção por geração | a {gold\|platinum} band {{a\|b}\|c} | Variantes aninhadas | {{rose\|yellow\|white} gold\|platinum} __name__ | Carrega name.txt da pasta wildcards | __gems__ → cada linha em gems.txt {N$$__name__} | Escolhe N entradas distintas do wildcard | {2$$__artists/illustrations/childrens_books__} {N-M$$__name__} | Escolhe entre N e M entradas | {2-4$$__wildcard__} {N$$ and $$__name__} | Separador personalizado | Usa and em vez de vírgula # comment | Ignorado dentro das chaves | {# isto é ignorado}
Modo combinatório enumera toda combinação em vez de amostrar um ramo — útil para grids em lote.
Recursos integrados (mesmo tutorial):
- Wildcards Manager — biblioteca organizada por assunto; habilita/desabilita por arquivo.
- Magic Prompt — expande um assunto em prompt completo usando rede neural. Na primeira vez, o Dynamic Prompts baixa o modelo (pode demorar dependendo da conexão).
- I'm feeling lucky — consulta Lexica.art por prompts reais que combinam com sua entrada.
- Attention grabber — adiciona ênfase aleatória como
(full body illustration:1.58).
Arquivos de wildcard são .txt simples (uma entrada por linha) guardados em extensions/sd-dynamic-prompts/wildcards/. Você deve reiniciar a web UI após editá-los — isso é confirmado pelo tutorial do sd-dynamic-prompts [^2] e também notado no guia do megapack C0rn_Fl4k3s [^6].
Bancos de personagens — BoChars e megapack C0rn_Fl4k3s
Duas grandes coleções da comunidade ilustram o padrão: Coleção | Formato | Escopo reportado | Notas
|---|---|---|---
BoChars (DonMischo) | YAML único mesclado | Categorias cyberpunk / regular / mágico / sci-fi de personagens; roupas, construções, cósmico, criaturas, cenas | Usa caminhos estilo __BoChars/person/male__; alega reuso entre wildcards via propriedades compartilhadas (cores, tecidos, materiais) [^5] Dynamic Wildcard Megapack (C0rn_Fl4k3s) | 154 wildcards, bundle + AllInOne | Basemodel (gênero, etnia, 15F/23M builds, ~40/45 penteados), locations (770+ lugares, 5.150+ variantes), fantasias, criaturas, objetos, cenas | Todas as contagens são reportadas pelo autor; não foi possível abrir os arquivos publicados para verificar [^6] Recursos fantasy DonMischo (artigo 3432) | Artigo Civitai | Checkpoints, LoRAs e wildcards curados para criaturas fantasy | Lista 20+ LoRAs de criaturas e packs de wildcard para arte fantasy [^7]
Ambos seguem a convenção __path__ então funcionam com sd-dynamic-prompts. A extensão resolve tokens __key__ contra arquivos .txt na pasta wildcards — não faz parse de estrutura YAML [^2] [^3].
Cruzamento de ferramentas: ComfyUI Impact Pack
O repo ComfyUI-Impact-Pack contém diretórios custom_wildcards/ e wildcards/ na raiz [^4] e linka um tutorial de wildcards. Isso confirma que existe suporte a wildcards no ComfyUI, mas a sintaxe exata e paridade de recursos não foram verificadas nesta sessão — trate como implementação separada, não substituição drop-in.
Erros comuns e correções
Sintoma | Causa | Correção | Source
|---|---|---|---
Formatação dispara outras extensões (tagcomplete, etc.) | Extensões escutam eventos de edição de texto | Desative "update actual prompts" nas configurações do prompt-format, ou mude para Alt+Shift+F manual | [^1] Tags duplicadas permanecem após limpeza | Implementação é line-local e só modo tag | Não confie nela para prompts estilo frase; deduplicate upstream | [^1] Arquivo de wildcard editado não reflete | Wildcards são lidos no lançamento | Reinicie a web UI após qualquer edição de wildcard | [^2] [^6] Paste do Booru deixa tags do site (artist:name, rating:safe) | Metadados copiados com o prompt | Ative "Clean up unwanted texts when pasting from Booru sites" no prompt-format | [^1] Precisa variação de prompt mas só tem assunto | Qualidade de boilerplate muito baixa | Use Magic Prompt (context-aware) ou I'm feeling lucky (busca Lexica) | [^2]
FAQ
Arquivos de wildcard recarregam sem reiniciar no A1111? Não. O guia do megapack C0rn_Fl4k3s nota que após editar arquivos de wildcard, você deve reiniciar a web UI para as mudanças surtirem efeito [^6]. O tutorial do sd-dynamic-prompts também confirma que arquivos de wildcard são lidos no lançamento [^2].
ComfyUI Impact Pack usa a mesma sintaxe __name__ de wildcard que sd-dynamic-prompts? O repo do Impact Pack contém diretórios de wildcard e link para tutorial, mas não abrimos o arquivo do tutorial nesta sessão [^4]. Paridade de sintaxe deve ser verificada na documentação do Impact Pack antes de assumir compatibilidade drop-in.
Removedores de tags duplicadas em extensões de prompt afetam prompts baseados em frase? Não. O README do prompt-format documenta: "Only works for tag-based prompt, not sentence-based prompt" [^1]. Ele opera em tokens separados por vírgula dentro de uma única linha.
Qual a diferença entre Magic Prompt e I'm feeling lucky? Magic Prompt usa uma rede neural baixada para expandir um assunto contextualmente. I'm feeling lucky consulta Lexica.art por prompts de usuários existentes que combinam com sua entrada. Ambos estão no sd-dynamic-prompts [^2].
Posso usar YAML do BoChars diretamente no sd-dynamic-prompts? Apenas se o YAML for achatado para caminhos de token __key__ que correspondam a arquivos .txt na pasta wildcards. A extensão não faz parse de estrutura YAML — só resolve lookups __path__ contra arquivos de texto [^2] [^5].
Modo combinatório funciona com Magic Prompt? O tutorial os documenta em seções diferentes [^2]. Expansão combinatória enumera variantes do template; Magic Prompt gera novo texto de prompt de uma rede neural. Servem workflows diferentes.
As contagens grandes (154 wildcards, 770+ locations) são verificadas? Não. Esses números vêm dos próprios artigos do Civitai [^5] [^6]. Não foi possível abrir os arquivos de wildcard publicados para confirmar independentemente.