Aprendizagem pessoal com IA
e orientação prática

DDG-Chat: implantação do back-end do Chat2API com um clique, DuckDuckGo para APIs

Introdução geral

O DDG-Chat é um projeto de código aberto que tem como objetivo fornecer uma implantação com um clique em várias plataformas do ChatGPT API backend. O projeto oferece suporte a vários modelos, incluindo GPT-4o mini, Claude 3 Haiku, Llama 3.1 70B e Mixtral 8x7B, todos fornecidos anonimamente pela DuckDuckGo. Todos os modelos são fornecidos anonimamente pela DuckDuckGo. Os usuários podem facilmente implantar e usar o backend da API por meio do Vercel, Cloudflare Workers, Docker e outras plataformas.

Como a API do DDG limita o número de simultaneidade a um único IP, é recomendável usar o Vercel para a implantação ou, se você usar uma implantação local como o Docker, certifique-se de que o projeto esteja sendo executado em um pool de proxy.


 

Lista de funções

  • Suporta vários modelos de ChatGPT
  • Implementação com um clique no Vercel, Cloudflare Workers, Docker e muito mais!
  • Fornecer interface de API para aplicativos de terceiros
  • Oferece suporte a vários métodos de implantação, incluindo implantação na nuvem e local
  • Fornecer documentação detalhada de implantação e uso

 

Usando a Ajuda

Instalação e implementação

Implantação da Vercel

  1. Implementação do repositório Cloud Fork: (Implantação do Vercel One Click)
    • Faça o fork desse repositório em sua conta do GitHub.
    • Vá para a página New Project do Vercel e importe o repositório que você acabou de bifurcar.
    • Clique em Deploy para concluir a implementação.
  2. Implementação de repositório clone local:
    • Certifique-se de que você tenha um ambiente Node.js.
    • Execute o seguinte comando:
      npm i -g vercel
      login do vercel
      git clone https://github.com/leafmoes/DDG-Chat.git ddg-chat
      cd ddg-chat
      npm run publish
      

Implantação de trabalhadores da Cloudflare

  1. Acesse o console do Cloudflare Workers and Pages e crie um worker.
  2. Nas configurações do Workers, defina o tempo de execução como nodejs_compat.
  3. Cole o código do repositórioVá para seus trabalhadores e clique em Deploy.

Implementação do Docker

  1. Construção de linha de comando:
    docker run -it -d --name ddg-chat -p 8787:8787 ghcr.io/leafmoes/ddg-chat:latest
    
  2. Crie usando o arquivo docker-compose.yml:
    • Faça o download e salve o arquivo docker-compose.yml.
    • Inicie o serviço executando o seguinte comando no diretório em que o arquivo está localizado:
      docker-compose up -d
      

variável de ambiente

Endereço de prefixo para chamadas à API do #
API_PREFIX = '/'
Chave de API que o # usa como autenticação para chamadas de API
API_KEY = 'dummy_key'
# Número de novas tentativas para uma solicitação com falha ao DDG
MAX_RETRY_COUNT = 3
# Atraso de nova tentativa para solicitações com falha ao DDG em ms
RETRY_DELAY = 5000

Usando a API

interface de chamada

Use um aplicativo ChatGPT de terceiros para invocar a interface, como o ChatNextWeb. A seguir, um exemplo de solicitação de diálogo:

curl --request POST 'https://你的域名/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"model": "gpt-4o-mini",
"stream": true
}'

Consulta de modelo

entrevistas https://你的域名/v1/models Permite que você visualize os modelos suportados atualmente.

problemas comuns

  • Limitações da implantação do VercelA versão gratuita leva 60 segundos para uma única solicitação de API e 100.000 chamadas de API por mês.
  • Erro 429 ERR_SERVICE_UNAVAILABLESe a API do DDG limitar a simultaneidade de um único IP, é recomendável reduzir a simultaneidade e também usar um pool de proxy para solicitações.

 

Implantação alternativa da versão go: serviço gratuito de servidor serv00 implantação de serviço residente

Fonte do projeto

  1. Vá para o painel serv00, clique em zonas DNS e clique em Add new zone (Adicionar nova zona) para adicionar seu próprio nome de domínio personalizado.
  2. Vá para cf para adicionar a análise de registro A
  3. Clique em Additional services (Serviços adicionais) e clique em Run your own applications (Executar seus próprios aplicativos). Ativado
  4. Abra uma porta, estou abrindo a 5005.
  5. Clique em WWW Websites Clique em Add website Domain para preencher seu próprio nome de domínio.

ChatGPT para API para implementar serviços residentes usando serv00. -1

  1. Clique para fazer o download do arquivo Concessão de permissões executáveis a arquivos
    chmod +x ddgchatgo-freebsd-amd64
    
  2. existirpublic_htmlCrie um script de inicialização emstart_ddgchatgo.sh
    #!/bin/bash
    # Defina o nome do processo e o comando de início
    PROCESS_NAME="ddgchatgo"
    START_COMMAND="PORT=5005 /home/yourServ00username/domains/example.com/public_html/ddgchatgo-freebsd-amd64 > /home/yourServ00user/domains/example .com/public_html/ddgchatgo.log 2>&1 &"
    # Verifique se o processo está em execução
    if ! pgrep -f "$PROCESS_NAME" > /dev/null
    então
    echo "O processo $PROCESS_NAME não está em execução, está iniciando..."
    # Iniciando o processo
    eval "$START_COMMAND"
    if [ $? -eq 0 ]; then
    echo "O processo $PROCESS_NAME foi iniciado com êxito."
    then echo "O processo $PROCESS_NAME foi iniciado com êxito." else
    echo "O processo $PROCESS_NAME falhou ao iniciar."
    else echo "O processo $PROCESS_NAME não conseguiu iniciar.
    echo "O processo $PROCESS_NAME não conseguiu iniciar." fi
    echo "O processo $PROCESS_NAME já está em execução."
    fi
    
  3. Concessão de privilégios de execução de scripts
    chmod +x start_api.sh
    
  4. Na primeira vez que você executar o cron, basta executar o seguinte comando
    nohup /home/your Serv00 username/domains/example.com/public_html/start_ddgchatgo.sh > /home/your Serv00 username/domains/example.com/public_html/start_ ddgchatgo.log 2>&1 &
    

    Altere o nome de usuário do Serv00 para o seu próprio.
    example.com para seu próprio nome de domínio
    PORT Se a porta aberta não for 5005, você poderá alterá-la.

 

Scripts de instalação com um clique

#!/bin/bash
# Etapa 1: Entrar no diretório de trabalho
cd ~/domains/example.com/public_html/
# Etapa 2: Faça o download do programa executável
wget https://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.2/ddgchatgo-freebsd-amd64
# Etapa 3: Conceda permissões de executável ao arquivo freechatgpt descompactado
chmod +x ddgchatgo-freebsd-amd64
# Etapa 4: Crie o script start_ddgchatgo.sh
cat < start_ddgchatgo.sh
#!/bin/bash
# Defina o nome do processo e o comando de início
PROCESS_NAME="ddgchatgo"
START_COMMAND="PORT=5005 /home/your Serv00 username/domains/example.com/public_html/ddgchatgo-freebsd-amd64 > /home/your Serv00 username/domains/ example.com/public_html/ ddgchatgo-freebsd-amd64 > /home/your Serv00 username/domains/ example.com/public_html/ ddgchatgo-freebsd-amd64 example.com/public_html/ddgchatgo.log 2>&1 &"
# Verifique se o processo está em execução
if ! pgrep -f "$PROCESS_NAME" > /dev/null
então
echo "O processo $PROCESS_NAME não está em execução, está iniciando..."
# Iniciando o processo
eval "$START_COMMAND"
if [ $? -eq 0 ]; then
echo "O processo $PROCESS_NAME foi iniciado com êxito."
então echo "O processo $PROCESS_NAME foi iniciado com êxito." else
echo "O processo $PROCESS_NAME falhou ao iniciar."
else echo "O processo $PROCESS_NAME não conseguiu iniciar.
echo "Falha ao iniciar o processo $PROCESS_NAME." else
echo "O processo $PROCESS_NAME já está em execução."
fi
EOL
# Etapa 5: Dê permissão de execução ao start_ddgchatgo.sh
chmod +x start_ddgchatgo.sh
# Etapa 6: Execute o script start_ddgchatgo.sh e envie os registros para start_ddgchatgo.log
nohup /home/your Serv00 username/domains/example.com/public_html/start_ddgchatgo.sh > /home/your Serv00 username/domains/example.com/public_html/start_ ddgchatgo.log 2>&1 &

Em scripts de um cliquehttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.2/ddgchatgo-freebsd-amd64Substituir porhttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.4/ddgchatgo-freebsd-amd64A API KEY pode ser definida.

Altere o nome de usuário do Serv00 para o seu próprio.
example.com para seu próprio nome de domínio
PORT Se a porta aberta não for 5005, você poderá alterá-la.

 

Após a conclusão da implantação, o acesso ao domínio retorna o seguinte para indicar o sucesso:

{
"message": "Welcome to the API" (Bem-vindo à API)
}

 

Acesso ao newapi após a criação

nova api/uma api selecione canais personalizados
http://chat.xxl.serv00.net/v1/chat/completions

Aprendizagem fácil com IA

O guia do leigo para começar a usar a IA

Ajuda você a aprender a utilizar as ferramentas de IA com baixo custo e a partir de uma base zero.A IA, assim como o software de escritório, é uma habilidade essencial para todos. Dominar a IA lhe dará uma vantagem em sua busca de emprego e metade do esforço em seu trabalho e estudos futuros.

Ver detalhes>
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " DDG-Chat: implantação do back-end do Chat2API com um clique, DuckDuckGo para APIs

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil