151 points
by yoeven
about 21 hours ago
|
35 comments
|
[HN]
[hidden]
— schanz's reply was filtered, but the responses below were kept
schanz
·
about 17 hours ago
q=0.63
Amazing!
I just tried the OCR capabilities with a photo of a DIN A4 page which was written with a typewriter. The image isn't the easiest to interpret. The text perspective is distorted because the page is part of a book and the page margin toward the spine of the book is very small. There are also many inline corrections due to typing errors while the page was written (backspace couldn't erase characters back then, and arrow keys couldn't be used to add text in between existing words). Over the past months I've tried to use several LLMs on this very same image already (1 out of 200 pages that seek digitization). The result is by far the most accurate so far. Only some very minor errors (which are also non-trivial for human translators) were made.
This page induced costs of about 25 cent. I assume I could tweak the input image a little more to consume less input tokens. OCR-ing all 200 pages would otherwise cost a juicy 50$ - although there is a generous 20$ of free credits.
// Edit: I just re-tried the same task utilizing a capability of the API to only run a specific part of the model (e.g. _only_ OCR). This cuts cost by 3x (to ~8c/page) but significantly worsens the result. The result is missing entire lines of the original document. There are also many error in the text that was recognized.
[hidden]
— AnthonyR's reply was filtered, but the responses below were kept
AnthonyR
·
about 15 hours ago
q=0.62
Have you tried this task using an actual OCR model like Google Cloud Vision AI? I am not sure if this is what Gemini uses under the hood but multi-modal LLMs are not designed to extract text like this so it should be no surprise it's not good at it?
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.62
Google Cloud Vision AI is a specialized model built on CNNs frameworks which is part of the Interfaze architecture which is an hybrid so you get best of both worlds. Google cloud vision was pretty far behind other specalized models like PaddleOCR etc anyways so if you're looking for a pure CNN, check them out.
You can find the explanation and the comparison in the article, which we benchmarked pure CNN models, pure LLM models and a hybrid architecture like ours.
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.62
Yup run task mode runs a much smaller part of the model when can drop quality of scans. The issue with run task we have to figure out is how much of the model is needed just for OCR and how to activate the right parts. A lot more improvements coming here with the same cost reduction.
I'd be happy to test it against your sample and see how we can get good results at a lower per page cost. Feel free to email me yoeven@interfaze.ai
[hidden]
— sareiodata's reply was filtered, but the responses below were kept
sareiodata
·
about 20 hours ago
q=0.62
Smaller models really arent great at structured output. If this works it would be great for a local model that might not be as good but as long as it respects structured output will be vastly more useful.
[hidden]
— OutOfHere's reply was filtered, but the responses below were kept
OutOfHere
·
about 19 hours ago
q=0.62
> Smaller models really arent great at structured output.
That doesn't seem to hold true. Consider gpt-5.4-nano which supports structured output just fine.
[hidden]
— wood_spirit's reply was filtered, but the responses below were kept
wood_spirit
·
about 20 hours ago
q=0.62
> These are deep neural network architectures that are task-specific for things like OCR, translation, or GUI detection. The way they consume and see data is trained to be task specific, which makes them up to 100x more accurate at their specific task. They also produce useful metadata like bounding boxes and confidence scores, letting developers build predictable workflows they can rely on.
Does code extraction and manipulation fit in that? Would interfaze be the agent that a coding agent uses?
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 18 hours ago
q=0.62
Code extraction maybe, not something we have tested or built for but you could give it a try.
Code manipulation probably not since it's a lot smaller of a model compared to a Claude Opus which is SOTA for code generation/manipulation.
Generally code generation is a non-deterministic task by nature and general LLMs tend to be better at them.
[hidden]
— wood_spirit's reply was filtered, but the responses below were kept
wood_spirit
·
about 17 hours ago
q=0.62
The idea of what to change is perhaps an llm task but the job of doing the find replace and that kind of tooling is something LLMs actually struggle with and have all kinds or crutches and try retry loops to paste over in coding agents etc.
[hidden]
— andai's reply was filtered, but the responses below were kept
andai
·
about 18 hours ago
q=0.62
This is very cool, though I don't understand exactly what they've done here. Is it some kind of LLM with convolutional layers added?
The graph doesn't exactly make it clear but it describes a pipeline that goes beyond the LLM, so the CNN could be a separate model there.
[hidden]
— tomsyouruncle's reply was filtered, but the responses below were kept
[hidden]
— gok's reply was filtered, but the responses below were kept
gok
·
about 13 hours ago
q=0.62
Ok that's...just cheating. You can't take a benchmark like MMLU designed to test the performance of a single general language model and compare it to performance of a small specialized model designed to do well on MMLU.
[hidden]
— sweaterkokuro's reply was filtered, but the responses below were kept
sweaterkokuro
·
about 20 hours ago
q=0.58
This is cool, Id love to be able to fine tune on this architecture. Is this something on the roadmap ever?
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 18 hours ago
q=0.62
It isn't on our roadmap right now since in most cases it should work out of the box and if it doesn't we'll work with you to train that into the model generally.
However, if we see enough people who has something super niche that our model can't handle, we might start considering a fine tuning service
[hidden]
— euroderf's reply was filtered, but the responses below were kept
euroderf
·
about 19 hours ago
q=0.58
Potentially stupid question: Does that mean we can chain them together line UNIX command line programs ? That would be so, so intuitive.
[hidden]
— fraywing's reply was filtered, but the responses below were kept
fraywing
·
about 17 hours ago
q=0.58
So is this basically a task-specific MoA transformer arch with a DNN that helps make routing decisions? Trying to understand this.
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.62
The other way round, task specific DNNs adapted to share the same vector space as omni-transformers with generalized vision, audio encoders.
E.g. For an OCR task, the first pass will be handled by the CNN, converted to shared tokens which the transformer can consume, correct any issues if needed and a decoder that can handle both the DNN and transformer output.
[hidden]
— icemaze's reply was filtered, but the responses below were kept
icemaze
·
about 17 hours ago
q=0.58
Great in the benchmarks but not as good in the real world, sorry to say. Just gave it a try in my STT bot, it's worse than whisper
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.58
Use it run task mode if you're doing a one to one comparison to whisper, it's going to be a lot faster too.
[hidden]
— florians's reply was filtered, but the responses below were kept
florians
·
about 17 hours ago
q=0.58
What I want are precise and tight bounding boxes. Why is this so difficult?
[hidden]
— philipkglass's reply was filtered, but the responses below were kept
philipkglass
·
about 17 hours ago
q=0.78
The PP-DocLayoutV3 [1] bounding boxes are pretty good in my experience, if you want boxes around individual document headings or paragraphs. If you want boxes around individual words, similar to what's shown in the Interfaze screen shot [2], Apple has a LiveText "token" model that's proprietary but free/bundled with macOS and iOS. There are easy to use Python bindings here: https://github.com/straussmaximilian/ocrmac
I presume that some otherwise-great OCR models (like Chandra) have terrible bounding boxes because generating good bounding boxes just wasn't a training priority. A lot of people are using OCR models to bulk-process documents without a lot of care for how the layout is preserved. It matters a lot if (e.g.) you want to be able to update and re-print old documents, but it doesn't matter if you are just transcribing whole documents for indexing/chunking/translation.
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.62
For sure there a tons of OCR bounding models and tons of other models like SAM 3 for segmentation.
Interfaze is a more powerful version of them combined into a single model, you can run multi turn tasks like extract all the text and object from this document then translate or generate a report.
It's like getting the best of both worlds from pure DNN/CNN models like Paddle and the flexibility and nuace of an LLM while outperforming both in accuracy.
[hidden]
— jadbox's reply was filtered, but the responses below were kept
jadbox
·
about 15 hours ago
q=0.58
Can this run locally or is this a service?
[hidden]
— yoeven's reply was filtered, but the responses below were kept
yoeven
·
about 14 hours ago
q=0.58
It's a service API but we do have on prem deployment in certain regions for enterprises
[hidden]
— pss314's reply was filtered, but the responses below were kept
I just tried the OCR capabilities with a photo of a DIN A4 page which was written with a typewriter. The image isn't the easiest to interpret. The text perspective is distorted because the page is part of a book and the page margin toward the spine of the book is very small. There are also many inline corrections due to typing errors while the page was written (backspace couldn't erase characters back then, and arrow keys couldn't be used to add text in between existing words). Over the past months I've tried to use several LLMs on this very same image already (1 out of 200 pages that seek digitization). The result is by far the most accurate so far. Only some very minor errors (which are also non-trivial for human translators) were made.
This page induced costs of about 25 cent. I assume I could tweak the input image a little more to consume less input tokens. OCR-ing all 200 pages would otherwise cost a juicy 50$ - although there is a generous 20$ of free credits.
Induced cost: 108.8k Input tokens => 16,32 cent 24.5k Output tokens => 8,58 cent
// Edit: I just re-tried the same task utilizing a capability of the API to only run a specific part of the model (e.g. _only_ OCR). This cuts cost by 3x (to ~8c/page) but significantly worsens the result. The result is missing entire lines of the original document. There are also many error in the text that was recognized.
You can find the explanation and the comparison in the article, which we benchmarked pure CNN models, pure LLM models and a hybrid architecture like ours.
I'd be happy to test it against your sample and see how we can get good results at a lower per page cost. Feel free to email me yoeven@interfaze.ai
That doesn't seem to hold true. Consider gpt-5.4-nano which supports structured output just fine.
https://developers.openai.com/api/docs/models/gpt-5.4-nano
It seems like a concern that's orthogonal to the model size.
Does code extraction and manipulation fit in that? Would interfaze be the agent that a coding agent uses?
Code manipulation probably not since it's a lot smaller of a model compared to a Claude Opus which is SOTA for code generation/manipulation.
Generally code generation is a non-deterministic task by nature and general LLMs tend to be better at them.
The graph doesn't exactly make it clear but it describes a pipeline that goes beyond the LLM, so the CNN could be a separate model there.
However, if we see enough people who has something super niche that our model can't handle, we might start considering a fine tuning service
E.g. For an OCR task, the first pass will be handled by the CNN, converted to shared tokens which the transformer can consume, correct any issues if needed and a decoder that can handle both the DNN and transformer output.
Here's a good example: https://interfaze.ai/docs/audio/speech-to-text#long-audio-tr...
I presume that some otherwise-great OCR models (like Chandra) have terrible bounding boxes because generating good bounding boxes just wasn't a training priority. A lot of people are using OCR models to bulk-process documents without a lot of care for how the layout is preserved. It matters a lot if (e.g.) you want to be able to update and re-print old documents, but it doesn't matter if you are just transcribing whole documents for indexing/chunking/translation.
[1] https://huggingface.co/PaddlePaddle/PP-DocLayoutV3
[2] https://r2public.jigsawstack.com/interfaze/examples/dense_te...
Interfaze is a more powerful version of them combined into a single model, you can run multi turn tasks like extract all the text and object from this document then translate or generate a report.
It's like getting the best of both worlds from pure DNN/CNN models like Paddle and the flexibility and nuace of an LLM while outperforming both in accuracy.