tlack
tlack on Hacker News
Great ideas! Right now live transcription is hampered by the amount of memory available. I'll research whether or not this can be improved.
I wrote the README from the perspective of being understandable by the lay person, and I think I left out some vital clues about this being a software building block for making your
own ESP32 projects more intelligent. I pushed a README update to make it 0.1% more clear.
As for what to talk to.. or the ultimate purpose lol.. you could do simple device control scenarios ("lights off"), do hands-free sensor readings ("temperature at 95 degrees"), change wifi settings via voice ("switch access points"), etc.
I use it to control an agent-powered diverse device sensor network in my home and my truck. Much of the capability needs Internet access, but having on-device speech to text and text to speech means I can still do some stuff when I didn't bring the Starlink with me. On-device STT opens up a lot of low bandwidth (lora) opportunities too.
It's a library for C / Micropython / AtomVM, so you could send the result over a lora radio, ESPNOW, WAN, match it in a switch statement to activate a relay, draw on the LCD.. that's up to you.
Many ESP32S3 dev boards have a microphone and speaker header available conveniently on the board, so I have been using that to respond via Babytalk's text to speech capability.
I'll improve the README to make it a little more clear.
Posted by
tlack on Friday October 09, 2026 @05:33PM
from the show-hn dept.
https://github.com/tlack/babytalk
I have been playing with a lot of $20 devices with no keyboards or screens. I wanted to use speech to interact with them, but without it having to run through a cloud service or use a fixed command vocabulary.I worked with Claude to implement high performance 4bit int kernels for the ESP32S3 and P4 and quantize some larger STT and TTS models. Surprisingly, it's quite usable on these tiny...
It seems like everyone is more worried about how something was made rather than what it is or whether or not the work is good on its own merit. Ironic from a group that is surely using AI tools in their own work.
If your application is pricing sensitive, check out DeepInfra.com - they have a variety of models in the pennies-per-mil range. Not quite as fast as Mercury, Groq or Samba Nova though.
(I have no affiliation with this company aside from being a happy customer the last few years)
Vast.ai is a well known provider in that category.
Runpod also has an offering in this space but I think they’re shifting toward more managed-by-them rental services.
If you want someone to take you up on that offer you gotta specify a % differential from cloud list price. :)
Sounds great to me! Just be sure the AI is capable of taking on various personas because not everyone you meet is a believer in nonviolent communication.
A tip, Miami guy to Miami guy - the best devs eschew PHP like the plague. The remaining PHPers are desperate work-a-day sorts who will not be bringing the latest hotness to your project. Hire an Elixir or Haskell expert and you're gonna get a much more well-traveled coder.
Kudos on your bold undertaking! I've been a side-lined QNX admirer for some time, though not a potential user in most cases. A good next step would be a series of blog posts where the author takes on common types of enthusiast projects and unpacks how QNX's strengths can be applied in those scenarios.
Posted by
tlack on Wednesday November 06, 2024 @10:17PM
from the blog.dnmfarrell.com dept.
Posted by
tlack on Monday October 07, 2024 @03:36PM
from the github.com dept.
Do you find you really need that level of “resolution” with memories?
On our [1] chatbots we use one long memories text field per chatbot <-> user relationship.
Each bot response cycle suggests a new memory to add as part of its prompt (along with the message etc)
Then we take that new memory and the existing memories text and feed it to a separate “memory archivist” LLM prompt cycle that’s tasked with adding this new memory and resummarizing the whole thing, yielding a replacement for the stored memories, with this new memory added.
Maybe overly simplistic but easy to manage and pretty inexpensive. The archiving part is async and fast. The LLM seems pretty good sussing out what’s important and what isn’t.
[1] https://Graydient.ai
I have read a lot of reports that the job market is pretty bad.
But, bad or good, I think all you can really do is keep trying! Don't let a few rejections stymie your long term goals. Your family needs you to keep putting one foot in front of the other and applying to more and more places until you find that perfect role.
Maybe use this downtime to build yourself up: open source some stuff that defines you as a subject matter expert, or blog about some of your experiences, etc.
Wouldn't hurt to share your resume here too - lotta industry people lurking. :)
Sad day! This guy was a hilarious and talented writer. If anyone is looking for a book to pick up this weekend, I'd recommend checking out some of his work, especially if you like hard drinking Jewish nihilist detectives.
how I wish it had a strength setting..
you can try blending the before and after with PIL but it will probably look even more disturbing
strength = 0.5
horrific_image = Image.blend(image_with_normal_skin_and_teeth,
kinda_awful_gfpgan_image, strength)
let me know if you find something better
I haven't used it for search, but I believe Insightface's embeddings can be used for this purpose.
https://insightface.ai/
I still like that setup for using trees in low level languages.
But personally I’ve been working at higher levels of the stack the last few years, where these kinds of decisions seem less important.
And on another level, it seems like coders in general aren’t that interested in vector oriented languages and techniques which makes their study somewhat isolating.
Always surprising to click through a link on HN and discover it is one's own work. For a time I was very interested in lightweight array-based implementations of common data structures and this one seemed particularly handy.
Love & recommend Roboflow. Thanks for releasing this yall!
I am experimenting with building software using the ReAct tool prompting pattern, using Llama derivative models like Manticore13B, Airoborous, etc. I script it all together using Microsoft Guidance with Llama.cpp and AutoGPTQ. Works pretty well for simple tasks and I know the costs are roughly fixed. Obviously their capabilities are far less than OpenAI's products but when you have tens of thousands of conversations to have the costs of ChatGPT become a distraction. Haven't tried finetuning yet.
On the LLM side: the cost / amount of resources that need to be brought to bear for long periods of time
On the Stable Diffusion side: labeling, best practices, file management, quality control
Diffusion systems can’t render a great image given just “a dog” as the prompt. Imagine all the different kinds of dog images the user might be expecting.
A good prompt engineer understands the scope of keywords trained into SD and can translate the artistic vision for a finished image into specific keyword constructions.
Try creating a specific visual idea you have in your mind into a jpeg using Diffusion. You’ll see it’s not easy.
Can the user do that? Sure! Just memorize all the critical artists of the last 400 years and their important works. And learn all the specific terminology that yields great results.
Can a computer do it? Sure! Just fill out dozens of form fields to describe your specific intent.
Has anyone else switched to Caddy and seen similar performance improvements? I've been blindly using Nginx for years but have no love for that configuration file..
It's good for challenges with lots of tabular data with a consistent shape and relatively simple business logic. You can get data in and out via CSV, HTTP, websockets and more, so it's not too hard to connect up with other systems.
I think it's at least worth learning because of the way it makes you think about coding.