Compartilhamento de tecnologia

Registros de armadilhas ao reproduzir projetos relacionados ao StableDiffusion

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Venho estudando diagramas vicentinos há algum tempo e há alguns artigos reproduzidos. Este blog registra principalmente as armadilhas em que pisei.

Atualmente, os projetos de implementação dos diagramas vicentinos estão divididos principalmente em duas categorias:

1. Implementação baseada no arquivo de projeto original de difusão estável

Endereço original do projeto:https://github.com/Stability-AI/stablediffusion

Os códigos de alguns artigos são desenvolvidos com base neste projeto original. É improvável que criemos um novo ambiente virtual para cada projeto, por isso iremos inevitavelmente executar vários projetos no mesmo ambiente. No entanto, o ambiente do python não é particularmente amigável e diferentes versões do mesmo pacote também apresentam diferenças. Portanto, muitas vezes surgem alguns problemas.

Veja minha reprodução anterior de Vico como exemplo. Quando treinei o modelo para inferência, ocorreu um erro:

Diz que não é possível baixar o modelo da Internet, mas eu o configurei claramente para um caminho local no código do projeto, portanto é improvável que esse problema aconteça novamente. Então olhei para o rastreamento do erro e descobri que quando ele estava em execução, ele realmente executava o código do Dreambooth na mesma pasta. Naquele momento, pensei que era porque o arquivo tinha o mesmo nome e o sistema o lia automaticamente sequencialmente. ao obter o caminho da dependência, então imprimo o caminho do sistema:

Depois de excluir tudo relacionado ao Dreambooth, ainda não funcionou. Depois de pensar bem, deve ser um problema ambiental. Mais tarde descobri que era porque o ldm do projeto local não estava instalado e o ambiente ainda usava o ldm instalado anteriormente. Na verdade, a solução é muito simples, basta executar pip install -e.