Add local vision analysis scaffold
This commit is contained in:
parent
93f3086b48
commit
6792a8629e
|
|
@ -2191,6 +2191,24 @@ async def save_layout_review(document_id: str, request: Request, db: Session = D
|
||||||
|
|
||||||
# --- layout review save helpers end ---
|
# --- layout review save helpers end ---
|
||||||
|
|
||||||
|
@router.post("/{document_id}/run-vision-analysis", response_class=RedirectResponse)
|
||||||
|
def run_vision_analysis(document_id: str, db: Session = Depends(get_db)):
|
||||||
|
document = db.query(Document).filter(Document.document_id == document_id).first()
|
||||||
|
if not document:
|
||||||
|
return RedirectResponse(
|
||||||
|
url=f"/documents/{document_id}?tab=layout-review&error=document_not_found",
|
||||||
|
status_code=303,
|
||||||
|
)
|
||||||
|
|
||||||
|
# Phase 1 placeholder.
|
||||||
|
# Next phase: render page image, send to local VLM service, store suggestions.
|
||||||
|
print(f"[vision-analysis] queued placeholder run for {document.document_id}", flush=True)
|
||||||
|
|
||||||
|
return RedirectResponse(
|
||||||
|
url=f"/documents/{document.document_id}?tab=layout-review&success=vision_analysis_started",
|
||||||
|
status_code=303,
|
||||||
|
)
|
||||||
|
|
||||||
@router.get("/{document_id}", response_class=HTMLResponse)
|
@router.get("/{document_id}", response_class=HTMLResponse)
|
||||||
def document_detail(document_id: str, request: Request, queue: str | None = None, viewer_source: str = "scan", db: Session = Depends(get_db)):
|
def document_detail(document_id: str, request: Request, queue: str | None = None, viewer_source: str = "scan", db: Session = Depends(get_db)):
|
||||||
requested_tab = request.query_params.get("tab", "ocr-review")
|
requested_tab = request.query_params.get("tab", "ocr-review")
|
||||||
|
|
|
||||||
|
|
@ -1916,6 +1916,9 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||||
<button type="button" class="layout-tool-btn" id="layout-tool-pan">Pan</button>
|
<button type="button" class="layout-tool-btn" id="layout-tool-pan">Pan</button>
|
||||||
<button type="button" class="layout-tool-btn" id="layout-tool-add">Add</button>
|
<button type="button" class="layout-tool-btn" id="layout-tool-add">Add</button>
|
||||||
<button type="button" class="layout-tool-btn danger" id="layout-delete-word">Delete</button>
|
<button type="button" class="layout-tool-btn danger" id="layout-delete-word">Delete</button>
|
||||||
|
<form method="post" action="/documents/{{ document.document_id }}/run-vision-analysis" style="display:inline;">
|
||||||
|
<button type="submit" class="layout-tool-btn">Run Vision</button>
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="word-ribbon-label">Tools</div>
|
<div class="word-ribbon-label">Tools</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue