Spaces:
Sleeping
Sleeping
File size: 1,735 Bytes
618e9ca 979e812 963b15c 047622e 618e9ca 6d6636b 618e9ca 9effa4e 963b15c 618e9ca eb2e1af 9386ce8 eb2e1af 618e9ca 9effa4e 618e9ca 963b15c 618e9ca |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# Directory structure
# ├── app/
# │ ├── main.py
# │ ├── db.py
# │ ├── routers/
# │ │ ├── search.py
# │ │ └── import_doc.py
# │ │ └── ws_progress.py
# │ ├── services/
# │ │ ├── google_books.py
# │ │ ├── open_library.py
# │ │ └── internet_archive.py
# │ │ └── project_gutenberg.py
# │ └── health/
# │ └── check_status.py
# ├── Dockerfile
# ├── docker-compose.yml
# └── README.md
# https://binkhoale1812-querysearcher.hf.space/
# https://binkhoale1812-querysearcher.hf.space/health
# app/main.py
from fastapi import FastAPI, WebSocket
from app.routers import search, import_doc
from app.health import check_status
import app.config
# Debugger
import logging
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s — %(name)s — %(levelname)s — %(message)s",
force=True
)
logger = logging.getLogger("book-query")
logger.setLevel(logging.DEBUG)
# Silence noisy pymongo logs
for noisy_module in ["pymongo", "pymongo.server_selection", "pymongo.topology", "pymongo.connection"]:
logging.getLogger(noisy_module).setLevel(logging.WARNING)
logger.info("🚀 Starting Tutor Book Querier...")
app = FastAPI()
app.include_router(search.router, prefix="/search")
app.include_router(import_doc.router, prefix="/import")
app.include_router(check_status.router, prefix="/health")
@app.websocket("/ws/documents/{document_id}")
async def websocket_endpoint(websocket: WebSocket, document_id: str):
await websocket.accept()
from app.routers.ws_progress import forward_progress
await forward_progress(websocket, document_id)
|