English | 简体中文 | 繁體中文 | 日本語 | Español | Français | Русский | Deutsch
GPT-Telegram-Bot ist ein leistungsstarker Telegram-Bot, der verschiedene KI-Modelle integriert und intelligente Konversationen, Bildgenerierung und -analyse ermöglicht.
- Unterstützung mehrerer Modelle 🎭: Alle mit OpenAI API kompatiblen Modelle, Google Gemini, Anthropic Claude, Groq und Azure OpenAI
- Intelligente Konversationen 💬: Natürlichsprachliche Interaktionen mit Kontextgedächtnis-Unterstützung
- Bildgenerierung 🎨: Erstellung von Bildern basierend auf Textbeschreibungen
- Bildanalyse 🔍: Interpretation und Beschreibung hochgeladener Bilder
- Mehrsprachige Unterstützung 🌐: Lokalisierungsunterstützung für mehrere Sprachen
- Echtzeit-Antworten ⚡: Echtzeit-Generierung und Anzeige von KI-Antworten
- Benutzer-Whitelist 🔐: Kann so konfiguriert werden, dass nur bestimmte Benutzer Zugriff haben
- OpenAI-Serie: Leistungsstarke Sprachmodelle 🚀
- Google Gemini: Googles KI-Modell der nächsten Generation 🧑🔬
- Anthropic Claude: Eine weitere leistungsstarke Sprachmodell-Option 🎭
- Groq: Hochgeschwindigkeits-Inferenz-KI-Modell ⚡
- Azure OpenAI: Von Microsoft gehosteter OpenAI-Dienst 👔
GPT-Telegram-Bot/
├── api/ # API-bezogene Konfiguration
│ ├── telegram.js # Verarbeitet Telegram-Bot-Interaktionen
├── src/ # Quellcode
│ ├── api.js # Verarbeitet Interaktionen mit OpenAI-kompatiblen APIs
│ ├── bot.js # Hauptlogik des Telegram-Bots
│ ├── config.js # Konfigurationsdatei
│ ├── azureOpenAI.js # Verarbeitet Interaktionen mit Azure OpenAI
│ ├── claude.js # Verarbeitet Interaktionen mit Claude
│ ├── generateImage.js# Verarbeitet Interaktionen mit DALL·E
│ ├── geminiApi.js # Verarbeitet Interaktionen mit Gemini
│ ├── groqapi.js # Verarbeitet Interaktionen mit Groq
│ ├── uploadhandler.js# Verarbeitet Bild-Upload- und Analyselogik
│ ├── localization.js # Verarbeitet mehrsprachige Unterstützung
│ ├── redis.js # Upstash Redis-Datenbankfunktionalität
├── locales/ # Mehrsprachige Unterstützungsdateien
│ ├── en.json
│ ├── zh-cn.json
│ ├── zh-hant.json
│ └── ja.json
│ └── es.json
│ └── fr.json
│ └── ru.json
│ └── de.json
├── docs/ # Mehrsprachige README-Dateien
│ ├── README.zh-cn.md
│ ├── README.zh-hant.md
│ ├── README.ja.md
│ ├── README.es.md
│ ├── README.fr.md
│ ├── README.ru.md
│ └── README.de.md
├── public/ # Vercel Webseite nach Bereitstellung
│ └── index.html # Webseite Einstiegsdatei
├── package.json # Projektabhängigkeiten
├── vercel.json # Vercel Konfigurationsdatei
└── README.md # Projektbeschreibungsdatei
- Vercel-Konto
- Telegram-Konto und Bot-Token
- Upstash Bitte wählen Sie die Redis-Datenbank und aktivieren Sie die Eviction-Funktion
- API-Schlüssel für mindestens einen KI-Dienst
-
Repository klonen:
git clone https://github.com/snakeying/GPT-Telegram-Bot.git cd GPT-Telegram-Bot
-
Abhängigkeiten installieren:
npm install
-
Umgebungsvariablen konfigurieren: Erstellen Sie eine
.env
-Datei und füllen Sie die erforderlichen Konfigurationsinformationen aus (siehe Umgebungsvariablen-Konfiguration unten). -
Auf Vercel bereitstellen:
- Forken Sie dieses Repository
- Ändern Sie es gemäß den Anweisungen am Ende der Readme
- Klicken Sie auf den "Mit Vercel bereitstellen"-Button
- Verbinden Sie Ihr GitHub-Repository
- Konfigurieren Sie die Umgebungsvariablen
- Schließen Sie die Bereitstellung ab
-
Telegram-Webhook einrichten: Verwenden Sie nach der Bereitstellung die folgende URL, um den Webhook einzurichten:
https://api.telegram.org/bot<IHR_BOT_TOKEN>/setWebhook?url=<IHRE_VERCEL_DOMAIN>/api/telegram
Bevor Sie GPT-Telegram-Bot bereitstellen und ausführen, müssen Sie die folgenden Umgebungsvariablen einrichten. Erstellen Sie eine .env
-Datei im Stammverzeichnis des Projekts und konfigurieren Sie die folgenden Variablen:
Variablenname | Beschreibung | Standardwert |
---|---|---|
OPENAI_API_KEY |
OpenAI API-Schlüssel | - |
OPENAI_BASE_URL |
OpenAI API Basis-URL | https://api.openai.com/v1 |
OPENAI_MODELS |
Zu verwendende OpenAI-Modelle (kommagetrennt) | - |
DEFAULT_MODEL |
Standardmäßig zu verwendendes Modell | Erstes Modell in OPENAI_MODELS |
AZURE_OPENAI_API_KEY |
Azure OpenAI API-Schlüssel | - |
AZURE_OPENAI_ENDPOINT |
Azure OpenAI-Endpunkt | - |
AZURE_OPENAI_MODELS |
Zu verwendende Azure OpenAI-Modelle (kommagetrennt) | - |
TELEGRAM_BOT_TOKEN |
Telegram-Bot-Token | - |
WHITELISTED_USERS |
Erlaubte Benutzer-IDs (kommagetrennt) | - |
DALL_E_MODEL |
Zu verwendenes DALL-E-Modell | dall-e-3 |
UPSTASH_REDIS_REST_URL |
Upstash Redis REST-URL | - |
UPSTASH_REST_TOKEN |
Upstash Redis REST-Token | - |
SYSTEM_INIT_MESSAGE |
System-Initialisierungsnachricht | You are a helpful assistant. |
SYSTEM_INIT_MESSAGE_ROLE |
Rolle der Systemnachricht | system |
GEMINI_API_KEY |
Google Gemini API-Schlüssel | - |
GOOGLE_MODELS |
Zu verwendende Google-Modelle (kommagetrennt) | - |
GEMINI_ENDPOINT |
Gemini API-Endpunkt | https://generativelanguage.googleapis.com/v1beta/models |
GROQ_API_KEY |
Groq API-Schlüssel | - |
GROQ_MODELS |
Zu verwendende Groq-Modelle (kommagetrennt) | - |
MAX_HISTORY_LENGTH |
Maximale Verlaufslänge | 50 |
CLAUDE_API_KEY |
Anthropic Claude API-Schlüssel | - |
CLAUDE_MODELS |
Zu verwendende Claude-Modelle (kommagetrennt) | - |
CLAUDE_ENDPOINT |
Claude API-Endpunkt | https://api.anthropic.com/v1/chat/completions |
Stellen Sie sicher, dass Sie diese Umgebungsvariablen zur Umgebungskonfiguration Ihres Projekts hinzufügen, wenn Sie es auf Vercel oder anderen Plattformen bereitstellen.
/start
- Bot initialisieren/new
- Neue Konversation starten/history
- Gesprächsverlauf-Zusammenfassung anzeigen/help
- Hilfeinformationen erhalten/switchmodel <Modellname>
- KI-Modell wechseln/img <Beschreibung> [Größe]
- Bild generieren/language <Sprachcode>
- Schnittstellensprache ändern- Senden Sie ein Bild zur Analyse
- Senden Sie eine Nachricht direkt für eine Konversation
Unterstützte Sprachen (verwenden Sie den /language-Befehl):
- Englisch (en)
- Vereinfachtes Chinesisch (zh-cn)
- Traditionelles Chinesisch (zh-hant)
- Japanisch (ja)
- Spanisch (es)
- Französisch (fr)
- Russisch (ru)
- Deutsch (de)
- Verwenden Sie API-Kontingente vernünftig, insbesondere bei der Nutzung von Bildfunktionen 💸
- Speichern Sie Umgebungsvariablen und API-Schlüssel sicher 🔒
- Verschiedene KI-Modelle können unterschiedliche Funktionen und Einschränkungen haben 🔄
- Überprüfen und aktualisieren Sie regelmäßig Abhängigkeiten, um Sicherheit und Leistung zu gewährleisten 🔧
Pull Requests oder das Öffnen von Issues zur Verbesserung dieses Projekts sind willkommen! Ihre Beiträge werden diesen KI-Assistenten leistungsfähiger und interessanter machen.
Dieses Projekt steht unter der MIT-Lizenz.
Über den "Mit Vercel bereitstellen"-Button: Dieser Button bietet eine Ein-Klick-Bereitstellungsfunktion auf Vercel, was sehr praktisch ist. Bitte beachten Sie jedoch:
- Der Link im Button verweist auf das ursprüngliche Repository (https://github.com/snakeying/GPT-Telegram-Bot).
- Wenn Sie dieses Projekt geforkt haben und Ihre eigene Version bereitstellen möchten, müssen Sie diesen Button-Link in der README aktualisieren.
- Aktualisierungsmethode: Ersetzen Sie
snakeying/GPT-Telegram-Bot
im Link durch Ihren GitHub-Benutzernamen und Repository-Namen.
Wenn Ihr GitHub-Benutzername beispielsweise "ihrname" ist, sollten Sie den Button-Link wie folgt ändern:
[![Mit Vercel bereitstellen](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fihrname%2FGPT-Telegram-Bot)
Dies stellt sicher, dass der "Mit Vercel bereitstellen"-Button Ihre geforkte Version und nicht das ursprüngliche Repository bereitstellt.