Last translated: 14 Jun 2025

Translation Not Available Yet

This repository's README hasn't been translated yet. Once translated, it will be easier to read and understand in your native language (中文).

After translating, add the links to README so others can view it directly.

Chatbot UI

O aplicativo de chat com IA de código aberto para todos.

Chatbot UI

Demonstração

Veja a demonstração mais recente aqui.

Atualizações

Olá a todos! Recebi seus feedbacks e estou trabalhando duro em uma grande atualização.

Recursos como implantação simplificada, melhor compatibilidade com back-end e layouts móveis aprimorados estão a caminho.

Volto em breve.

-- Mckay

Versão Hospedada Oficial

Use o Chatbot UI sem precisar hospedá-lo você mesmo!

Encontre a versão hospedada oficial do Chatbot UI aqui.

Patrocínio

Se você acha o Chatbot UI útil, considere patrocinar meu trabalho de código aberto :)

Problemas

Restringimos "Issues" a problemas reais relacionados ao código.

Estamos recebendo um excesso de issues que se resumem a solicitações de recursos, problemas com provedores de nuvem, etc.

Se você está tendo problemas com configuração, consulte a seção "Ajuda" na aba "Discussions" acima.

Issues não relacionados ao código provavelmente serão fechados imediatamente.

Discussões

Encorajamos fortemente sua participação na aba "Discussions" acima!

Discussões são um ótimo lugar para fazer perguntas, compartilhar ideias e obter ajuda.

Provavelmente, se você tem uma dúvida, outra pessoa também tem.

Código Legado

O Chatbot UI foi recentemente atualizado para sua versão 2.0.

O código da versão 1.0 pode ser encontrado no branch legacy.

Atualizando

No terminal, na raiz do seu repositório local do Chatbot UI, execute:

npm run update

Se você executa uma instância hospedada, também precisará executar:

npm run db-push

para aplicar as migrações mais recentes ao seu banco de dados em produção.

Início Rápido Local

Siga estas etapas para executar sua própria instância do Chatbot UI localmente.

Você pode assistir ao tutorial em vídeo completo aqui.

1. Clone o Repositório

git clone https://github.com/mckaywrigley/chatbot-ui.git

2. Instale as Dependências

Abra um terminal no diretório raiz do seu repositório local do Chatbot UI e execute:

npm install

3. Instale o Supabase e Execute Localmente

Por que Supabase?

Anteriormente, usávamos armazenamento local do navegador para armazenar dados. No entanto, isso não era uma boa solução por alguns motivos:

  • Problemas de segurança
  • Armazenamento limitado
  • Limita casos de uso multimodais

Agora usamos o Supabase porque é fácil de usar, é open-source, é Postgres e tem um plano gratuito para instâncias hospedadas.

Vamos oferecer suporte a outros provedores no futuro para dar mais opções.

1. Instale o Docker

Você precisará instalar o Docker para executar o Supabase localmente. Você pode baixá-lo aqui gratuitamente.

2. Instale a CLI do Supabase

MacOS/Linux

brew install supabase/tap/supabase

Windows

scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase

3. Inicie o Supabase

No terminal, na raiz do seu repositório local do Chatbot UI, execute:

supabase start

4. Preencha os Segredos

1. Variáveis de Ambiente

No terminal, na raiz do seu repositório local do Chatbot UI, execute:

cp .env.local.example .env.local

Obtenha os valores necessários executando:

supabase status

Observação: Use API URL de supabase status para NEXT_PUBLIC_SUPABASE_URL

Agora vá ao seu arquivo .env.local e preencha os valores.

Se a variável de ambiente estiver definida, ela desativará a entrada nas configurações do usuário.

2. Configuração SQL

No primeiro arquivo de migração supabase/migrations/20240108234540_setup.sql, você precisará substituir 2 valores pelos valores obtidos acima:

  • project_url (linha 53): http://supabase_kong_chatbotui:8000 (padrão) pode permanecer inalterado se você não alterar seu project_id no arquivo config.toml
  • service_role_key (linha 54): Você obteve esse valor executando supabase status

Isso evita problemas com arquivos de armazenamento não sendo excluídos corretamente.

5. Instale o Ollama (opcional para modelos locais)

Siga as instruções aqui.

6. Execute o app localmente

No terminal, na raiz do seu repositório local do Chatbot UI, execute:

npm run chat

Sua instância local do Chatbot UI agora deve estar em execução em http://localhost:3000. Certifique-se de usar uma versão compatível do node (ex: v18).

Você pode visualizar sua interface gráfica de back-end em http://localhost:54323/project/default/editor.

Início Rápido Hospedado

Siga estas etapas para executar sua própria instância do Chatbot UI na nuvem.

Tutorial em vídeo em breve.

1. Siga o Início Rápido Local

Repita as etapas 1-4 do "Início Rápido Local" acima.

Você vai querer repositórios separados para suas instâncias local e hospedada.

Crie um novo repositório para sua instância hospedada do Chatbot UI no GitHub e envie seu código para ele.

2. Configure o Back-end com Supabase

1. Crie um novo projeto

Acesse Supabase e crie um novo projeto.

2. Obtenha os Valores do Projeto

No painel do projeto, clique no ícone "Project Settings" no canto inferior esquerdo.

Aqui você obterá os valores para as seguintes variáveis de ambiente:

  • Project Ref: Encontrado em "General settings" como "Reference ID"

  • Project ID: Encontrado na URL do seu painel de projeto (Ex: https://supabase.com/dashboard/project/<SEU_PROJECT_ID>/settings/general)

Ainda em "Settings", clique na aba "API" à esquerda.

Aqui você obterá os valores para:

  • Project URL: Encontrado em "API Settings" como "Project URL"

  • Anon key: Encontrado em "Project API keys" como "anon public"

  • Service role key: Encontrado em "Project API keys" como "service_role" (Lembrete: Trate isso como uma senha!)

3. Configure a Autenticação

Clique no ícone "Authentication" à esquerda.

Nas abas de texto, clique em "Providers" e certifique-se de que "Email" está ativado.

Recomendamos desativar "Confirm email" para sua instância pessoal.

4. Conecte-se ao Banco de Dados Hospedado

Abra seu repositório para a instância hospedada do Chatbot UI.

No primeiro arquivo de migração supabase/migrations/20240108234540_setup.sql, substitua 2 valores pelos obtidos acima:

  • project_url (linha 53): Use o valor Project URL obtido
  • service_role_key (linha 54): Use o valor Service role key obtido

Agora, abra um terminal na raiz do seu repositório local do Chatbot UI. Vamos executar alguns comandos.

Faça login no Supabase executando:

supabase login

Em seguida, vincule seu projeto executando com o "Project ID" obtido:

supabase link --project-ref <project-id>

Seu projeto agora deve estar vinculado.

Finalmente, envie seu banco de dados para o Supabase executando:

supabase db push

Seu banco de dados hospedado agora deve estar configurado!

3. Configure o Front-end com Vercel

Acesse Vercel e crie um novo projeto.

Na página de configuração, importe seu repositório GitHub para a instância hospedada do Chatbot UI. Nas Configurações do projeto, na seção "Build & Development Settings", altere o Framework Preset para "Next.js".

Nas variáveis de ambiente, adicione as seguintes com os valores obtidos:

  • NEXT_PUBLIC_SUPABASE_URL
  • NEXT_PUBLIC_SUPABASE_ANON_KEY
  • SUPABASE_SERVICE_ROLE_KEY
  • NEXT_PUBLIC_OLLAMA_URL (apenas necessário ao usar modelos locais do Ollama; padrão: http://localhost:11434)

Você também pode adicionar chaves de API como variáveis de ambiente.

  • OPENAI_API_KEY
  • AZURE_OPENAI_API_KEY
  • AZURE_OPENAI_ENDPOINT
  • AZURE_GPT_45_VISION_NAME

Para a lista completa, consulte o arquivo '.env.local.example'. Se as variáveis de ambiente para chaves de API estiverem definidas, isso desativará a entrada nas configurações do usuário.

Clique em "Deploy" e aguarde a implantação do front-end.

Após a implantação, você poderá usar sua instância hospedada do Chatbot UI via a URL fornecida pelo Vercel.

Contribuindo

Estamos trabalhando em um guia para contribuições.

Contato

Envie uma mensagem para Mckay no Twitter/X