HNHacker News
TopNewBestAskShowJobs

kapitalx

1,079 karma · joined September 9, 2009

Cofounder - Doctly.ai

Co-author of Principles of Chaos Engineering - https://principlesofchaos.org/

submissionscomments
kapitalx··on Goodbye Claude, hello Pi
Yeah I tried going to GUIs aswell but ended up writing my own Terminal manager called switchboard. Since then I've tried a few others, like T3, which is pretty decent, but still keep coming back to Switchboard. It supports both Claude and Codex CLIs together with project grouping organization.

https://github.com/doctly/switchboard

kapitalx··on Show HN: A desktop app for managing Claude Code sessions
Fixed some bugs and much more stable now.

https://github.com/doctly/switchboard/releases/tag/v0.0.8

kapitalx··on Show HN: A desktop app for managing Claude Code sessions
Thank you. Yeah I looked at a few, another one is air.dev. The problem is they are recreating the actualy coding pane. Switchboard runs terminal directly.
kapitalx··on Ask HN: What are you working on? (September 2025)
https://doctly.ai

We're building Doctly.ai - PDF Extraction with AI.

We started out with document conversions to Markdown but quickly realized that most use cases were for JSON conversion. We recently launched our "Extractor Studio" where you can have AI analyze a few sample variations of your documents and come up with a schema for you and publish it to an API endpoint.

We've built a technique on top of AI models that dramatically improves run to run consistency of JSON output.

Checkout the blog post here: https://medium.com/@abasiri/introducing-doctlys-extractor-st...

kapitalx··on Show HN: Extractor Studio – The Fastest Way to Build PDF Extractors
Check it out at https://doctly.ai
kapitalx··on PDF to Text, a challenging problem
This is approximately the approach we're taking also at https://doctly.ai, add to that a "multiple experts" approach for analyzing the image (for our 'ultra' version), and we get really good results. And we're making it better constantly.
kapitalx··on Show HN: Qwen-2.5-32B is now the best open source OCR model
To be fair, they didn't include themselves at all in the graph.
kapitalx··on Show HN: Qwen-2.5-32B is now the best open source OCR model
In addition, gemini Pro 2.5 does really well with bounding boxes, but yeah not open source :(
kapitalx··on Show HN: Qwen-2.5-32B is now the best open source OCR model
If you're limited to open source models, that's very true. But for larger models and depending on your document needs, we're definitely seeing very high accuracy (95%-99%) for direct to json extraction (no markdown in between step) with our solution at https://doctly.ai.
kapitalx··on Show HN: OCR Benchmark Focusing on Automation
I'll dig deeper into your code, but scanning your post does look like your are addressing this. That's great.

If I do find anything, I'll share with you for comments before I publish the post.

kapitalx··on Show HN: OCR Benchmark Focusing on Automation
Exactly. You still have to be explicit in order to remove bias. Either by sorting the keys, or looking up specific keys. For arrays, I would say order still matters. For example when you capture a list of invoice items, you should maintain order.
kapitalx··on Show HN: OCR Benchmark Focusing on Automation
Great list! I’ll definitely run your benchmark against Doctly.ai (our PDF-to-Markdown service) specially as we publish our workflow service, to see how we stack up.

One thing I’ve noticed in many benchmarks, though, is the potential for bias. I’m actually working on a post about this issue, so it’s top of mind for me. For example, in the omni benchmark, the ground truth expected a specific order for heading information—like logo, phone number, and customer details. While this data was all located near the top of the document, the exact ordering felt subjective. Should the model prioritize horizontal or vertical scanning? Since the ground truth was created by the company running the benchmark, their model naturally scored the highest for maintaining the same order as the ground-truth.

However, this approach penalized other LLMs for not adhering to the "correct" order, even though the order itself was arguably arbitrary. This kind of bias can skew results and make it harder to evaluate models fairly. I’d love to see benchmarks that account for subjectivity or allow for multiple valid interpretations of document structure.

Did you run into this when looking at the benchmarks?

On a side note, Doctly.ai leverages multiple LLMs to evaluate documents, and runs a tournament with a judge for each page to get the best data (this is only on the Precision Ultra selection).

kapitalx··on Mistral OCR
Customers are willing to pay for accuracy compared to existing solutions out there. We started out in need of an accurate solution for a RAG product we were building, but none of the solutions we tried were providing the accuracy we needed.
kapitalx··on Mistral OCR
Looks to be API only for now. Documentation here: https://docs.mistral.ai/capabilities/document/
kapitalx··on Mistral OCR
We've been getting great results with those aswell. But ofcourse there is always some chance of not getting it perfect, specially with different handwritings.

Give it a try, no credit cards needed to try it. If you email me (ali@doctly.ai) i can give you extra free credits for testing.

kapitalx··on Mistral OCR
Yes I used the API. They have examples here:

https://docs.mistral.ai/capabilities/document/

I used base64 encoding of the image of the pdf page. The output was an object that has the markdown, and coordinates for the images:

[OCRPageObject(index=0, markdown='![img-0.jpeg](img-0.jpeg)', images=[OCRImageObject(id='img-0.jpeg', top_left_x=140, top_left_y=65, bottom_right_x=2136, bottom_right_y=1635, image_base64=None)], dimensions=OCRPageDimensions(dpi=200, height=1778, width=2300))] model='mistral-ocr-2503-completion' usage_info=OCRUsageInfo(pages_processed=1, doc_size_bytes=634209)

kapitalx··on Mistral OCR
Great question. The language models are definitely beating the old tools. Take a look at Gemini for example.

Doctly runs a tournament style judge. It will run multiple generations across LLMs and pick the best one. Outperforming single generation and single model.

kapitalx··on Mistral OCR
Haha for sure. Naming isn't just the hardest problem in computer science, it's always hard. But at some point you just have to pick something and move forward.
kapitalx··on Mistral OCR
We'll definitely be doing more tests, but the results I got on the complex tests would result in a lower score and might not be worth the extra cost of the judgement itself.

In our current setup Gemini wins most often. We enter multiple generations from each model into the 'tournament', sometimes one generation from gemini could be at the top while another in the bottom, for the same tournament.

kapitalx··on Mistral OCR
We need to update the examples on the front page. Currently for things that are considered charts/graphs/figures we convert to a description. For things like logos or images we do an image tag. You can also choose to exclude them.

The difference with this is that it took the entire page as an image tag (it's just a table of text in my document). rather than being more selective.

I do like that they give you coordinates for the images though, we need to do something like that.

Give the actual tool a try. Would love to get your feedback for that use case. It gives you 100 free credits initially but if you email me (ali@doctly.ai), I can give you an extra 500 (goes for anyone else here also)

kapitalx··on Mistral OCR
This is a good idea. We should publish a benchmark results/comparison.
kapitalx··on Mistral OCR
From my testing so far, it seems it's super fast and responded synchronously. But it decided that the entire page is an image and returned `![img-0.jpeg](img-0.jpeg)` with coordinates in the metadata for the image, which is the entire page.

Our tool, doctly.ai is much slower and async, but much more accurate and gets you the content itself as an markdown.

kapitalx··on Mistral OCR
Co-founder of doctly.ai here (OCR tool)

I love mistral and what they do. I got really excited about this, but a little disappointed after my first few tests.

I tried a complex table that we use as a first test of any new model, and Mistral OCR decided the entire table should just be extracted as an 'image' and returned this markdown:

``` ![img-0.jpeg](img-0.jpeg) ```

I'll keep testing, but so far, very disappointing :(

This document I try is the entire reason we created Doctly to begin with. We needed an OCR tool for regulatory documents we use and nothing could really give us the right data.

Doctly uses a judge, OCRs a document against multiple LLMs and decides which one to pick. It will continue to run the page until the judge scores above a certain score.

I would have loved to add this into the judge list, but might have to skip it.

kapitalx··on Ask HN: Who is hiring? (March 2025)
Love the website design
kapitalx··on Why OpenAI Models Struggle with PDF Extraction(and Why Gemini Fairs Much Better)
This applies to PDFs with lots of text. The smaller the text on the page, the more impacted it is.
kapitalx··on Ingesting PDFs and why Gemini 2.0 changes everything
I'm the founder of https://doctly.ai, also pdf extraction.

The hallucination in LLM extraction is much more subtle as it will rewrite full sentences sometimes. It is much harder to spot when reading the document and sounds very plausible.

We're currently working on a version where we send the document to two different LLMs, and use a 3rd if they don't match to increase confidence. That way you have the option of trading compute and cost for accuracy.

kapitalx··on Silk – Interactive Generative Art (2011)
I totally remember that post. I think I spent 30 minutes just clicking around on it back then. Very nice.
kapitalx··on Interactive Visual Sorting
It could have both Yes and Maybe take you to the github page. That way you get more time to decide :)
kapitalx··on Show HN: Doctly AI – Accurate AI-Powered PDF to Markdown Parser
Hey! Thank you so much for trying it out. We really appreciate it. Yes, currently the price is at $0.02/page. or 2 credits.

Regarding the the image tags, that's something the LLMs are making up as they go along. Something we need to fix. There are no actual links to images as the images will not be pulled out/provided.

kapitalx··on World conker champion found with steel chestnut, cleared of cheating
> Jakins was responsible for drilling and inserting strings into other competitors’ chestnuts as the competition’s top judge, known as the “King Conker”.

So the "judge" who prepped the conkers for everyone and stringed them also competed in the competition and won

Page 1 of 9Next →