Create keyboards_gemini.py
Browse files
chatbot/plugins/keyboards_gemini.py
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from pyrogram import Client
|
2 |
+
from pyrogram.types import *
|
3 |
+
from database import users_collection
|
4 |
+
|
5 |
+
def get_gemini_keyboard():
|
6 |
+
keyboard = []
|
7 |
+
keyboard.append([
|
8 |
+
InlineKeyboardButton("Gemini Flash EXP", callback_data="model_gemini-2.0-flash-exp"),
|
9 |
+
InlineKeyboardButton("Gemini EXP", callback_data="model_gemini-exp-1206")
|
10 |
+
])
|
11 |
+
keyboard.append([
|
12 |
+
InlineKeyboardButton("Gemini Flash 8B", callback_data="model_gemini-1.5-flash-8b")
|
13 |
+
])
|
14 |
+
keyboard.append([
|
15 |
+
InlineKeyboardButton("Gemini PRO", callback_data="model_gemini-1.5-pro"),
|
16 |
+
InlineKeyboardButton("Gemini Flash", callback_data="model_gemini-1.5-flash"),
|
17 |
+
])
|
18 |
+
return InlineKeyboardMarkup(keyboard)
|
19 |
+
|
20 |
+
@app.on_callback_query(filters.regex(r"^model_"))
|
21 |
+
async def set_model(client: Client, callback_query: CallbackQuery):
|
22 |
+
model = callback_query.data.split("_")[1]
|
23 |
+
user_id = callback_query.from_user.id
|
24 |
+
await users_collection.update_one(
|
25 |
+
{"user_id": user_id},
|
26 |
+
{"$set": {"model": model}},
|
27 |
+
upsert=True
|
28 |
+
)
|
29 |
+
await callback_query.answer(f"Model set to {model}")
|
30 |
+
await callback_query.message.edit_text(
|
31 |
+
f"Your Model has been set to **{model}**.",
|
32 |
+
reply_markup=None
|
33 |
+
)
|