<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: snyy</title><link>https://news.ycombinator.com/user?id=snyy</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 28 Jul 2026 02:34:43 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=snyy" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>Our blog covers this: <a href="https://usefeyn.com/blog/feynobg/#strength-in-diverse-data">https://usefeyn.com/blog/feynobg/#strength-in-diverse-data</a><p>Recapping here: Our first train was on 4,000 images from the MaskFactory dataset alone. This improved some benchmarks but regressed on others. We took this as a sign of narrow datasets causing unintended specialization.<p>In our next run, we assembled 26.1K images from 10 different datasets. We capped the amount of images that could come from one source, to prevent a single type of example from dominating. This composite set covered several cases like crowded scenes, camouflage, high-res subjects, fine objects like hair, blurred backgrounds, etc.  We then shuffled everything together and trained FeyNoBg.</p>
]]></description><pubDate>Mon, 27 Jul 2026 21:43:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=49075895</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49075895</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49075895</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>Your question touches on excellent points.<p>> what is the subject?<p>FeyNoBg is an "automatic" model. It automatically detects foreground elements and segments the image. Most of the time, this includes all foreground elements. As you can see in the freekick example (<a href="https://drive.google.com/file/d/1MZkAGLwbhNVOZ0Oi7XvpCfSEu9QPCbwj/view?usp=sharing" rel="nofollow">https://drive.google.com/file/d/1MZkAGLwbhNVOZ0Oi7XvpCfSEu9Q...</a>), the model output includes the ball, Messi, and the Liverpool defenders. In your example, FeyNoBg will segment around the person plus the couch.<p>> I only want the person [including props]<p>The alternative to automatic models are prompt models and those serve the exact use case you're describing. These allow you to specify the foreground element to include. Everything else is removed. That's the next step for FeyNoBg, converting it from an automatic to a prompt model. Now, answering your question:<p>> How does it stack up against Adobe's model?<p>We're better on automatic background removal. Support for selecting a subset of foreground elements is coming soon</p>
]]></description><pubDate>Mon, 27 Jul 2026 21:37:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=49075834</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49075834</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49075834</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>This pertains to the larger open source licensing discussions that have been happening (as I'm sure you've seen too).<p>We've released projects under the MIT license before, most notably <a href="https://github.com/feyninc/chonkie" rel="nofollow">https://github.com/feyninc/chonkie</a>. While we're not trying to directly monetize on this work, credit goes a long way and helps in other operations.<p>Recently, attributed usage is shrinking. To be clear, this is not a shrinkage in actual use of our software, just how many people acknowledge that they rely on it.<p>cc-by-nc is a protection against that. We've been very honest about our work being on top of BiRefNet as we want to extend the original creators the same courtesy. I have no issues if individuals fork/finetune/or otherwise build on top of any open source projects we release, irrespective of license. At minimum, we want acknowledgment if a company chooses to use our software in production.</p>
]]></description><pubDate>Mon, 27 Jul 2026 20:40:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=49075234</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49075234</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49075234</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>Please do try, I would love nothing more!<p>All I ask is you make a PR to <a href="https://github.com/feyninc/nobg" rel="nofollow">https://github.com/feyninc/nobg</a> with your results. We'd love to see what you make, contribute in any way we can, and share onwards.</p>
]]></description><pubDate>Mon, 27 Jul 2026 18:36:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=49073847</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49073847</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49073847</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>We resize the opacity mask. That tends to scale better</p>
]]></description><pubDate>Mon, 27 Jul 2026 18:26:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49073677</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49073677</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49073677</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>Thanks! Feel free to open an issue if you run into any issues with the outputs<p><a href="https://github.com/feyninc/nobg/issues" rel="nofollow">https://github.com/feyninc/nobg/issues</a></p>
]]></description><pubDate>Mon, 27 Jul 2026 18:19:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=49073564</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49073564</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49073564</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: FeyNoBg – Automatic background removal model and training library"]]></title><description><![CDATA[
<p>The 4K cap was a judgement call, we didn't want one source to dominate. The license is cc-by-nc, just added it to the hugging face</p>
]]></description><pubDate>Mon, 27 Jul 2026 18:03:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=49073343</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49073343</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49073343</guid></item><item><title><![CDATA[Show HN: FeyNoBg – Automatic background removal model and training library]]></title><description><![CDATA[
<p>Hey HN, I’m Shreyash from Feyn. We help companies build custom models from their data.<p>Today, we’re releasing FeyNoBg, an automatic background removal model. Alongside it, we're open-sourcing NoBg, the Python library we built to train and run it.<p>Try the model here: <a href="https://huggingface.co/spaces/feyninc/feynobg" rel="nofollow">https://huggingface.co/spaces/feyninc/feynobg</a>. Check out the library here: <a href="https://github.com/feyninc/nobg" rel="nofollow">https://github.com/feyninc/nobg</a><p>Some sample outputs:<p>(1) Soccer Freekick: <a href="https://drive.google.com/file/d/1MZkAGLwbhNVOZ0Oi7XvpCfSEu9QPCbwj/view?usp=sharing" rel="nofollow">https://drive.google.com/file/d/1MZkAGLwbhNVOZ0Oi7XvpCfSEu9Q...</a><p>(2) Hair in wind: <a href="https://drive.google.com/file/d/1Odc2m0XMVH9uZtvI_KjaRbXzhLLdGK8Z/view?usp=sharing" rel="nofollow">https://drive.google.com/file/d/1Odc2m0XMVH9uZtvI_KjaRbXzhLL...</a><p>(3) Bicycle with visible spokes: <a href="https://drive.google.com/file/d/1h99ahjfrtS1MFQJJgiKE2fuM3HZyQ-QJ/view?usp=sharing" rel="nofollow">https://drive.google.com/file/d/1h99ahjfrtS1MFQJJgiKE2fuM3HZ...</a><p>(4) Live Demo video: <a href="https://youtu.be/b1heHPvY8BM" rel="nofollow">https://youtu.be/b1heHPvY8BM</a><p>Background removal separates an image's subject from its surrounding. We've all tried it at some point. Often it is to reuse the subject in a different artifact. Nowadays, it is common to make chat stickers out of it. It is one of the most common but under-appreciated uses of AI. It is also surprisingly complex. Models can be easily confused by camouflage, motion blur, or fine structures like hair.<p>The task requires two skills. First, a model has to identify the foreground. Second, it has to trace the foreground’s boundary and estimate an opacity value for each pixel. Generally, these skills are taught with different datasets. That creates a failure point. A poor training mix can improve one skill at the expense of the other. We saw this in our controlled evaluation. A training run with just the MaskFactory dataset improved on the CAMO benchmark but regressed on DIS5K.<p>For FeyNoBg, we took an interpretability-first approach to training. We first studied how BiRefNet’s stages contribute to finding the foreground and reconstructing its boundary. We discovered that the third stage of it's feature extractor holds a lot of information. Both localization and boundary reconstruction depend heavily on the feature map produced here.<p>This led us to expand this stage from 18 to 24 blocks while preserving the pre-trained weights. We then trained FeyNoBg on 26.1K diverse examples assembled from 10 datasets. The goal was to improve foreground identification and boundary precision without sacrificing either one.<p>Across eight benchmarks, FeyNoBg achieves the best published score on four and comes within 2% of the leader on the rest.<p>Building FeyNoBg also exposed a tooling problem. Image matting models are usually released as isolated repositories with incompatible preprocessing, training, and evaluation code. We built NoBg to solve this. NoBg puts these workflows behind one Python interface. It supports BiRefNet today, with more architectures coming. We hope you build something exciting with it!<p>Happy to answer any questions!</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49072462">https://news.ycombinator.com/item?id=49072462</a></p>
<p>Points: 93</p>
<p># Comments: 22</p>
]]></description><pubDate>Mon, 27 Jul 2026 16:59:08 +0000</pubDate><link>https://usefeyn.com/blog/feynobg/</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=49072462</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49072462</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Exactly this. Thank you for answering!</p>
]]></description><pubDate>Tue, 07 Jul 2026 00:49:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=48812390</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48812390</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48812390</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Ah yes, I meant accuracy.</p>
]]></description><pubDate>Tue, 07 Jul 2026 00:48:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=48812384</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48812384</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48812384</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Yes. I tried it with <a href="https://www.allbirds.com/products/womens-cruiser-canvas" rel="nofollow">https://www.allbirds.com/products/womens-cruiser-canvas</a> on our HF space and Pulpie worked great.<p>HF Space: <a href="https://huggingface.co/spaces/feyninc/pulpie" rel="nofollow">https://huggingface.co/spaces/feyninc/pulpie</a></p>
]]></description><pubDate>Mon, 06 Jul 2026 23:52:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=48812012</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48812012</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48812012</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Images pass through as they are considered main content. Same with tables.<p>Pulpie will return all main content on a page as HTML/Markdown. I’m not sure I fully understand “which one this is good at?”. perhaps you can try the model on hugging face and let me know if the results look good?<p><a href="https://huggingface.co/spaces/feyninc/pulpie" rel="nofollow">https://huggingface.co/spaces/feyninc/pulpie</a></p>
]]></description><pubDate>Mon, 06 Jul 2026 20:18:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48809935</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48809935</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48809935</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>We see far better performance with models. Heuristics break on richer content like codeblocks, formulae, quotes, etc. In our testing, our model was 25 F1 points better than Trafilatura.</p>
]]></description><pubDate>Mon, 06 Jul 2026 18:56:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=48808944</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48808944</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48808944</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Fixed. Try again. Let me know if any other issues</p>
]]></description><pubDate>Mon, 06 Jul 2026 18:29:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=48808577</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48808577</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48808577</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Thanks! Good questions:<p>We haven't run a targeted eval against SEO spam yet. However, with Pulpie, each block gets labeled by what the text actually says rather than what the tags look like. Wrapping boilerplate in semantic tags fools rule based extractors precisely because they judge structure. Pulpie doesn't. The closest benchmark we have for this is the WebMainBench difficulty split, where pulpie-orange-small holds 0.813 on the hard subset. For comparison, trafilatura scores a 0.526.<p>For quantization, we haven't benchmarked INT8 or FP8. Everything in the post ran on L4 and A100. That said, I expect it to go well for a few reasons. It's a single forward pass over the page, so the workload is compute bound rather than bandwidth bound, which is why the L4 held up so well against the A100 and why cheaper cards should degrade gracefully. At 210M params the small model is roughly 420MB in FP16 and half that in INT8. So it fits on any consumer GPU with room to spare. Also, one pass classification tends to survive 8 bit quantization better than autoregressive generation since there is no error accumulation across decode steps.</p>
]]></description><pubDate>Mon, 06 Jul 2026 18:29:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=48808570</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48808570</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48808570</guid></item><item><title><![CDATA[New comment by snyy in "Show HN: Pulpie – Models for Cleaning the Web"]]></title><description><![CDATA[
<p>Funnily enough, that wasn't my first choice either. I A/B tested it with a small group and people understood "up and to the right is better" faster.</p>
]]></description><pubDate>Mon, 06 Jul 2026 18:11:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48808335</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48808335</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48808335</guid></item><item><title><![CDATA[Show HN: Pulpie – Models for Cleaning the Web]]></title><description><![CDATA[
<p>Hey HN, I'm Shreyash, founder of Feyn. We built Pulpie, a family of Pareto optimal models for cleaning the web. Pulpie strips boilerplate (ads, footers, sidebars) from raw HTML and returns just the main content as HTML or Markdown.<p>We match SOTA extraction quality while being 20x cheaper. Cleaning 1 billion webpages costs $7,900 with Pulpie versus $159,000 with Dripper, the current leading extractor.<p>The gains come from architecture. Today's leading extractors are decoders that generate output one token at a time. Each step reads the full model from memory to produce a single token. Conversely, Pulpie models are encoders. They run one forward pass over the full input HTML and label each block as boilerplate or content. As a result, Pulpie is compute-bound while decoders are memory-bound. Cheaper GPUs have relatively more compute than memory bandwidth. This makes Pulpie easy to run optimally.<p>Here's Pulpie and Dripper cleaning the same pages side by side: <a href="https://www.youtube.com/watch?v=ibd-tIiQECo" rel="nofollow">https://www.youtube.com/watch?v=ibd-tIiQECo</a>. You can try a side-by-side comparison yourself: <a href="https://huggingface.co/spaces/feyninc/pulpie" rel="nofollow">https://huggingface.co/spaces/feyninc/pulpie</a><p>Our motivation for Pulpie came from building a deep research harness. Every search API returns noisy content that contains ads, nav elements, and sidebars. In one instance, an ad for "Gemini on Pixel" slipped into our search results, got passed into LLM context, and ended up in the final answer served to the user. Pretty embarrassing moment for us but it helped us realize how bad data kills model intelligence. We built Pulpie to get clean data for cheap.<p>All models are open source on Hugging Face. You can read about our training process and how to use Pulpie here: <a href="https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cleaning-the-web/#get-started">https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cl...</a><p>Happy to answer any questions!</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48806575">https://news.ycombinator.com/item?id=48806575</a></p>
<p>Points: 106</p>
<p># Comments: 26</p>
]]></description><pubDate>Mon, 06 Jul 2026 16:04:27 +0000</pubDate><link>https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cleaning-the-web/</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48806575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48806575</guid></item><item><title><![CDATA[Show HN: Pulpie – Pareto-Optimal Models for Cleaning the Web]]></title><description><![CDATA[
<p>The idea for Pulpie came to us when building a deep research harness. All Search APIs return noisy content containing ads, navigational elements, and sidebars. In one instance, an ad for "Gemini on Pixel" made its way into our search results. The ad copy was then passed into LLM context, where it was used in the final answer served to the user.<p>Unclean data is harmful to model intelligence. In pre training, it pollutes data the model learns from. At inference, it confuses a model.<p>We built Pulpie to make clean data available for cheap. The blog goes over our process. Happy to answer any questions</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48748093">https://news.ycombinator.com/item?id=48748093</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 01 Jul 2026 15:07:14 +0000</pubDate><link>https://usefeyn.com/blog/pulpie-pareto-optimal-models-for-cleaning-the-web/</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=48748093</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48748093</guid></item><item><title><![CDATA[New comment by snyy in "So, you want to chunk really fast?"]]></title><description><![CDATA[
<p>You have the right understanding.<p>We've found that maximizing chunk size gives the best retrieval performance and is easier to maintain since you don't have to customize chunking strategy per document type.<p>The upper limit for chunk size is set by your embedding model. After a certain size, encoding becomes too lossy and performance degrades.<p>There is a downside: blindly splitting into large chunks may cut a sentence or word off mid-way. We handle this by splitting at delimiters and adding overlap to cover abbreviations and other edge cases.</p>
]]></description><pubDate>Mon, 05 Jan 2026 22:48:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46506227</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=46506227</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46506227</guid></item><item><title><![CDATA[New comment by snyy in "So, you want to chunk really fast?"]]></title><description><![CDATA[
<p>As the other comment said, its a practice in good enough chunks quality. We focus on big chunks (largest we can make without hurting embedding quality) as fast as possible. In our experience, retrieval accuracy is mostly driven by embedding quality, so perfect splits don't move the needle much.<p>But as the number of files to ingest grows, chunking speed does become a bottleneck. We want faster everything (chunking, embedding, retrieval) but chunking was the first piece we tackled. Memchunk is the fastest we could build.</p>
]]></description><pubDate>Mon, 05 Jan 2026 22:31:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=46506032</link><dc:creator>snyy</dc:creator><comments>https://news.ycombinator.com/item?id=46506032</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46506032</guid></item></channel></rss>