Inglês | 简体中文 | 繁體中文 | 日本語 | Español | Français | Р рйий | Deutsch
Bem -vindo ao Telegram GPT Worker! Este é um bot de telegrama eficiente desenvolvido no TypeScript. Ele suporta vários idiomas e modelos de IA, implantados em trabalhadores do CloudFlare, fornecendo aos usuários uma experiência de serviço rápida e escalável.
Antes de começar, certifique -se de ter o seguinte:
Para etapas detalhadas de implantação, consulte o tutorial abaixo.
/start - Inicie o bot/language - Switch Language/switchmodel - Modelo AI Switch/new - inicie uma nova conversa/history - Obtenha o resumo do histórico de conversas/help - Obtenha informações de ajuda/img - Gere Image (Dall -e)/flux - Gere Image (Fluxo Cloudflare) /GPT-Telegram-Worker
│
├── /src
│ ├── /api
│ │ ├── azure.ts # Handle Azure API interactions
│ │ ├── claude.ts # Handle Claude API interactions
│ │ ├── flux-cf.ts # Handle Cloudflare AI drawing interface
│ │ ├── gemini.ts # Handle Google Gemini API interactions
│ │ ├── groq.ts # Handle Groq API interactions
│ │ ├── image_generation.ts # Handle DALL·E drawing interface
│ │ ├── model_api_interface.ts # Common interface defining model API standard structure
│ │ ├── openai_api.ts # Handle OpenAI API interactions
│ │ ├── openai_compatible.ts # Handles OpenAI compatible API interactions
│ │ └── telegram.ts # Handle Telegram bot logic
│ ├── /config # Configuration files
│ │ └── commands.ts # Telegram bot commands
│ ├── /utils
│ │ └── helpers.ts # Utility functions and tools
│ │ └── i18n.ts # Multilingual functions
│ │ └── redis.ts # Upstash Redis functions
│ │ └── image_analyze.ts # Image upload functions
│ ├── index.ts # Entry file, handling requests and responses
│ └── env.ts # Configure environment variables
├── /types # Type definition files
│ └── telegram.d.ts # Type definitions for Telegram API
├── wrangler.toml # Cloudflare Worker configuration file
├── tsconfig.json # TypeScript configuration file
├── package.json # Project dependency file
└── README.md # Project documentation
Instale o Wrangler CLI:
npm install -g @cloudflare/wranglerFaça login na sua conta Cloudflare:
wrangler loginCrie um novo projeto de trabalhadores:
wrangler init telegram-bot Copie o arquivo dist/index.js em seu projeto.
Edite o arquivo wrangler.toml para configurar seu projeto:
name = " telegram-bot "
type = " javascript "
account_id = " your_account_id "
workers_dev = trueImplante para os trabalhadores do CloudFlare:
wrangler publishdist/index.js no editor e salve o arquivo.Use a API do Telegram Bot para configurar o webhook. Exemplo de URL:
https://api.telegram.org/bot < YOUR_BOT_TOKEN > /setWebhook ? url=https://your-worker.your-subdomain.workers.dev/webhookhttps://api.telegram.org/bot123456789:abcdefghijklmn/setWebhook ? url=https://gpt-telegram-worker.abcdefg.workers.dev/webhookClone o projeto:
git clone https://github.com/snakeying/telegram-bot.gitInstale dependências:
npm installConfigure variáveis de ambiente.
Compile TypeScript:
npm run buildComece o bot:
npm start| Nome variável | Descrição | Valor padrão | Exemplo |
|---|---|---|---|
| OpenAi_API_KEY | Chave da API OpenAI | - | sk-abcdefghijklmnopqrstuvwxyz123456 |
| Openai_base_url | URL da base da API OpenAI | https://api.openai.com/v1 | https://your-custom-endpoint.com/v1 |
| Openai_models | Lista de modelos OpenAI disponíveis | - | GPT-3.5-Turbo, GPT-4 |
| Telegram_bot_token | Token de bot de telegrama | - | 123456: ABC-DEF1234GHIKL-GYX57W2V1U123EW11 |
| Whitelisted_users | Lista de IDs de usuário autorizados a usar o bot | - | 12345678.87654321 |
| System_init_message | Mensagem de inicialização do sistema | Você é um assistente útil. | Você é um assistente útil. |
| System_init_message_role | Função de mensagem de inicialização do sistema | sistema | sistema |
| Default_model | Modelo de IA padrão para usar | - | GPT-3.5-Turbo |
| Upstash_redis_rest_url | Upstash Redis Rest Url | - | https://your-redis-url.upstash.io |
| Upstash_redis_rest_token | Token de descanso Redis Redis | - | Seu-Redis-Token |
| Dall_e_model | Versão do modelo Dall-E | Dall-e-3 | Dall-e-3 |
| CloudFlare_API_TOKen | Token da API CloudFlare | - | Seu cloudflare-api-token |
| CloudFlare_Account_Id | ID da conta Cloudflare | - | seu cloudflare-conta-id |
| FLUX_STEPS | Número de etapas de geração de fluxo | 4 | 4-8, etapas máximas são 8 |
| Prompt_Otimization | Ativar otimização imediata | falso | verdadeiro |
| External_API_BASE | URL base externo da API | - | https://external-api.com |
| External_model | Nome do modelo externo | - | nome externo-modelo |
| External_api_key | Chave de API externa | - | key externo-api |
| Google_model_key | Chave da API do modelo AI do Google | - | Seu Google-Api-Key |
| Google_model_baseurl | Google AI API BASE URL | https://generacleguage.googleapis.com/v1beta | https://your-custom-google-endpoint.com |
| Google_models | Lista de modelos de IA do Google disponíveis | - | Gemini-Pro, Gemini-Pro-Vision |
| Groq_api_key | Chave da API Groq | - | Your-Groq-api-Key |
| Anthropic_API_KEY | Chave da API antrópica | - | Seu antropic-api-chave |
| Anthropic_base_url | URL da base da API antrópica | https://api.anthropic.com | https://your-custom-anthrópica-ndpoint.com |
| Openai_compatible_key | Chave da API compatível com OpenAI | - | sk-abcdefghijklmnopqrstuvwxyz123456 |
| Openai_compatible_url | URL da base de API compatível com OpenAI | - | https://your-custom-endpoint.com/v1 |
Nota: Algumas variáveis precisam ser configuradas manualmente e não possuem valores padrão.
Permite que os usuários enviem imagens e recebam resultados de análise de IA. Veja como usá -lo:
Nota: verifique se o modelo de IA que você está usando suporta a análise de imagem. Se o modelo atual não o suportar, o bot solicitará que você mude para um modelo de suporte multimodal.
Quando a variável de ambiente de otimização PORND_OPTILIZAÇÃO é definida como TRUE, o recurso de geração de imagens de fluxo usa uma API externa para otimizar os prompts. Este recurso funciona através das etapas a seguir:
Esse recurso pode ajudar a gerar imagens mais precisas que se alinham melhor às características do modelo de fluxo. Para usar esse recurso, verifique se todas as variáveis de ambiente relevantes estão configuradas corretamente.
Este projeto está licenciado sob a licença do MIT.
Copyright (C) 2024 [Snakeying]