{"observation":{"id":"1dcafead-b619-42e1-876d-e9a9b6902adb","tool":"extend-ai","tool_name":"Extend AI","criterion":"table-preservation","criterion_name":"Table Preservation","criterion_definition":"Preserves complex table structures, including rows, columns, multi-row headers, and merged-cell relationships in markdown.","criterion_evidence_type":"transformation","criterion_rank_role":"decisive","criterion_rank_role_reason":"Accurate Markdown conversion of complex PDFs depends on keeping table structure intact, not flattening it into plain text. (3 of 3 judges)","scenario":"scanned-research-paper","scenario_name":"Scanned Research Paper","group_tag":"scanned-research-paper","scenario_description":"An image-only scanned research paper used to stress OCR and layout recovery in a multi-column academic document with figures, charts, tables, captions, and references.","modality":"pdf","input_text":null,"input_artifact_refs":[{"alt":null,"url":"https://d3epheqghktydj.cloudfront.net/convert-a-complex-pdf-into-clean-markdow-scanned-research-pdf-7b86de49784d.pdf","role":"input","filename":"Scanned Research PDF.pdf"}],"stresses":["OCR on scanned pages","Multi-column reading order","Figure and chart handling","Table reconstruction from scans","Caption association","Reference extraction","Overall document structure retention"],"verdict":"mixed","score":null,"score_total":null,"note":"Keeps the numeric table structure, but drops between-column annotations and leaves stray OCR characters in some numeric cells, so contextual information is partially lost.","evidence_state":"verified","source":null,"artifacts":[{"url":"https://cdn.futuresmart.ai/public/aidemos/6b3fa17009604505a41ee22a883265a2.png?v=1","role":"input","alt":null},{"url":"https://cdn.futuresmart.ai/public/aidemos/e2d6fade47a14952994243f12eb1ba3d.png?v=1","role":"output","alt":null},{"url":"https://cdn.futuresmart.ai/public/aidemos/52a1b7d3e343433e8429b54bcda89f31.png?v=1","role":"output","alt":null}],"run_id":"6e3160de-fe46-4b45-b071-72560b5c5d0e","study_title":"Convert a Complex PDF into Clean Markdown with an API","study_kind":"generation","research_task":"86b9h7t37","tested_at":null,"completeness":"input-and-output","input":{"state":"files","text":null,"files":[{"url":"https://d3epheqghktydj.cloudfront.net/convert-a-complex-pdf-into-clean-markdow-scanned-research-pdf-7b86de49784d.pdf","filename":"Scanned Research PDF.pdf","alt":"Scanned Research Paper","role":"input"}],"modality":"pdf","stresses":["OCR on scanned pages","Multi-column reading order","Figure and chart handling","Table reconstruction from scans","Caption association","Reference extraction","Overall document structure retention"]},"tool_page_slug":"extend-ai","tool_url":"https://aidemos.com/tools/extend-ai","permalink":"https://aidemos.com/evidence/1dcafead-b619-42e1-876d-e9a9b6902adb","api_url":"https://ai.aidemos.com/v1/observations/1dcafead-b619-42e1-876d-e9a9b6902adb"},"peers":[{"id":"82c91005-2538-47cc-812c-da8ff0c240c3","tool":"adobe-api","tool_name":"Adobe API","verdict":"failed","score":null,"score_total":null,"note":"Breaks a grouped-column table when intervening text appears, fragmenting the 1979–1981 layout and corrupting the extracted alignment.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/6daa9c66b2694851bbf882f39eed1f1e.png?v=1","evidence_url":"https://aidemos.com/evidence/82c91005-2538-47cc-812c-da8ff0c240c3"},{"id":"0bfcd599-6c54-476e-94c8-d8773b3595ca","tool":"landing-ai","tool_name":"Landing AI","verdict":"mixed","score":null,"score_total":null,"note":"Partially reflects the text that sits between table columns, but the intervening content still disrupts the table structure in the parsed output.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/fc95e14e58844709b2619a3f3621bc7a.png?v=1","evidence_url":"https://aidemos.com/evidence/0bfcd599-6c54-476e-94c8-d8773b3595ca"},{"id":"6893a7fc-87db-41b5-a8fc-06a4f67d61d5","tool":"llamaparse","tool_name":"LlamaParse","verdict":"worked","score":null,"score_total":null,"note":"Preserves a nested treatment table with the 7-inch, 10-inch, 12-inch, 100-leave-tree, and clearcut columns and the acres/live-lodgepole rows.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/d1659c50c6c449afa114d98746024dbb.png?v=1","evidence_url":"https://aidemos.com/evidence/6893a7fc-87db-41b5-a8fc-06a4f67d61d5"},{"id":"527f7e79-f463-4b6e-b839-c5153a59a9f3","tool":"mistral-ai","tool_name":"Mistral AI","verdict":"worked","score":null,"score_total":null,"note":"The multicolumn table is reconstructed without losing its overall layout logic, so the table structure remains readable in the parsed output.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/57a862fbcd21461ab376ee98f35f965b.png?v=1","evidence_url":"https://aidemos.com/evidence/527f7e79-f463-4b6e-b839-c5153a59a9f3"},{"id":"97dfdbc2-3390-4bf7-9d20-af8a5dd33d01","tool":"nutrient-io","tool_name":"Nutrient.io","verdict":"worked","score":null,"score_total":null,"note":"Largely preserves grouped-column tables, keeping their internal organization intact in the extracted output.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/57a862fbcd21461ab376ee98f35f965b.png?v=1","evidence_url":"https://aidemos.com/evidence/97dfdbc2-3390-4bf7-9d20-af8a5dd33d01"},{"id":"fcad1a88-bccf-4eea-8bf5-0d8e5dbc22ee","tool":"reducto","tool_name":"Reducto","verdict":"mixed","score":null,"score_total":null,"note":"Partially reconstructs Table 1: most of the roughly 90 numeric values are exact, but literal 0 values in the 12-inch column become blanks, one mean cell picks up stray digits (33.0 830000), and a row-label-only section header is broadcast across all six columns in one instance.","artifact_count":3,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/463058512d444a0796cf3e61494de04e.png?v=1","evidence_url":"https://aidemos.com/evidence/fcad1a88-bccf-4eea-8bf5-0d8e5dbc22ee"},{"id":"c19621dc-83eb-467f-9210-161a2adcac66","tool":"tensorlake","tool_name":"Tensorlake","verdict":"failed","score":null,"score_total":null,"note":"Struggles with hierarchical scanned tables, misplacing column headers and producing unreliable reconstructions on both the multicolumn table and the denser complex table.","artifact_count":6,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/57a862fbcd21461ab376ee98f35f965b.png?v=1","evidence_url":"https://aidemos.com/evidence/c19621dc-83eb-467f-9210-161a2adcac66"},{"id":"6db07c2d-fbc7-464c-ba3c-822a7495c3d5","tool":"upstage-ai","tool_name":"Upstage AI","verdict":"mixed","score":null,"score_total":null,"note":"Keeps the table values intact but reconstructs the headers incorrectly, leaving a grouped-column table with inconsistent structure.","artifact_count":2,"thumbnail":"https://cdn.futuresmart.ai/public/aidemos/57a862fbcd21461ab376ee98f35f965b.png?v=1","evidence_url":"https://aidemos.com/evidence/6db07c2d-fbc7-464c-ba3c-822a7495c3d5"}],"other_criteria":[{"id":"c8ea9121-f878-4e78-bf13-3ba3b4b6f0a5","criterion":"complex-document-handling","criterion_name":"Complex Document Handling","rank_role":"decisive","verdict":"worked","score":null,"score_total":null,"note":"Handles the scanned research paper end-to-end, including multi-column prose, tables, charts, and handwritten marginalia, while still producing parsed markdown.","artifact_count":3,"evidence_url":"https://aidemos.com/evidence/c8ea9121-f878-4e78-bf13-3ba3b4b6f0a5"},{"id":"4556b641-0861-4cec-9988-0748cdfa1664","criterion":"reading-order-structure","criterion_name":"Reading Order & Structure","rank_role":"decisive","verdict":"worked","score":null,"score_total":null,"note":"Reconstructs a multi-column research page so the 'STUDY AREA' heading, its paragraphs, and the following 'STAND PRESCRIPTIONS' section stay in order.","artifact_count":2,"evidence_url":"https://aidemos.com/evidence/4556b641-0861-4cec-9988-0748cdfa1664"},{"id":"6125882c-9dbc-46e0-99d4-07315648ef3c","criterion":"text-ocr-completeness","criterion_name":"Text & OCR Completeness","rank_role":"decisive","verdict":"mixed","score":null,"score_total":null,"note":"Detects faint handwritten margin text, but only partially; the transcription shows 'USDA Semaine' and the remainder is treated as illegible.","artifact_count":2,"evidence_url":"https://aidemos.com/evidence/6125882c-9dbc-46e0-99d4-07315648ef3c"},{"id":"1074ca2a-2a45-4de6-a0fb-e861d4262e74","criterion":"visual-content-retention","criterion_name":"Visual Content Retention","rank_role":"decisive","verdict":"mixed","score":null,"score_total":null,"note":"Extracts chart values into a captioned figure block, but the report says the mortality chart's trend visualization is not fully retained.","artifact_count":3,"evidence_url":"https://aidemos.com/evidence/1074ca2a-2a45-4de6-a0fb-e861d4262e74"}],"appears_in":[{"page_type":"ranking","slug":"pdf-to-markdown-apis","title":"Best AI Tools to Convert Complex PDFs into Clean Markdown with an API","url":"https://aidemos.com/best/pdf-to-markdown-apis","binding":"run"}],"same_scenario":[{"id":"82c91005-2538-47cc-812c-da8ff0c240c3","tool":"adobe-api","tool_name":"Adobe API","verdict":"failed","score":null,"score_total":null,"note":"Breaks a grouped-column table when intervening text appears, fragmenting the 1979–1981 layout and corrupting the extracted alignment."},{"id":"0bfcd599-6c54-476e-94c8-d8773b3595ca","tool":"landing-ai","tool_name":"Landing AI","verdict":"mixed","score":null,"score_total":null,"note":"Partially reflects the text that sits between table columns, but the intervening content still disrupts the table structure in the parsed output."},{"id":"6893a7fc-87db-41b5-a8fc-06a4f67d61d5","tool":"llamaparse","tool_name":"LlamaParse","verdict":"worked","score":null,"score_total":null,"note":"Preserves a nested treatment table with the 7-inch, 10-inch, 12-inch, 100-leave-tree, and clearcut columns and the acres/live-lodgepole rows."},{"id":"527f7e79-f463-4b6e-b839-c5153a59a9f3","tool":"mistral-ai","tool_name":"Mistral AI","verdict":"worked","score":null,"score_total":null,"note":"The multicolumn table is reconstructed without losing its overall layout logic, so the table structure remains readable in the parsed output."},{"id":"97dfdbc2-3390-4bf7-9d20-af8a5dd33d01","tool":"nutrient-io","tool_name":"Nutrient.io","verdict":"worked","score":null,"score_total":null,"note":"Largely preserves grouped-column tables, keeping their internal organization intact in the extracted output."},{"id":"fcad1a88-bccf-4eea-8bf5-0d8e5dbc22ee","tool":"reducto","tool_name":"Reducto","verdict":"mixed","score":null,"score_total":null,"note":"Partially reconstructs Table 1: most of the roughly 90 numeric values are exact, but literal 0 values in the 12-inch column become blanks, one mean cell picks up stray digits (33.0 830000), and a row-label-only section header is broadcast across all six columns in one instance."},{"id":"c19621dc-83eb-467f-9210-161a2adcac66","tool":"tensorlake","tool_name":"Tensorlake","verdict":"failed","score":null,"score_total":null,"note":"Struggles with hierarchical scanned tables, misplacing column headers and producing unreliable reconstructions on both the multicolumn table and the denser complex table."},{"id":"6db07c2d-fbc7-464c-ba3c-822a7495c3d5","tool":"upstage-ai","tool_name":"Upstage AI","verdict":"mixed","score":null,"score_total":null,"note":"Keeps the table values intact but reconstructs the headers incorrectly, leaving a grouped-column table with inconsistent structure."}]}