این پروژه یک ربات تلگرامی است که با استفاده از Pyrogram و API هوش مصنوعی Gemini گوگل ساخته شده است. ربات میتواند به دستورات متنی پاسخ دهد و همچنین در پاسخ به پیامهای دیگر (reply)، یک مکالمه را تحلیل کرده و پاسخ مناسب تولید کند.
- پاسخ به دستورات مستقیم: با ارسال پیامهایی که با
!heyشروع میشوند، مستقیماً از مدل Gemini پاسخ دریافت کنید. - پاسخ هوشمند به پیامها: با ریپلای کردن روی یک پیام و استفاده از دستور
!hey reply، ربات کل زنجیره مکالمه را تحلیل کرده و پاسخ مرتبط تولید میکند. - پیکربندی آسان: تمام تنظیمات از طریق یک فایل
.envمدیریت میشوند. - کدنویسی تمیز: پروژه با ساختار کلاسبندی شده و خوانا نوشته شده است.
- پایتون نسخه ۳.۷ یا بالاتر
- حساب کاربری تلگرام و کلیدهای API (API ID و API Hash)
- کلید API از Google AI Studio برای استفاده از Gemini
۱. کلون کردن پروژه:
git clone https://github.com/DeepPythonist/TeleAgent.git
cd TeleAgent۲. نصب کتابخانههای مورد نیاز: توصیه میشود که یک محیط مجازی (virtual environment) ایجاد کنید:
python -m venv venv
source venv/bin/activate # در ویندوز: venv\Scripts\activateسپس بستههای مورد نیاز را نصب کنید:
pip install -r requirements.txt۳. پیکربندی متغیرهای محیطی:
یک کپی از فایل .env.example با نام .env بسازید:
cp .env.example .envسپس فایل .env را با اطلاعات خود ویرایش کنید.
API_HASHوAPI_ID: از my.telegram.org دریافت کنید.GEMINI_TOKEN: کلید API خود را از Google AI Studio دریافت کنید.CLIENT_ID: شناسه عددی اکانت تلگرامی که میخواهید به عنوان ادمین ربات باشد. میتوانید این شناسه را از رباتهایی مانند@userinfobotدریافت کنید.SESSION_NAME: یک نام دلخواه برای فایل نشست (session) پایروگرام.MODEL: نام مدلی که میخواهید استفاده کنید (مثلاًgemini-pro).
پس از اجرای ربات با دستور python bot.py، میتوانید از دستورات زیر در هر چتی (خصوصی یا گروهی) استفاده کنید:
-
دستور مستقیم: یک پیام جدید بنویسید و سوال یا دستور خود را پس از
!heyوارد کنید.!hey پایتون بهتر است یا جاوااسکریپت؟ -
پاسخ به یک پیام (Reply): روی پیام مورد نظر ریپلای کنید و دستور خود را پس از
!hey replyبنویسید. ربات به کل زنجیره پیامها نگاه کرده و پاسخ میدهد.!hey reply به این مکالمه یک پاسخ طنزآمیز بده
ربات پیام شما را ویرایش کرده و پاسخ تولید شده را جایگزین آن میکند.