akhil
11/14/2025, 6:26 PMCorrectedData .
The big issue is that this takes a long time! Any suggestions for how I might make this process faster without sacrificing accuracy?
class CorrectedData {
@@dynamic
}
class CorrectedRowsData {
rows_corrected int @description("How many rows were corrected/modified from the original Camelot output")
correction_notes string[] @description("VERY BRIEF notes about corrections made (e.g., 'merged cells in rows 5-7', 'removed phantom column 3'). MAX 200 chars total.")
corrected_data_rows CorrectedData[] @description("ALL data rows corrected to match visual. Each inner array has exactly len(column_headers) cells in correct order. Headers already removed. Each row MUST have a non-empty value in the 'code' column (door mark/number or unit type code) to be included.")
}
function CorrectTableRows(
camelot_rows: string[],
broad_schedule_type: "unit" | "door" | "window",
schedule_image: image
) -> CorrectedRowsData {
client Gpt4_1
prompt #"
You are correcting table rows from a {{ broad_schedule_type }} schedule.akhil
11/14/2025, 6:27 PMbaml-sam
11/14/2025, 7:47 PMbaml-sam
11/14/2025, 7:50 PMbaml-sam
11/14/2025, 7:52 PMrows_corrected int from your output: I would actually be surprised if this field was consistently correctakhil
11/14/2025, 10:51 PMakhil
11/14/2025, 10:52 PMbaml-sam
11/15/2025, 9:20 PMbaml-sam
11/15/2025, 9:25 PMbaml-sam
11/15/2025, 9:26 PMjoey
11/16/2025, 4:38 AMakhil
11/19/2025, 12:46 AMVaibhav (BAML 🐑)
11/20/2025, 8:04 PMVaibhav (BAML 🐑)
11/20/2025, 8:04 PMVaibhav (BAML 🐑)
11/20/2025, 8:04 PM