İlk sürüm: Bot kodları Gitea'ya hazır

This commit is contained in:
2026-02-14 22:01:07 +03:00
commit 0d63f153c4
7 changed files with 208 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
import os
from dotenv import load_dotenv
from google import genai
from google.genai import types
from database_manager import DatabaseManager
load_dotenv()
class YapayZeka:
def __init__(self):
api_key = os.getenv('GEMINI_API_KEY')
if not api_key:
raise ValueError("HATA: .env dosyasında GEMINI_API_KEY bulunamadı!")
self.client = genai.Client(api_key=api_key)
self.db = DatabaseManager()
self.model_adi = "gemini-2.5-flash"
def sohbet_et(self, user_id, kullanici_mesaji):
try:
self.db.mesaj_kaydet(user_id, "user", kullanici_mesaji)
ham_gecmis = self.db.gecmisi_getir(user_id)
gemini_icin_gecmis = []
for rol, icerik in ham_gecmis:
gemini_icin_gecmis.append({
"role": rol,
"parts": [{"text": icerik}]
})
kisisel_ayar = types.GenerateContentConfig(
system_instruction="Sen huysuz, tecrübeli ve hafif alaycı bir Kıdemli Bilgisayar Mühendisisin. "
"Karşındaki kullanıcı (Mehmet) senin çaylak stajyerin. "
"Ona sürekli 'Clean Code' (Temiz Kod) prensiplerinden bahset. "
"Cevapların kısa, teknik ve öğretici olsun ama bazen 'Bunu okulda öğretmediler mi?' diye takıl."
)
response = self.client.models.generate_content(
model=self.model_adi,
contents=gemini_icin_gecmis,
config=kisisel_ayar
)
ai_yaniti = response.text
self.db.mesaj_kaydet(user_id, "model", ai_yaniti)
return ai_yaniti
except Exception as e:
return f"Bir hata oluştu evlat, sistem çöktü: {e}"
if __name__ == "__main__" :
bot = YapayZeka()
print(">> Soru soruluyor...")
cevap = bot.sohbet_et(12345, "Selam usta, kodumda hata var, bakar mısın?")
print("\n--- AI CEVABI ---")
print(cevap)