fix UI
Browse files
app.py
CHANGED
|
@@ -1,14 +1,14 @@
|
|
| 1 |
import logging
|
| 2 |
import gradio as gr
|
| 3 |
from fastapi import FastAPI, Request
|
| 4 |
-
import uvicorn
|
| 5 |
from rag_core import business
|
|
|
|
| 6 |
|
| 7 |
logging.basicConfig(level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s")
|
| 8 |
|
| 9 |
app = FastAPI()
|
| 10 |
|
| 11 |
-
#
|
| 12 |
@app.post("/ask")
|
| 13 |
async def ask_api(req: Request):
|
| 14 |
data = await req.json()
|
|
@@ -18,7 +18,7 @@ async def ask_api(req: Request):
|
|
| 18 |
async def rescan_api():
|
| 19 |
return business.rescan_index()
|
| 20 |
|
| 21 |
-
#
|
| 22 |
def answer_fn(query):
|
| 23 |
result = business.answer_query(query)
|
| 24 |
return result.get("answer", result.get("error", "Lỗi không xác định."))
|
|
@@ -34,9 +34,10 @@ with gr.Blocks() as iface:
|
|
| 34 |
query_box.submit(fn=answer_fn, inputs=query_box, outputs=output_box)
|
| 35 |
build_btn.click(fn=build_index_ui, outputs=[build_btn, query_box, output_box])
|
| 36 |
|
| 37 |
-
# Mount Gradio
|
| 38 |
app = gr.mount_gradio_app(app, iface, path="/")
|
| 39 |
|
|
|
|
| 40 |
if __name__ == "__main__":
|
| 41 |
logging.info("🚀 Khởi chạy FastAPI + Gradio tại cổng 7860")
|
| 42 |
uvicorn.run(app, host="0.0.0.0", port=7860)
|
|
|
|
| 1 |
import logging
|
| 2 |
import gradio as gr
|
| 3 |
from fastapi import FastAPI, Request
|
|
|
|
| 4 |
from rag_core import business
|
| 5 |
+
import uvicorn
|
| 6 |
|
| 7 |
logging.basicConfig(level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s")
|
| 8 |
|
| 9 |
app = FastAPI()
|
| 10 |
|
| 11 |
+
# --- API Routes ---
|
| 12 |
@app.post("/ask")
|
| 13 |
async def ask_api(req: Request):
|
| 14 |
data = await req.json()
|
|
|
|
| 18 |
async def rescan_api():
|
| 19 |
return business.rescan_index()
|
| 20 |
|
| 21 |
+
# --- Gradio UI logic ---
|
| 22 |
def answer_fn(query):
|
| 23 |
result = business.answer_query(query)
|
| 24 |
return result.get("answer", result.get("error", "Lỗi không xác định."))
|
|
|
|
| 34 |
query_box.submit(fn=answer_fn, inputs=query_box, outputs=output_box)
|
| 35 |
build_btn.click(fn=build_index_ui, outputs=[build_btn, query_box, output_box])
|
| 36 |
|
| 37 |
+
# Mount Gradio vào ROOT path "/"
|
| 38 |
app = gr.mount_gradio_app(app, iface, path="/")
|
| 39 |
|
| 40 |
+
# Chạy server khi standalone
|
| 41 |
if __name__ == "__main__":
|
| 42 |
logging.info("🚀 Khởi chạy FastAPI + Gradio tại cổng 7860")
|
| 43 |
uvicorn.run(app, host="0.0.0.0", port=7860)
|