ONYX-APP commited on
Commit
a8b01bc
·
verified ·
1 Parent(s): 8c28d65

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +8 -7
main.py CHANGED
@@ -1,19 +1,20 @@
1
- from gradio_client import Client # [تعديل] استيراد مكتبة gradio_client للاتصال بالسبيس
2
- import uvicorn
3
  import asyncio
4
  import json
 
5
  from fastapi import FastAPI, Request
6
  from fastapi.responses import StreamingResponse, HTMLResponse
 
7
 
8
  app = FastAPI(title="ONYX Engine")
9
 
10
- # [تعديل] تهيئة عميل Gradio للاتصال بـ Hugging Face Space بدل OpenRouter
11
- client = Client("ONYX-APP/qwen-onnx-chat", hf_token = os.getenv("HF_TOKEN")
12
 
13
  # --- إضافة Route للرئيسية لحل مشكلة الـ 404 ---
14
  @app.get("/")
15
  async def root():
16
- return {"status": "ONYX Engine is running", "model": "google/gemma-4-E2B-it"} # [تعديل] تحديث اسم الموديل ليتطابق مع السبيس
17
 
18
  @app.post("/predict")
19
  async def generate(request: Request):
@@ -25,13 +26,13 @@ async def generate(request: Request):
25
  for msg in messages:
26
  if msg.get("role") == "user":
27
  last_message = msg.get("content", "")
28
-
29
  async def generate_chunks():
30
  try:
31
  # [تعديل] تشغيل طلب السبيس بشكل غير متزامن وتدفق الجواب الناتج
32
  def run_client():
33
  return client.predict(last_message, [], fn_index=0)
34
-
35
  response_text = await asyncio.to_thread(run_client)
36
 
37
  # إرسال النص الناتج على دفعات متتالية لتوافق الـ StreamingResponse
 
1
+ import os
 
2
  import asyncio
3
  import json
4
+ import uvicorn
5
  from fastapi import FastAPI, Request
6
  from fastapi.responses import StreamingResponse, HTMLResponse
7
+ from gradio_client import Client
8
 
9
  app = FastAPI(title="ONYX Engine")
10
 
11
+ # [تعديل] تهيئة عميل Gradio للاتصال بـ Hugging Face Space مع إصلاح الأقواس وos
12
+ client = Client("ONYX-APP/qwen-onnx-chat", hf_token=os.getenv("HF_TOKEN"))
13
 
14
  # --- إضافة Route للرئيسية لحل مشكلة الـ 404 ---
15
  @app.get("/")
16
  async def root():
17
+ return {"status": "ONYX Engine is running", "model": "google/gemma-4-E2B-it"}
18
 
19
  @app.post("/predict")
20
  async def generate(request: Request):
 
26
  for msg in messages:
27
  if msg.get("role") == "user":
28
  last_message = msg.get("content", "")
29
+
30
  async def generate_chunks():
31
  try:
32
  # [تعديل] تشغيل طلب السبيس بشكل غير متزامن وتدفق الجواب الناتج
33
  def run_client():
34
  return client.predict(last_message, [], fn_index=0)
35
+
36
  response_text = await asyncio.to_thread(run_client)
37
 
38
  # إرسال النص الناتج على دفعات متتالية لتوافق الـ StreamingResponse