
Veja em ação: https://tinybots.net/artbot
O ArtBot é um cliente da Web não oficial, projetado para interagir com o cluster distribuído da Horda estável-um grupo de GPUs executando difusão estável cujo tempo de processamento foi gentilmente doado por uma comunidade entusiasmada de voluntários.
O ARTBOT é construído usando o Next.js 13 e o TypeScript. Ele foi criado como um projeto paralelo para experimentar várias tecnologias do lado do cliente, como IndexedDB e LocalStorage APIs. Essas APIs permitem que você armazene e privadamente as imagens geradas pela IA que você criou com o cluster dentro do seu próprio navegador.
Os componentes da interface do usuário são construídos personalizados usando uma combinação de componentes estilizados e CSS com vento de cauda, com esforços mais recentes estritamente focados no uso de CSS do Tailwind. O objetivo de longo prazo é remover completamente componentes estilizados da base de código.
O ARTBOT faz uso de ícones de Tabler.
>= 18.0.0>= 9.0.0A maioria dessas etapas deve ser aplicável aos ambientes Linux / MacOS / Windows.
Instalar várias versões do Node.js em sua máquina pode ser complicado. Sou um grande fã do NVM, que permite executar várias versões isoladas do Node.js em sua máquina com facilidade.
Usando nvm , você pode instalar o nó assim:
> nvm install v18.16.0
> nvm alias default nodeDepois de configurar seu ambiente Node.js, você pode clonar este repositório e instalar os pacotes necessários. Dependendo das especificações da sua máquina e velocidade da sua conexão com a Internet, a instalação de todos os pacotes pode levar um ou dois minutos.
> git clone https://github.com/daveschumaker/artbot-for-stable-diffusion
> cd artbot-for-stable-diffusion
> npm install Um script postinstall será executado automaticamente que cria um arquivo .env em branco na raiz da pasta do projeto. Você não precisa adicionar nada, mas a presença é necessária pelo pacote dotenv .
Embora não sejam necessários, o código da base faz referência a algumas variáveis ambientais em vários lugares. Geralmente, são pontos de extremidade para mensagens, serviços de telemetria que eu executo ou armazenamento de dados local relacionado a contagens de modelos e totais de geração de imagens.
IMPORTANTE: Tentar executar o aplicativo dessa maneira em uma máquina Windows não funcionará. Isso se deve à passagem de variáveis de ambiente para o aplicativo da web com os scripts npm . Consulte a seção Solução de problemas para obter mais informações.
Tudo bem, agora você deve ser capaz de executar o aplicativo Web Artbot! Para executar no modo de desenvolvimento (que usa o recurso de recarga a quente do NextJS - onde você pode ver atualizações ao vivo no site enquanto faz alterações)
> npm run dev Em seguida, abra seu navegador e visite http://localhost:3000 , agora você poderá fazer solicitações de imagem imediatamente para a horda estável. Vá para http://localhost:3000/artbot/settings e insira sua chave estável da API Horda para tempos de geração mais rápidos.
Se você deseja executar isso em um tipo de ambiente de produção, primeiro precisará iniciar uma compilação e depois executar como normalmente executaria um aplicativo Node.js.
> npm run build
> npm run startNo TinyBots, meu servidor da web para hospedar o ArtBot, eu uso o PM2 para persistir o aplicativo e reiniciar automaticamente após falhas ou reinicializações. Você pode modificar as configurações relacionadas ao PM2 dentro do ecossistema.config.js.
Além disso, você pode iniciar e parar o PM2 usando:
> npm run pm2:start-prod
> npm run pm2:stop-prod Como mencionado anteriormente, tentar usar npm run dev ou npm run start em um ambiente do Windows resultará em um erro. Uma solução possível para isso é remover a variável de ambiente. No caso do npm run dev , isso seria assim.
package.jsonscripts/dev para remover PORT=3000 do script: > npm run update:build-id && node server.jspackage.json e tentar correr novamente: > npm run devPara outros problemas não mencionados aqui, fique à vontade para abrir uma nova edição no Github ou visitar o canal de feedback do Artbot no servidor estável horda discord.
As contribuições são muito bem -vindas! As diretrizes gerais são as seguintes:
> git checkout -b my-cool-new-featureDeixe -me saber se você tiver alguma dúvida. Estou mais do que feliz em ajudar.
Veja License.md