HilmanBey commited on
Commit
1c02ede
·
verified ·
1 Parent(s): 9da97e2

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +27 -21
main.py CHANGED
@@ -1,7 +1,7 @@
1
  import os
2
  import requests
3
  import sqlite3
4
- from fastapi import FastAPI, Header, HTTPException, Request, Form, status
5
  from fastapi.responses import HTMLResponse, RedirectResponse, JSONResponse
6
  from fastapi.security import HTTPBearer
7
  from pydantic import BaseModel
@@ -88,7 +88,7 @@ HTML_DASHBOARD = """
88
  <div class="header">
89
  <div class="title">⚙️ Hizmet Yapılandırması</div>
90
  <div class="status">● Hizmet Çalışıyor (7/24 Bulut Aktif)</div>
91
- <button class="stop-btn" onclick="alert('Bulut sunucu 7/24 kesintisiz çalışmaktadır, Patron!')">⛔ Hizmeti Durdur</button>
92
  </div>
93
 
94
  <div class="section">
@@ -144,7 +144,7 @@ HTML_DASHBOARD = """
144
  function copyKey() {
145
  var x = document.getElementById("apiKey");
146
  navigator.clipboard.writeText(x.value);
147
- alert("API Anahtarı panoya kopyalandı Patron!");
148
  }
149
  </script>
150
  </body>
@@ -208,23 +208,29 @@ class ChatRequest(BaseModel):
208
  # --- WEB ARAYÜZÜ ROUTE'LARI ---
209
  @app.get("/", response_class=HTMLResponse)
210
  async def root(request: Request):
211
- session = request.cookies.get("session")
212
- if session in active_sessions:
213
- return HTML_DASHBOARD.replace("%SECRET_KEY%", MY_SECRET_KEY)
214
- return HTML_LOGIN.replace("%ERROR_BLOCK%", "")
 
 
 
215
 
216
  @app.post("/login", response_class=HTMLResponse)
217
  async def login(request: Request, password: str = Form(...)):
218
- if password == MY_SECRET_KEY:
219
- session_id = "token_active_" + MY_SECRET_KEY
220
- active_sessions.add(session_id)
221
- response = RedirectResponse(url="/", status_code=status.HTTP_303_SEE_OTHER)
222
- response.set_cookie(key="session", value=session_id)
223
- return response
224
- return HTML_LOGIN.replace("%ERROR_BLOCK%", '<div class="error">Hatalı Secret Key! Erişim engellendi.</div>')
 
 
 
225
 
226
- @app.get("/status")
227
- def status():
228
  return {"status": "HilmanAI Core Online with Web Search & Dashboard", "system": "7/24 Active"}
229
 
230
  # --- ORTAK YAPAY ZEKA VE ARAMA ENTEGRASYONU ---
@@ -240,20 +246,20 @@ def call_ai_backend(messages_list):
240
 
241
  if any(kw in last_user_msg.lower() for kw in search_keywords):
242
  search_results = web_search(last_user_msg)
243
- search_context = f"\n\n[CANLI İNTERNET ARAMA SONUÇLARI]:\n{search_results}\nYukarıdaki güncel internet verilerini kullanarak Hilman'a net, fiyatlı, site isimli ve kargo süreleriyle ilgili detaylı bir liste sun."
244
 
245
  compressed_messages = messages_list[-4:] if len(messages_list) > 4 else messages_list
246
 
247
  system_instruction = {
248
  "role": "system",
249
  "content": (
250
- "Sen HilmanAI'sın. Kullanıcıya her zaman 'Hilman' diye hitap edeceksin. "
251
  "İşletim sistemi WINDOWS'tur. "
252
- "ÖNEMLİ KURAL 1: Hilman internetten ürün, fiyat veya araştırma istediğinde, sana sağlanan [CANLI İNTERNET ARAMA SONUÇLARI]'nı incele. "
253
  "ÖNEMLİ KURAL 2: Ürün arama isteklerinde şu formatta detaylı bir liste sun:\n"
254
  "- **Ürün Adı ve Markası**\n- **Site Adı** (Hangi e-ticaret sitesinde olduğu)\n- **Fiyat**\n- **Yorumlar / Güvenilirlik**\n- **Kargo / Gönderim Süresi**\n- **Ürün Linki**\n"
255
  "ÖNEMLİ KURAL 3: Matematiksel hesaplamalarda veya bilgi isteklerinde ASLA komut çalıştırma. "
256
- "ÖNEMLİ KURAL 4: Yalnızca Hilman doğrudan bir uygulama/site açmanı veya sistem işlemi yapmanı isterse Windows CMD/PowerShell komut bloğu üret."
257
  )
258
  }
259
 
@@ -311,7 +317,7 @@ def call_ai_backend(messages_list):
311
  except Exception:
312
  continue
313
 
314
- return "Tüm yapay zeka servisleri şu an meşgul veya internet araması yapılamadı, Hilman."
315
 
316
  # --- API ENDPOINT ---
317
  @app.post("/v1/chat/completions")
 
1
  import os
2
  import requests
3
  import sqlite3
4
+ from fastapi import FastAPI, Header, HTTPException, Request, Form
5
  from fastapi.responses import HTMLResponse, RedirectResponse, JSONResponse
6
  from fastapi.security import HTTPBearer
7
  from pydantic import BaseModel
 
88
  <div class="header">
89
  <div class="title">⚙️ Hizmet Yapılandırması</div>
90
  <div class="status">● Hizmet Çalışıyor (7/24 Bulut Aktif)</div>
91
+ <button class="stop-btn" onclick="alert('Bulut sunucu 7/24 kesintisiz çalışmaktadır, Halil!')">⛔ Hizmeti Durdur</button>
92
  </div>
93
 
94
  <div class="section">
 
144
  function copyKey() {
145
  var x = document.getElementById("apiKey");
146
  navigator.clipboard.writeText(x.value);
147
+ alert("API Anahtarı panoya kopyalandı Halil!");
148
  }
149
  </script>
150
  </body>
 
208
  # --- WEB ARAYÜZÜ ROUTE'LARI ---
209
  @app.get("/", response_class=HTMLResponse)
210
  async def root(request: Request):
211
+ try:
212
+ session = request.cookies.get("session")
213
+ if session and session in active_sessions:
214
+ return HTML_DASHBOARD.replace("%SECRET_KEY%", MY_SECRET_KEY)
215
+ return HTML_LOGIN.replace("%ERROR_BLOCK%", "")
216
+ except Exception as e:
217
+ return f"<h3>Sunucu Hatası (/): {str(e)}</h3>"
218
 
219
  @app.post("/login", response_class=HTMLResponse)
220
  async def login(request: Request, password: str = Form(...)):
221
+ try:
222
+ if password == MY_SECRET_KEY:
223
+ session_id = "token_active_" + MY_SECRET_KEY
224
+ active_sessions.add(session_id)
225
+ response = RedirectResponse(url="/", status_code=303)
226
+ response.set_cookie(key="session", value=session_id)
227
+ return response
228
+ return HTML_LOGIN.replace("%ERROR_BLOCK%", '<div class="error">Hatalı Secret Key! Erişim engellendi.</div>')
229
+ except Exception as e:
230
+ return HTML_LOGIN.replace("%ERROR_BLOCK%", f'<div class="error">Giriş Hatası: {str(e)}</div>')
231
 
232
+ @app.get("/server-status")
233
+ def server_status_endpoint():
234
  return {"status": "HilmanAI Core Online with Web Search & Dashboard", "system": "7/24 Active"}
235
 
236
  # --- ORTAK YAPAY ZEKA VE ARAMA ENTEGRASYONU ---
 
246
 
247
  if any(kw in last_user_msg.lower() for kw in search_keywords):
248
  search_results = web_search(last_user_msg)
249
+ search_context = f"\n\n[CANLI İNTERNET ARAMA SONUÇLARI]:\n{search_results}\nYukarıdaki güncel internet verilerini kullanarak Halil'e net, fiyatlı, site isimli ve kargo süreleriyle ilgili detaylı bir liste sun."
250
 
251
  compressed_messages = messages_list[-4:] if len(messages_list) > 4 else messages_list
252
 
253
  system_instruction = {
254
  "role": "system",
255
  "content": (
256
+ "Sen HilmanAI'sın. Kullanıcıya her zaman 'Halil' diye hitap edeceksin. "
257
  "İşletim sistemi WINDOWS'tur. "
258
+ "ÖNEMLİ KURAL 1: Halil internetten ürün, fiyat veya araştırma istediğinde, sana sağlanan [CANLI İNTERNET ARAMA SONUÇLARI]'nı incele. "
259
  "ÖNEMLİ KURAL 2: Ürün arama isteklerinde şu formatta detaylı bir liste sun:\n"
260
  "- **Ürün Adı ve Markası**\n- **Site Adı** (Hangi e-ticaret sitesinde olduğu)\n- **Fiyat**\n- **Yorumlar / Güvenilirlik**\n- **Kargo / Gönderim Süresi**\n- **Ürün Linki**\n"
261
  "ÖNEMLİ KURAL 3: Matematiksel hesaplamalarda veya bilgi isteklerinde ASLA komut çalıştırma. "
262
+ "ÖNEMLİ KURAL 4: Yalnızca Halil doğrudan bir uygulama/site açmanı veya sistem işlemi yapmanı isterse Windows CMD/PowerShell komut bloğu üret."
263
  )
264
  }
265
 
 
317
  except Exception:
318
  continue
319
 
320
+ return "Tüm yapay zeka servisleri şu an meşgul veya internet araması yapılamadı, Halil."
321
 
322
  # --- API ENDPOINT ---
323
  @app.post("/v1/chat/completions")