Create a Multi-Model AI Chatbot with Telegram, AIMLAPI, and Google Sheets
Go to WorkflowDescription
๐ฒ AI Multi-Model Telegram Chatbot (n8n + AIMLAPI)
This n8n workflow enables Telegram users to interact with multiple AI models dynamically using #model_id commands. It also supports a /models command to list all available models. Each user has a daily usage limit, tracked via Google Sheets.
๐ Key Features
Dynamic Model Selection:** Users choose models on-the-fly via #model_id (e.g., #openai/gpt-4o).
/models Command:** Lists all available models grouped by provider.
Daily Limit Per User:** Enforced using Google Sheets.
Prompt Parsing:** Extracts model and message from user input.
Logging:** Logs every request & result into Google Sheets for usage tracking.
Seamless Telegram Delivery:** Responses are sent directly back to the chat.
๐ Setup Guide
1. ๐ฒ Create a Telegram Bot
Go to @BotFather
Use /newbot โ Set name & username.
Copy the generated API token.
2. ๐ Add Telegram Credentials to n8n
Go to n8n > Credentials > Telegram API.
Create a new credential with the BotFather token.
3. ๐ Google Sheets Setup
Create a Google Sheet named Sheet1.
Add columns:
user_id | date | query | result
Share the sheet with your Service Account or OAuth Email (depending on auth method).
4. ๐ Connect AIMLAPI
Get your API key from AIMLAPI.
In n8n > Credentials, add AI/ML API:
API Key: your_key_here.
5. โ๏ธ Customize Limits & Enhancements
Adjust daily limits in the Set Daily Limit node.
Optional:
Add NSFW content filtering.
Implement alias commands.
Extend with /help, /usage, /history.
Add inline button UX (advanced).
๐ก How It Works
โก๏ธ Command Examples:
Start a chat with a specific model:
#openai/gpt-4o Write a motivational quote.
Request available models list:
/models
โก๏ธ Workflow Logic:
Receives a Telegram message.
Switch node checks if the message is /models or a prompt.
For /models, it fetches and sends a grouped list of models.
For prompts:
Checks usage limits.
Parses #model_id and prompt text.
Dynamically routes the request to the chosen model.
Sends the AI's response back to the user.
Logs the query & result to Google Sheets.
If daily limit exceeded โ sends a limit exceeded message.
๐งช Testing & Debugging Tips
Test via a separate Telegram chat.
Use Console/Set nodes to debug payloads.
Always test commands by messaging the bot (not via "Execute Node").
Validate cases:
Missing #model_id.
Invalid model_id.
Limit exceeded handling.