fe

fenic – LLMs as dataframe operators, query meaning and structure

Hacker News

fenic – LLMs as dataframe operators, query meaning and structure

Hey friends. I'd like to share a project that's dear to me. fenic is a dataframe API with LLMs added as first-class citizens, a classic lazy dataframe API extended with new operators that are backed by LLMs. What this gets you is the ability to work with structured and unstructured data in the same context. Most importantly, the LLMs aren't integrates as opaque UDF black boxes. They're exposed as "semantic" operators that the planner can reason about alongside the classic ones. (There are examples and code snippets on the repo to see how everything works together) Why build this? I'm a data infra / systems person. When LLMs showed up, what I saw was a new type of compute that changes the characteristics of the workloads we deal with. I wanted to experiment with how our current systems can absorb these new workloads and compute types, and what it would take to make the DX as seamless as possible, that's where the UDF + arbitrary prompt was feeling too problematic. To support this properly, we had to introduce a few really cool things: New plan operators. You don't just send prompts at an LLM. You use operators like semantic join, semantic map and reduce, and semantic filter, among others. They mix with the classic operators, and because the planner sees them as real operators rather than black boxes, it can reorder work around them. Typed outputs. There's ergonomics to turn the output of a semantic operator straight into a typed dataframe column. A Pydantic schema for the LLM output becomes a typed struct column you can unnest, explode, and so on. New data types like a markdown data type. Markdown became an important way to share information with LLMs, even though it started life as a way to format text for presentation. It carries structure, and being able to access that structure the way you would a struct or JSON type adds to the developer experience I mentioned. Async UDFs. One of the more interesting shifts in workloads from the LLM explosion is the need to put heavily I/O-bound steps in your pipeline: fetching a response from an API, crawling a website, and so on. Async UDFs fill that gap, and the implementation handles the nuances for you: concurrency, retries, and the rest. An LLM-inference-aware planner and runtime. This is one of the parts I'm most excited about, and there's a lot still to do. Today: identical prompts within a batch collapse to a single model call, so duplicates cost zero tokens; requests are dispatched concurrently under per-provider rpm/tpm limits with retries and backoff; null and empty cells skip the model entirely; and you get token and cost metrics per operator. There's also an optional persistent response cache so re-runs skip the model. MCP as a new catalog primitive. Much like a registered view, you can register a dataframe pipeline as an MCP tool in the catalog. fenic then serves an MCP server with that pipeline as the tool's logic, executed over your data. These are just some of what's gone into fenic while experimenting with how LLMs can become part of our compute infrastructure. There's more, and plenty more to polish on what's already there. I've been using fenic for all sorts of things. On the small/personal end, I use it to take my podcast audio recordings and turn them into nicely structured tables of metadata I can research. On the heavier end, I use it as tooling for agents to analyze agent traces exported from Pydantic Logfire, to discover evals and turn them into reproducible artifacts in the form of dataframe pipelines. pip install fenic Repo: https://github.com/typedef-ai/fenic Docs: https://docs.fenic.ai There's also a skill you can use with claude code, codex etc. to quickly get started with fenic in your favourite agentic coding environment. I'd love to hear your thoughts, criticism, and anything else that comes to mind. I'm here to answer questions.

Share card

Actual performance

3points
Did not reach leaderboard

Launch Intel predictions

Analyze your own launch →
Product HuntOn track for Day 1 leaderboard · Strong signals: agents, agent, claude · Missing: mac, macos, cursor
99%99% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Indie HackersFits the IH revenue-focused audience · Strong signals: started · Missing: supports, reddit linkedin, podcasting
84%84% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
TrustMRRFits verified-revenue profile · Strong signals: personal, way · Missing: mobile apps, ios, entrepreneurs
56%56% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: excited, ide, pipe · Missing: https docs, just released, exist
53%53% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
39%39% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Strong signals: arr · Missing: mrr, revenue, profit
13%13% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Strong signals: audio, introduce · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Incorrect prediction on native model

Similar products

WA
WASM Binary Structure58%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

WASM Binary Structure

Hacker News1
Ch
Cholidean Harmony Structure47%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Cholidean Harmony Structure

Hacker News3
St
Structural Genesis – structure emerging from nothing (Ø₀)30%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Structural Genesis – structure emerging from nothing (Ø₀)

Hacker News1
Mo
Monglorious – Query MongoDB with Strings33%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Monglorious – Query MongoDB with Strings

Hacker News2
Qu
Query the national alcoholic beverage retailing monopoly of Finland43%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Query the national alcoholic beverage retailing monopoly of Finland

Hacker News2
VelocityPack QueryBoost
VelocityPack QueryBoost38%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

MySQL / MariaDB Query Caching and Acceleration for cPanel

Indie Hackersemployees-10-plus
Blogwald
Blogwald68%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Structure content for llms and search engines

Product Hunt+232Writing
Da
Data structure walkers for gdb48%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Data structure walkers for gdb

Hacker News2
Th
The Commonbase Data Structure48%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

The Commonbase Data Structure

Hacker News4
UX
UXY – adding structure to Unix tools59%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

UXY – adding structure to Unix tools

Hacker News126