Jak stworzyć bota Telegram z LM Studio i Python – krok po kroku
1. Przygotowanie środowiska
- Pobierz i zainstaluj Python
Wejdź na https://www.python.org, pobierz najnowszą wersję i podczas instalacji zaznacz opcjęAdd Python to PATH
. - Pobierz i zainstaluj LM Studio
Odwiedź https://lmstudio.ai, pobierz wersję dla swojego systemu i zainstaluj program.
2. Konfiguracja LM Studio
- W LM Studio przejdź do zakładki Wyszukiwanie modeli i pobierz dowolny model.
- Po pobraniu przejdź do zakładki Chat i załaduj model.
- W zakładce Local Server włącz opcję
Start API Server
i zapamiętaj numer portu (domyślnie8877
).
3. Utworzenie bota Telegram
- W Telegramie wyszukaj
@BotFather
i rozpocznij z nim rozmowę. - Wyślij komendę
/newbot
, podaj nazwę bota oraz unikalną nazwę użytkownika kończącą się nabot
. - Zachowaj otrzymany token API – będzie potrzebny do skryptu.
4. Przygotowanie skryptu w Python
- Otwórz wiersz poleceń (cmd, terminal) i zainstaluj potrzebne biblioteki:
pip install python-telegram-bot requests
- Utwórz nowy plik tekstowy o nazwie
moj_bot.py
i wklej poniższy kod (zamieńTWÓJ_TOKEN
na token z BotFather):from telegram import Update from telegram.ext import ApplicationBuilder, MessageHandler, filters, ContextTypes import requests TELEGRAM_TOKEN = 'TWÓJ_TOKEN' LMSTUDIO_API_URL = 'http://localhost:8877/v1/chat/completions' async def handle_message(update: Update, context: ContextTypes.DEFAULT_TYPE): user_message = update.message.text payload = { "messages": [{"role": "user", "content": user_message}], "temperature": 0.7 } try: response = requests.post(LMSTUDIO_API_URL, json=payload) bot_reply = response.json()['choices'][0]['message']['content'] await update.message.reply_text(bot_reply) except Exception as e: await update.message.reply_text(f"Błąd: {str(e)}") app = ApplicationBuilder().token(TELEGRAM_TOKEN).build() app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, handle_message)) app.run_polling()
5. Uruchomienie bota
- Upewnij się, że LM Studio jest uruchomione, model załadowany, a serwer API działa.
- Uruchom skrypt:
python moj_bot.py
- W Telegramie znajdź swojego bota i wyślij mu wiadomość – powinien odpowiedzieć w ciągu kilku sekund.
WAŻNE:
– LM Studio musi działać cały czas podczas korzystania z bota.
– Pierwsze uruchomienie modelu może potrwać kilka minut.
– Sprawdź, czy port w LM Studio i w skrypcie są takie same (port 8877 wybrałem do projektu Selektroniki, żeby nie używać domyślnego). – skrypt można wkleić do Notatnika, dostosować zmienne i zapisać jako plik o rozszerzeniu .py w dowolnej lokalizacji
– polecenia Pythona, instalacje zależności i skrypty można uruchomić używając Wiersza Poleceń (Start > Uruchom > CMD)
– LM Studio musi działać cały czas podczas korzystania z bota.
– Pierwsze uruchomienie modelu może potrwać kilka minut.
– Sprawdź, czy port w LM Studio i w skrypcie są takie same (port 8877 wybrałem do projektu Selektroniki, żeby nie używać domyślnego). – skrypt można wkleić do Notatnika, dostosować zmienne i zapisać jako plik o rozszerzeniu .py w dowolnej lokalizacji
– polecenia Pythona, instalacje zależności i skrypty można uruchomić używając Wiersza Poleceń (Start > Uruchom > CMD)
Maksymalny rozmiar modelu jaki możn uruchomić zależy od tego ile masz dostępnej pamięci i poziomu kwantyzacji modelu.Szybkość działania modelu zależy od mocy procesora i poziomu delegowania obliczeń do karty graficznej (można dostosować w ustawieniach)