Spaces:
Running
Running
Update backend/app/main.py
Browse files- backend/app/main.py +9 -0
backend/app/main.py
CHANGED
|
@@ -95,22 +95,31 @@ async def extract_document(
|
|
| 95 |
size_str = f"{size_mb:.2f} MB"
|
| 96 |
|
| 97 |
try:
|
|
|
|
| 98 |
extracted = await extract_fields_from_document(content, content_type, file.filename)
|
| 99 |
total_ms = int((time.time() - start) * 1000)
|
| 100 |
|
|
|
|
|
|
|
|
|
|
| 101 |
confidence = float(extracted.get("confidence", 90))
|
| 102 |
fields = extracted.get("fields", {})
|
| 103 |
fields_extracted = len(fields) if isinstance(fields, dict) else 0
|
| 104 |
|
|
|
|
|
|
|
| 105 |
status = "completed"
|
| 106 |
error_message = None
|
| 107 |
except Exception as e:
|
|
|
|
| 108 |
total_ms = int((time.time() - start) * 1000)
|
| 109 |
confidence = 0.0
|
| 110 |
fields = {}
|
| 111 |
fields_extracted = 0
|
| 112 |
status = "failed"
|
| 113 |
error_message = str(e)
|
|
|
|
|
|
|
| 114 |
|
| 115 |
# Save record to DB
|
| 116 |
rec = ExtractionRecord(
|
|
|
|
| 95 |
size_str = f"{size_mb:.2f} MB"
|
| 96 |
|
| 97 |
try:
|
| 98 |
+
print(f"[INFO] Starting extraction for file: {file.filename}, type: {content_type}, size: {size_str}")
|
| 99 |
extracted = await extract_fields_from_document(content, content_type, file.filename)
|
| 100 |
total_ms = int((time.time() - start) * 1000)
|
| 101 |
|
| 102 |
+
print(f"[INFO] Extraction completed. Response keys: {list(extracted.keys())}")
|
| 103 |
+
print(f"[INFO] Fields extracted: {extracted.get('fields', {})}")
|
| 104 |
+
|
| 105 |
confidence = float(extracted.get("confidence", 90))
|
| 106 |
fields = extracted.get("fields", {})
|
| 107 |
fields_extracted = len(fields) if isinstance(fields, dict) else 0
|
| 108 |
|
| 109 |
+
print(f"[INFO] Final stats - confidence: {confidence}, fields_count: {fields_extracted}")
|
| 110 |
+
|
| 111 |
status = "completed"
|
| 112 |
error_message = None
|
| 113 |
except Exception as e:
|
| 114 |
+
import traceback
|
| 115 |
total_ms = int((time.time() - start) * 1000)
|
| 116 |
confidence = 0.0
|
| 117 |
fields = {}
|
| 118 |
fields_extracted = 0
|
| 119 |
status = "failed"
|
| 120 |
error_message = str(e)
|
| 121 |
+
print(f"[ERROR] Extraction failed: {error_message}")
|
| 122 |
+
print(f"[ERROR] Traceback: {traceback.format_exc()}")
|
| 123 |
|
| 124 |
# Save record to DB
|
| 125 |
rec = ExtractionRecord(
|