Spaces:
Sleeping
Sleeping
| from pydantic import BaseModel | |
| from fastapi import FastAPI, UploadFile, File | |
| from app.pdf_handler import process_pdf, process_image_pdf, process_image_pdf_dummy | |
| from app.rag_pipeline import generate_answer, generate_answer_am | |
| from app.test import query_test | |
| from fastapi import FastAPI, File, UploadFile | |
| from PIL import Image | |
| import pytesseract | |
| import io | |
| app = FastAPI() | |
| class ChatRequest(BaseModel): | |
| query: str | |
| top_k: int = 3 | |
| async def chat(request: ChatRequest): | |
| return generate_answer(request.query, request.top_k) | |
| async def chat(request: ChatRequest): | |
| return generate_answer_am(request.query, request.top_k) | |
| async def upload_pdf(file: UploadFile = File(...)): | |
| return process_pdf(file) | |
| async def upload_pdf_image(file: UploadFile = File(...)): | |
| return process_image_pdf(file) | |
| async def upload_pdf_image_dummy(f): | |
| return process_image_pdf_dummy() | |
| async def chat(query: str, top_k: int = 3): | |
| return query_test(query) | |
| async def extract_text(file: UploadFile = File(...)): | |
| image_data = await file.read() | |
| image = Image.open(io.BytesIO(image_data)) | |
| text = pytesseract.image_to_string(image) | |
| return {"extracted_text": text} | |