The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Route your prompts to the best LLM
Hey HN, we've just finished building a dynamic router for LLMs, which takes each prompt and sends it to the most appropriate model and provider. We'd love to know what you think!<p>Here is a quick(ish) screen-recroding explaining how it works: <a href="https://youtu.be/ZpY6SIkBosE" rel="nofollow">https://youtu.be/ZpY6SIkBosE</a><p>Best results when training a custom router on your own prompt data: <a href="https://youtu.be/9JYqNbIEac0" rel="nofollow">https://youtu.be/9JYqNbIEac0</a><p>The router balances user preferences for quality, speed and cost. The end result is higher quality and faster LLM responses at lower cost.<p>The quality for each candidate LLM is predicted ahead of time using a neural scoring function, which is a BERT-like architecture conditioned on the prompt and a latent representation of the LLM being scored. The different LLMs are queried across the batch dimension, with the neural scoring architecture taking a single latent representation of the LLM as input per forward pass. This makes the scoring function very modular to query for different LLM combinations. It is trained in a supervised manner on several open LLM datasets, using GPT4 as a judge. The cost and speed data is taken from our live benchmarks, updated every few hours across all continents. The final "loss function" is a linear combination of quality, cost, inter-token-latency and time-to-first-token, with the user effectively scaling the weighting factors of this linear combination.<p>Smaller LLMs are often good enough for simple prompts, but knowing exactly how and when they might break is difficult. Simple perturbations of the phrasing can cause smaller LLMs to fail catastrophically, making them hard to rely on. For example, Gemma-7B converts numbers to strings and returns the "largest" string when asking for the "largest" number in a set, but works fine when asking for the "highest" or "maximum".<p>The router is able to learn these quirky distributions, and ensure that the smaller, cheaper and faster LLMs are only used when there is high confidence that they will get the answer correct.<p>Pricing-wise, we charge the same rates as the backend providers we route to, without taking any margins. We also give $50 in free credits to all new signups.<p>The router can be used off-the-shelf, or it can be trained directly on your own data for improved performance.<p>What do people think? Could this be useful?<p>Feedback of all kinds is welcome!
Show HN: Route your prompts to the best LLM
Hey HN, we've just finished building a dynamic router for LLMs, which takes each prompt and sends it to the most appropriate model and provider. We'd love to know what you think!<p>Here is a quick(ish) screen-recroding explaining how it works: <a href="https://youtu.be/ZpY6SIkBosE" rel="nofollow">https://youtu.be/ZpY6SIkBosE</a><p>Best results when training a custom router on your own prompt data: <a href="https://youtu.be/9JYqNbIEac0" rel="nofollow">https://youtu.be/9JYqNbIEac0</a><p>The router balances user preferences for quality, speed and cost. The end result is higher quality and faster LLM responses at lower cost.<p>The quality for each candidate LLM is predicted ahead of time using a neural scoring function, which is a BERT-like architecture conditioned on the prompt and a latent representation of the LLM being scored. The different LLMs are queried across the batch dimension, with the neural scoring architecture taking a single latent representation of the LLM as input per forward pass. This makes the scoring function very modular to query for different LLM combinations. It is trained in a supervised manner on several open LLM datasets, using GPT4 as a judge. The cost and speed data is taken from our live benchmarks, updated every few hours across all continents. The final "loss function" is a linear combination of quality, cost, inter-token-latency and time-to-first-token, with the user effectively scaling the weighting factors of this linear combination.<p>Smaller LLMs are often good enough for simple prompts, but knowing exactly how and when they might break is difficult. Simple perturbations of the phrasing can cause smaller LLMs to fail catastrophically, making them hard to rely on. For example, Gemma-7B converts numbers to strings and returns the "largest" string when asking for the "largest" number in a set, but works fine when asking for the "highest" or "maximum".<p>The router is able to learn these quirky distributions, and ensure that the smaller, cheaper and faster LLMs are only used when there is high confidence that they will get the answer correct.<p>Pricing-wise, we charge the same rates as the backend providers we route to, without taking any margins. We also give $50 in free credits to all new signups.<p>The router can be used off-the-shelf, or it can be trained directly on your own data for improved performance.<p>What do people think? Could this be useful?<p>Feedback of all kinds is welcome!
Show HN: Oracolo – A minimalist Nostr blog in a single HTML file
Oracolo is a minimalist blog powered by Nostr, that consists of a single html file, weighing only ~140Kb. It works also without a web server; for example you can send it via email as a business card.<p>Take it as a didactic experiment, it's no production ready, indeed it has some limitations (no SEO friendly structure), but can work as a temporary solution (e.g. coming soon and parking pages), and it is still an example of how easy it is to create a Nostr-powered web app and deploy it on a low-tech infrastructure.<p>Comments and suggestions on how to improve it are welcome!
Show HN: Oracolo – A minimalist Nostr blog in a single HTML file
Oracolo is a minimalist blog powered by Nostr, that consists of a single html file, weighing only ~140Kb. It works also without a web server; for example you can send it via email as a business card.<p>Take it as a didactic experiment, it's no production ready, indeed it has some limitations (no SEO friendly structure), but can work as a temporary solution (e.g. coming soon and parking pages), and it is still an example of how easy it is to create a Nostr-powered web app and deploy it on a low-tech infrastructure.<p>Comments and suggestions on how to improve it are welcome!
Show HN: Oracolo – A minimalist Nostr blog in a single HTML file
Oracolo is a minimalist blog powered by Nostr, that consists of a single html file, weighing only ~140Kb. It works also without a web server; for example you can send it via email as a business card.<p>Take it as a didactic experiment, it's no production ready, indeed it has some limitations (no SEO friendly structure), but can work as a temporary solution (e.g. coming soon and parking pages), and it is still an example of how easy it is to create a Nostr-powered web app and deploy it on a low-tech infrastructure.<p>Comments and suggestions on how to improve it are welcome!
Show HN: Openpanel – An open-source alternative to Mixpanel
I have created an open-source alternative to Mixpanel and will explain a bit about why I decided to do this.<p>Mixpanel is a GREAT tool and quite easy to understand (compared to GA4 and similar). I have used Mixpanel extensively for one of my React Native apps, but the last invoice was $300, which was way over my budget. I think I was paying for MTU (monthly tracked users), which was around 7000-10k users.<p>However, a downside of Mixpanel is that it is purely a product analytics tool; you don't get any basic web analytics similar to what GA4 or Plausible offers.<p>Therefore, I have combined the best features of Mixpanel and Plausible to create what I believe is the ultimate experience in an analytics tool (product and web).<p>The focus has always been: it should be easy yet also powerful. This has been a challenging balance, but I think I have managed to keep it somewhat simple.<p>Key Features:
- Privacy-first
- Visualize your events like Mixpanel
- Plausible-like overview
- Self-hostable
- Better support for React Native than Plausible
- Real-time (no delays for events)
Ability to access all individual events and sessions<p>It's currently in beta and completely free during the beta period.<p>Give it a spin: <a href="https://openpanel.dev" rel="nofollow">https://openpanel.dev</a>
Show HN: Openpanel – An open-source alternative to Mixpanel
I have created an open-source alternative to Mixpanel and will explain a bit about why I decided to do this.<p>Mixpanel is a GREAT tool and quite easy to understand (compared to GA4 and similar). I have used Mixpanel extensively for one of my React Native apps, but the last invoice was $300, which was way over my budget. I think I was paying for MTU (monthly tracked users), which was around 7000-10k users.<p>However, a downside of Mixpanel is that it is purely a product analytics tool; you don't get any basic web analytics similar to what GA4 or Plausible offers.<p>Therefore, I have combined the best features of Mixpanel and Plausible to create what I believe is the ultimate experience in an analytics tool (product and web).<p>The focus has always been: it should be easy yet also powerful. This has been a challenging balance, but I think I have managed to keep it somewhat simple.<p>Key Features:
- Privacy-first
- Visualize your events like Mixpanel
- Plausible-like overview
- Self-hostable
- Better support for React Native than Plausible
- Real-time (no delays for events)
Ability to access all individual events and sessions<p>It's currently in beta and completely free during the beta period.<p>Give it a spin: <a href="https://openpanel.dev" rel="nofollow">https://openpanel.dev</a>
Show HN: Openpanel – An open-source alternative to Mixpanel
I have created an open-source alternative to Mixpanel and will explain a bit about why I decided to do this.<p>Mixpanel is a GREAT tool and quite easy to understand (compared to GA4 and similar). I have used Mixpanel extensively for one of my React Native apps, but the last invoice was $300, which was way over my budget. I think I was paying for MTU (monthly tracked users), which was around 7000-10k users.<p>However, a downside of Mixpanel is that it is purely a product analytics tool; you don't get any basic web analytics similar to what GA4 or Plausible offers.<p>Therefore, I have combined the best features of Mixpanel and Plausible to create what I believe is the ultimate experience in an analytics tool (product and web).<p>The focus has always been: it should be easy yet also powerful. This has been a challenging balance, but I think I have managed to keep it somewhat simple.<p>Key Features:
- Privacy-first
- Visualize your events like Mixpanel
- Plausible-like overview
- Self-hostable
- Better support for React Native than Plausible
- Real-time (no delays for events)
Ability to access all individual events and sessions<p>It's currently in beta and completely free during the beta period.<p>Give it a spin: <a href="https://openpanel.dev" rel="nofollow">https://openpanel.dev</a>
Show HN: I built a game to help you learn neural network architectures
Show HN: I built a game to help you learn neural network architectures
Show HN: I built a game to help you learn neural network architectures
Show HN: Pls Fix – Hire big tech employees to appeal account suspensions
I used to work for Facebook and Google and constantly got asked questions like "Hey, my Instagram account got blocked for no reason. Could you help me get it back?". I'd say yes, it would take me 10 min to fill out an internal form and 1 week later the account was back.<p>Even years after leaving, I still get these requests. So I built a marketplace for them. Let me know what you think!
Show HN: Pls Fix – Hire big tech employees to appeal account suspensions
I used to work for Facebook and Google and constantly got asked questions like "Hey, my Instagram account got blocked for no reason. Could you help me get it back?". I'd say yes, it would take me 10 min to fill out an internal form and 1 week later the account was back.<p>Even years after leaving, I still get these requests. So I built a marketplace for them. Let me know what you think!
Show HN: I built an app that writes your life story
Show HN: Checkpoint 401 – forward auth server in TypeScript / Deno
I wrote a forward auth server in TypeScript and Deno.<p>I've written several forward auth servers before but they have always been specifically written for that application. I wanted something more generalised that I could re-use.<p>What is forward auth? Web servers likes Nginx and Caddy and Traefik have a configuration option in which inbound requests are sent to another server before they are allowed. A 200 response from that server means the request is authorised, anything else results in the web server rejecting the request.<p>This is a good thing because it means you can put all your auth code in one place, and that the auth code can focus purely on the job of authing inbound requests.<p>Checkpoint 401 aims to be extremely simple - you define a route.json which contains 3 things, the method, the URL pattern to match against and the filename of a TypeScript function to execute against that request. Checkpoint 401 requires that your URL pattern comply with the URL pattern API here: <a href="https://developer.mozilla.org/en-US/docs/Web/API/URLPattern/URLPattern" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/API/URLPattern/...</a><p>Your TypeScript function must return a boolean to pass/fail the auth request.<p>That's all there is to it. It is brand new and completely untested so it's really only for skilled TypeScript developers at the moment - and I suggest that if you're going to use it then first read through the code and satisify yourself that it is good - it's only 500 lines: <a href="https://raw.githubusercontent.com/crowdwave/checkpoint401/master/checkpoint401.ts" rel="nofollow">https://raw.githubusercontent.com/crowdwave/checkpoint401/ma...</a>
Show HN: A VS Code extension to check incompatible CSS
I've developed a handy tool for Visual Studio Code that makes checking CSS compatibility very easy for developers.<p>It provides instant feedback on syntax, keywords, types, and function compatibility. It even highlights deprecated, non-standard, and experimental features.
Show HN: Brawshot – Basic temporal denoise for videos in BRAW format
I wanted to record the aurora last weekend, but I only have a Blackmagic Design video camera which is clearly not made for this purpose. Recording a video of the night sky results in extreme noise to the point that you don't really see anything, so I wrote a tool to significantly reduce noise in such video recordings. Essentially it computes a moving average across video frames which significantly reduces the random sensor noise. This works because aurora changes very slowly, and it's roughly comparable to a long exposure time computed out of a video file where the individual frames have a very short exposure time. But unlike a photo camera with long exposure time, this produces a video at full frame rate again. The window size of the moving average has no influence on the computation time, so even large window sizes of e.g. 100 frames or more are no problem.<p>If you want to use this tool for artistic purposes, it will produce extreme motion blur depending on the window size you choose.<p>I am aware that tools like ffmpeg or the paid version of DaVinci Resolve have denoising features, but at least ffmpeg's denoising filters are extremely slow and memory intensive, and it's fun to implement this as fast GPU accelerated open source software for this non-standard use case anyway.<p>To use this tool, you'll need a Blackmagic Design camera which records in BRAW format (or you could hack the video decoder in the main.cpp file to decode some other source video file format).<p>If someone has a good idea how to remove the remaining noise pattern which seems to be inherent in the image sensor and very slowly changes over time, I'd be very interested!
Show HN: Brawshot – Basic temporal denoise for videos in BRAW format
I wanted to record the aurora last weekend, but I only have a Blackmagic Design video camera which is clearly not made for this purpose. Recording a video of the night sky results in extreme noise to the point that you don't really see anything, so I wrote a tool to significantly reduce noise in such video recordings. Essentially it computes a moving average across video frames which significantly reduces the random sensor noise. This works because aurora changes very slowly, and it's roughly comparable to a long exposure time computed out of a video file where the individual frames have a very short exposure time. But unlike a photo camera with long exposure time, this produces a video at full frame rate again. The window size of the moving average has no influence on the computation time, so even large window sizes of e.g. 100 frames or more are no problem.<p>If you want to use this tool for artistic purposes, it will produce extreme motion blur depending on the window size you choose.<p>I am aware that tools like ffmpeg or the paid version of DaVinci Resolve have denoising features, but at least ffmpeg's denoising filters are extremely slow and memory intensive, and it's fun to implement this as fast GPU accelerated open source software for this non-standard use case anyway.<p>To use this tool, you'll need a Blackmagic Design camera which records in BRAW format (or you could hack the video decoder in the main.cpp file to decode some other source video file format).<p>If someone has a good idea how to remove the remaining noise pattern which seems to be inherent in the image sensor and very slowly changes over time, I'd be very interested!
Show HN: ffmpeg-english "capture from /dev/video0 every 1 second to jpg files"
Show HN: ffmpeg-english "capture from /dev/video0 every 1 second to jpg files"