HN user

diptanu

470 karma

Founder of @tensorlake. In the past I designed and worked on Hashicorp's cluster scheduler Nomad, the Titan cluster scheduler and Mesos at Netflix, and FBLearner at Facebook. Email - diptanu@tensorlake.ai

Posts37
Comments57
View on HN
www.tensorlake.ai 8d ago

Firecracker disk snapshots in O(changed bytes), not O(disk size)

diptanu
3pts0
www.tensorlake.ai 12d ago

Zero-copy TLS ingress with kTLS and splice(2) for sandboxes

diptanu
1pts0
www.tensorlake.ai 2mo ago

Filter and Rank: Robust Multi-Cloud Sandbox Orchestration at Scale

diptanu
1pts0
www.tensorlake.ai 2mo ago

Sandbox plumbing infrastructure for computer-use agents

diptanu
3pts0
github.com 8mo ago

Kosong: Kimi AI's Agent SDK

diptanu
1pts0
raees.me 9mo ago

Roles and Intelligence for Individual Contributors

diptanu
1pts0
www.tensorlake.ai 11mo ago

RAG isn't dead, the bar has gone up

diptanu
2pts0
www.tensorlake.ai 1y ago

Show HN: Tensorlake-Ingest, Parse, and Orchestrate Documents for AI Workflows

diptanu
4pts1
github.com 2y ago

Show HN: rerank-ts – TypeScript Library for Re-Ranking Search Results with LLMs

diptanu
1pts0
getindexify.ai 2y ago

Show HN: Open-source real time data framework for LLM applications

diptanu
92pts6
learnxinyminutes.com 9y ago

Learn Rust in Y minutes

diptanu
2pts0
sysadminday.com 12y ago

System Administrator Appreciation Day

diptanu
124pts22
www.manning.com 13y ago

Manning cancelled Go in Action

diptanu
3pts0
www.markhneedham.com 13y ago

Gamification applied to software

diptanu
2pts0
news.ycombinator.com 13y ago

Ask HN: How do you bootstrap a content rich iOS Application?

diptanu
1pts1
emacsmovies.org 13y ago

Emacs Screencasts: Customisation Part II

diptanu
55pts18
bugs.webkit.org 13y ago

WebKit CSS Selector -webkit-user-select causes severe performance issues

diptanu
1pts0
emacsmovies.org 14y ago

Emacs Screencasts

diptanu
96pts3
beust.com 14y ago

Thoughts about Scala's Parallel Collection

diptanu
1pts0
blog.tmorris.net 15y ago

Scalaz lead developer: Critique of oderskys scala levels

diptanu
3pts0
naildrivin5.com 15y ago

Another Tour of Scala

diptanu
2pts0
news.ycombinator.com 15y ago

Ask HN: Anyone developing J2ME applications on Mac OS X

diptanu
2pts0
oppugn.us 16y ago

Zed Shaw - How To Backpedal And Boost Like A Pro

diptanu
4pts1
www.google.com 16y ago

Google unveils free wireless service to homes: Google TISP

diptanu
6pts3
rubyconfindia.org 16y ago

RubyConf in India : February 2010. Don't miss it guys

diptanu
14pts4
news.ycombinator.com 16y ago

Ask HN: I want to learn Ruby

diptanu
4pts8
mcarthurgfx.com 16y ago

Web Developers Are Stupid

diptanu
20pts19
twitter.com 16y ago

Headius aka Charles Nutter of the JRuby fame is angry about _why's departure

diptanu
3pts1
news.ycombinator.com 17y ago

Ask HN: What is the best university in Europe for MS in Computer Science?

diptanu
9pts23
rubyconf2008.confreaks.com 17y ago

Matz's Keynote from RubyConf-2008: Why Ruby?

diptanu
25pts3

We haven’t tested Chandra yet, because it’s very new. Under the hood Tensorlake is very similar to Marker - it’s a pipeline based OCR API, we do layout detection, Text Recognition and Detection, Table Structure Understanding, etc. We then use VLMs to enrich the results. Our models are much bigger than marker, and thus takes a little longer to parse documents. We optimized for accuracy. We will have a faster API soon.

Hey! I am the founder of Tensorlake. We benchmarked the models that our customers consider using in enterprises or regulated industries where there is a big need for processing documents for various automation. Benchmarking takes a lot of time so we focussed on the ones that we get asked about.

On Gemini and other VLMs - we excluded these models because they don't do visual grounding - aka they don't provide page layouts, bounding boxes of elements on the pages. This is a table stakes feature for use-cases customers are building with Tensorlake. It wouldn't be possible to build citations without bounding boxes.

On pricing - we are probably the only company offer a pure on-demand pricing without any tiers. With Tensorlake, you can get back markdown from every page, summaries of figures, tables and charts, structured data, page classification, etc - in ONE api call. This means we are running a bunch of different models under the hood. If you add up the token count, and complexity of infrastructure to build a complex pipeline around Gemini, and other OCR/Layout detection model I bet the price you would end up with won't be any cheaper than what we provide :) Plus doing this at scale is very very complex - it requires building a lot of sophisticated infrastructure - another source of cost behind modern Document Ingestion services.

We parse PDFs to convert them to text in a linearized fashion. The use case for this would be to use the content for downstream use cases - search engine, structured extraction, etc.

There are many cases images are exported as PDFs. Think invoices or financial statements that people send to financial services companies. Using layout understanding and OCR based techniques leads to way better results than writing a parser which relies on the files metadata.

The other thing is segmenting a document and linearizing it so that an LLM can understand the content better. Layout understanding helps with figuring out the natural reading order of various blocks of the page.

Disclaimer - Founder of Tensorlake, we built a Document Parsing API for developers.

This is exactly the reason why Computer Vision approaches for parsing PDFs works so well in the real world. Relying on metadata in files just doesn't scale across different source of PDFs.

We convert PDFs to images, run a layout understanding model on them first, and then apply specialized models like text recognition and table recognition models on them, stitch them back together to get acceptable results for domains where accuracy is table stakes.

We started with using LLMs for parsing at Tensorlake (https://docs.tensorlake.ai), tried Qwen, Gemini, OpenAI, pretty much everything under the sun. My thought was we could skip 5-6 years of development IDP companies have done on specialized models by going to LLMs.

On information dense pages, LLMs often hallucinate half of the times, they have trouble understanding empty cells in tables, doesn't understand checkboxes, etc.

We had to invest heavily into building a state of the art layout understanding model and finally a table structure understanding for reliability. LLMs will get there, but there are some ways to go there.

Where they do well is in VQA type use cases, ask a question, very narrowly scoped, they will work much better than OCR+Layout models, because they are much more generalizable and flexible to use.

I don’t think what you are describing as heavy is that big of a deal if an external orchestration system is required only for deployment, while the workflow can be developed and tested without a server on a laptop or notebook.

Bringing in orchestration logic in the app layer means there is more code being bundled with the app, which has its own set of tradeoffs - like bringing in a different set of code dependencies which might conflict with application code.

In 2025, I would be surprised if a good workflow engine didn’t have a completely server-less development mode :)

Great points. Besides performance, centralized coordination and distributed dataplane is better for operability of schedulers as well. Some examples - Being able to roll out new features in the scheduler, tracing scheduling behavior and decisions, deploying configuration changes.

Even with a centralized scheduler it should be possible to create a DevEx that makes use of decorators to author workflows easily.

We are doing that with Indexify(https://github.com/tensorlakeai/indexify) for authoring data intensive workflows to process unstructured data(documents, videos, etc) - it’s like Spark but uses Python instead of Scala/SQL/UDFs. Indexify’s scheduler is centralized and it uses RocksDB under the hood for persistence, and long term we are moving to a hybrid storage system - S3 for less frequently updated data, and SSD for read cache and frequently updated data(on going tasks).

The scheduler’s latency for scheduling new tasks is consistently under < 800 microseconds on SSDs.

This is how schedulers have been designed traditionally that have a proven track record of working in production - Borg, Hashicorp Nomad, etc. There are many ways a centralized scheduler can scale out beyond a single machine - parallel scheduling across different by sharding jobs, node pools, and then linearizing and deduplicating conflicts during writes is one such approach.

Love DBOs and Hatchet! cheering for you @jedberg and @abelanger :-)

Disclaimer - I am the founder of Tensorlake, and worked on Nomad and Apache Mesos in the past.

We use grid search to figure out what's the best chunking strategy to use. Create a bunch of different strategies such as recursive chunking, semantic, etc, and parameterize them and see which one works best. The "best" chunking strategy depends on the nature of the documents and the questions being asked.

Sorry just seeing this! There are various aspects of how it handles ingestion spikes - 1. The ingestion api writes to blob stores, which are horizontally scalable. Only when an ingestion finishes, we write the metadata to the replicated state machine. 2. The replicated state machine takes 100k IOPs on most commodity machines, and they can vertically scale. 3. The extractors can autoscale based on the number of tasks in the system. 4. The ingestion server cluster can autoscale also based on the amount of IOPs they are doing.

Hope this answers the question :)

Thanks! It's pretty general purpose. It has a retrieval API for RAG use cases. It can be used for building agents too, which might only care about data from certain data sources and get invoked on any changes. Some of our users use it for just data extraction from PDFs.

The patterns for embedding, structured extraction for different data types doesn't change much for each use-cases, if the underlying API and storage subsystem is flexible.

These hacks/side projects are amazing! I feel we will see a lot of creativity as tools to build data intensive AI applications become easier.

We built and open sourced Indexify https://github.com/tensorlakeai/indexify to make it easy to build resilient pipelines to combine data with many different models and transformations to build applications that relies on embedding or any other metadata extracted by models from Videos, Photos and any documents!

I didn’t know about SigClip, the author mentioned on the blog, need to add this to our library :) I also found it incredible that he generated the crawler with Claude! This is the type of boilerplate I hope we don’t have to write in the future

I am building modelbox right now - https://github.com/tensorland/modelbox I began building this in Rust while also learning the language. It became quickly very complex as I started introducing streams in async traits. I think in a few years things will get a lot better as more people use Rust for building web services, but I had to go back to Go to be more productive and ship this thing out. I loved how the compiler was forcing me to think harder about life times and such.

I think this is a neat solution for an engineer working on their own and wants to go back and look at the data from various experiments.

I don't see this scaling to many engineers working in a team, who would want to see each others experiment data, or even store artifacts like checkpoints and such. And lastly, in many cases ACLs are required as well when certain models trained with sensitive data shouldn't be shared with engineers outside of a team/group.