Instrukcja stworzenia Bota na Telegramie używającego do komunikacji lokalnego modelu językowego

Instrukcja: Jak stworzyć bota Telegram z LM Studio i Python

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ślnie 8877).

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ę na bot.
  • 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)

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)

Ten wpis został opublikowany w kategorii Uncategorized. Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *