[{"data":1,"prerenderedAt":205},["ShallowReactive",2],{"project-45249697":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":41,"post_text":42,"what":43,"said":69,"maker_in_thread":133,"shape":138,"grid":142,"attempts":168,"same_week":169,"maker_shows":34,"maker_hidden":197,"reader_version":198,"card":199},"45249697","Semlib","Semantic Data Processing","title","Show HN: Semlib – Semantic Data Processing","https:\u002F\u002Fgithub.com\u002Fanishathalye\u002Fsemlib","github.com","anishathalye",1757943956,2025,63,12,1088,3837,29,"notable","dev_tools","python library","library",[24,25,26,27],"semantic data processing","llm","semantic sort","python iterators","roasted",-0.308,{"positive":31,"neutral":32,"mixed":32,"critical":33},2,0,5,7,{"design":36,"execution":38,"idea":39,"docs":40},{"positive":32,"critical":37},1,{"positive":32,"critical":31},{"positive":37,"critical":37},{"positive":37,"critical":37},[37,32,37,33,32,37,32,33,32,37,32,37],null,{"problem":44,"audience":42,"pricing":42,"motivation":54,"time_to_build":42,"stack":58,"openness":68,"stage":68,"team_size":68},{"value":45,"source":46,"evidence":47},"Processing data with fuzzy, LLM-based operations like map and sort","maker",[48,51],{"id":49,"by":11,"text":50},"45251057","Yeah, that was just a design choice that I made: I wanted a library that worked with `Iterator`s, felt more lightweight to me \u002F fit my immediate needs better. I'm personally not…",{"id":52,"by":11,"text":53},"45250441","That was a small self-contained example that fit above the fold in the README (and fwiw even last year’s models like GPT-4o give the right output there). That `sort` is based on…",{"value":55,"source":46,"evidence":56},"Wanted concurrent LLM calls for concrete data processing tasks and a lightweight iterator-based library",[57],{"id":49,"by":11,"text":50},[59,64],{"value":60,"source":61,"evidence":62},"Python","inferred",[63],{"id":49,"by":11,"text":50},{"value":65,"source":46,"evidence":66},"OpenAI API",[67],{"id":49,"by":11,"text":50},"unknown",{"praise":70,"objections":78,"requests":104,"questions":109,"alternatives":117},[71],{"value":72,"source":46,"evidence":73},"Fuzzy sorting of arXiv papers and composable primitives are useful",[74,75],{"id":52,"by":11,"text":53},{"id":76,"by":11,"text":77},"45250927","I think semantic data processing in this style has a nonempty set of use cases (e.g., I find the fuzzy sorting of arXiv papers to be useful, I find the examples in the docs…",[79,87,93],{"value":80,"source":81,"evidence":82},"Errors compound across fuzzy operations and can launder bad data","commenter",[83],{"id":84,"by":85,"text":86},"45250664","Y_Y","As you compose fuzzy operations your errors multiply! Nobody is asking for perfection, but this tool seems to me a straightforward way to launder bad data. If you want to do a…",{"value":88,"source":81,"evidence":89},"Example output for sorting presidents by right-leaning is questionable",[90],{"id":91,"by":85,"text":92},"45250210","``` >>> await sort(presidents, by=\"right-leaning\") ['Jimmy Carter', 'Bill Clinton', 'George H. W. Bush', 'Ronald Reagan'] ``` Is this supposed to be impressive? GIGO, if you want…",{"value":94,"source":81,"evidence":95},"Sort order in the example was confusing",[96,100],{"id":97,"by":98,"text":99},"45252821","adastra22","FWIW it doesn't serve as a great example because the ordering is not obvious. I think that is what GP was reacting to. When I say \"sort a list of presidents by how right-leaning…",{"id":101,"by":102,"text":103},"45251590","rekwah","Asc vs Desc sort order doing a lot of lifting here.",[105],{"value":106,"source":81,"evidence":107},"Clarify the sort order in the README example",[108],{"id":97,"by":98,"text":99},[110],{"value":111,"source":81,"evidence":112},"Does it batch requests?",[113],{"id":114,"by":115,"text":116},"45250267","esafak","Instead of building a new data processing library, I would have offered only the novel NLP part and exposed it to existing libraries like pandas, polars, and spacy. Does it batch…",[118,122,129],{"value":119,"source":46,"evidence":120},"LOTUS",[121],{"id":49,"by":11,"text":50},{"value":123,"source":81,"evidence":124},"arbitron",[125],{"id":126,"by":127,"text":128},"45250378","hobofan","Why not? List-sorting\u002Fprioritizing list is among one of the best use-cases for LLMs, especially if the metrics for it are fuzzy, e.g. \"what are the 10 sales lead of this list of…",{"value":130,"source":46,"evidence":131},"DocETL",[132],{"id":52,"by":11,"text":53},{"comments":33,"answered":31,"key":134},[135,136,137],{"id":49,"text":50},{"id":52,"text":53},{"id":76,"text":77},{"commenters":139,"max_depth":139,"maker_replies":33,"first_comment_mins":140,"lifespan_hours":141},6,48,9,[143,145,147,149,151,152,154,156,159,162,164,167],[114,32,37,144,115,32],"project\u002Fcritical\u002Fdesign",[49,32,32,146,11,37],"project\u002Fneutral\u002Fdesign",[91,37,37,148,85,32],"project\u002Fcritical\u002Fexecution",[126,37,33,150,127,32],"project\u002Fpositive\u002Fidea",[52,37,32,150,11,37],[84,37,37,153,85,32],"project\u002Fcritical\u002Fidea",[76,37,32,155,11,37],"project\u002Fneutral\u002Fdocs",[157,37,33,158,85,32],"45251839","maker\u002Fpositive\u002Fdocs",[160,37,32,161,11,37],"45255814","commenter\u002Fneutral\u002Fnone",[97,37,37,163,98,32],"project\u002Fcritical\u002Fdocs",[165,37,32,166,11,37],"45255829","maker\u002Fneutral\u002Fdocs",[101,37,37,148,102,32],[],[170,175,179,184,188,192],{"id":171,"name":172,"points":173,"category":174},"45231378","AnyCrap",1184,"creative",{"id":176,"name":177,"points":178,"category":174},"45220069","Beat Maker",202,{"id":180,"name":181,"points":182,"category":183},"45212535","Asxiv.org",161,"ai",{"id":185,"name":186,"points":187,"category":174},"45232299","CLAVIER-36",146,{"id":189,"name":190,"points":191,"category":174},"45247396","Backdrop",82,{"id":193,"name":194,"points":195,"category":196},"45245138","Dagger.js",80,"languages",false,"v2",{"id":200,"name":5,"line":6,"ai":197,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":201,"top":18,"kw":202,"maker":11,"domain":10,"tier":19,"attempts":32,"strip":203,"url":9,"mix":204,"praise":72,"objection":80,"sub":21},45249697,-0.31,[24,25,26,27],"101501050101",[31,32,32,33],1793991130052]