This pack is incredible! I have just spent a bit of time testing this pack with a will and a report on a mining company. Fabulous results - saved me a ton of time finding out what I needed to know. Check it out. Wizardry!
The server is now using multiprocessing, giving us ~3x speed for bigger documents!
A 66 page PDF used to take 43 seconds - It’s now done in 14 seconds
This will allow processing of even larger documents within the 100-second timeout
Keep in mind, if you expect more than:-
40,000 characters - Change your output format, see post
300,000 characters, be careful how you use ReadTextFile() on the Text File output, worst case Coda will automatically cancel your formula if you try to display it directly
Automatically create rows from images and PDFs in any structure you choose
Showcase Video (5 mins)
I’ve worked hard on a general solution. For example, I asked it to process my profile picture:
Or some shapes with no prompt:
Updated Scan Formula
The Scan() formula now supports more engine options, like engine: "gpt-4o-mini", which allows AI-based OCR. This means it can capture extra details like colors, text positions, and more.
Other
I’ve raised the amount of free credits from 50 to 100
Hi Sam thanks for your question!
That setup in the video should be able to handle it!
I’d recommend considering adding some columns to the Invoice table such as
Currency (Text)
Creation Date (Date)
Expiration Date (Date)
as well as any other data points that generally occur within your invoices, otherwise the AI will probably put it in the Other Info column if you have that one
Imagine it’s a person you’re sending a message to to fill out your Coda rows, is there enough information to understand what values each cell should have, and how many rows per table?
If not then make your table names and column names more descriptive or simply give additional instructions with the prompt parameter
I’ve worked hard to accomplish a general dynamic solution, it’s an involved process under the hood, but for the user I’ve hoped to make it as intuitive as possible. If the AI has issues at any point then it will abort the process and create a nice error message for the user, hopefully informing what actions they can take to make it work