Skip to main content

Posts

Showing posts with the label generative ai

Vector Stores in the OpenAI Responses API: An Interview with GPT5

I’d just finished a morning round of tinkering with the ham radio Extra Class tutor when the question hit me: how do I actually get the entire exam question pool into GPT without burning through tokens every time? With GPT Projects, I can just drop in a file and it remembers. But on the API side, things always felt a little more ephemeral — every call a blank slate. So I sat down with GPT-5 to dig into whether there’s a smarter, more cost-effective way. What followed was one of those back-and-forths where the clouds part: GPT Projects’ quiet little “remembered files” have a direct analogue in the API world — vector stores — and they might just be the key to making this whole tutor run leaner and meaner. Me: In GPT projects, I can upload files that the project remembers. Is there a way to do the same thing with the API? GPT-5: Great question. With the raw chat/completions endpoint, no — it’s stateless. You’d have to re-inject your files each time. But the newer OpenAI  Respo...

Project TouCans: First Teletype Over 2 Meters With KO6BTY’s CQ Decode

 We pushed the teletype prototype for Project TouCans further today! KO6BTY transmitted a CQ call on 2 meters, and I managed to decode it—at least semi-successfully—through audio from my K6 UVK5(8). It’s not perfect yet, but it’s another good sign that Project TouCans’ RTTY experiment is working. For those that don't remember, or weren't follwing along, I started workign on the possibility of teletype using Project TouCans back in May . I didn't have the time to add a frequency change relay and possibly a different internal keyer to TouCan's Rockmite, so I settled on converting the microPython code intended for TouCans into JavaScript that could be run on the blog using GPT. It worked. I knew this right away becasue DroidRTTY decoded the audio output of the blog page app. Meanwhile, CW on 2 meters has become kinda popular lately thanks to  KI7QCF . My mind put the two topics together today, and voila! Here's a video that explains it all. The semi-successful deco...

Why the TouCans CW AI Isn't Decoding Real CW Yet

 Yesterday I posted about ChatGPT5 writing a TensorFlow CW decoder. It's actually decoding clean CW from its training data, but when I feed it audio recorded from an actual HF receiver, nope. I asked ChatGPT to write me a script to inspect the recorded audio and found out why this morning. The first thing I should point out is that this particular model is learning Morse code the wrong way. It is defineitly comparing dots and dashes. It's based on a vision neural net and so... The second thing I should point out is that it's learning Morse code faster than I did, so, you know, that's pretty impressive. OK. Here's why the AI isn't understanding RF-borne CW yet. Here's a spectrogram that corresponds to its self created training data. This particular one is from the video I posted about yesterday. The video is included again below so you can listen to the code as well. This is fairly impressive in that you can in fact actually read out the dits and dahs. Now, ...

Using AIs to Build AIs ChatGPT5 -> Morse Code AI

 This week's AI project is to create an AI Morse code decoder. I've been working with the new ChatGPT 5 model since late last week. I've asked a few different models if they could understand Morse code. ChatGPT 5 couldn't. Gemini couldn't. That's when it occurred to me that this was probably the perfect time to learn how to use TensorFlow to make an AI. So, I changed my question. I asked ChatGPT 5, "If I wanted to setup a model that learned Morse code using Google's Tensor engines, could you describe the entire process and output the code for me?" To which it promptly, (what an awesome pun!), replied, "Heck yes—that’s a super fun project. Here’s a complete, practical path to a TPU-accelerated Morse code recognizer using TensorFlow + CTC (Connectionist Temporal Classification). It generates synthetic Morse audio (with realistic timing/noise/tempo wobble), trains a small CRNN on log-mel spectrograms, and decodes with greedy CTC. You can run it ...

Learning Python Parallel with GenAI

 I've been looking for an excuse to try parallel processing with Python for a few months and yesterday, the FBI provided one. They released a collection of records related to the assassination of Reverend Dr. Martin Luthor King Jr. It's easy enough to get a count of the pdf files released from the announcement page . Information about the files released to the National Archives I was able to quickly read that there were 6,301 files. A brief internet search indicated that the files have not been released in any kind of compressed container, like a zip file yet. I also tested that the search box only searches the pdf file names, not their contents. The immediate next question was how many bytes of disc space do all the pdfs consume? I asked Chat GPT o4-mini-high to write a Python script to determine the size of the all the files combined. The script was unable to determine the size of each file by looking at the HEAD of the URL for each file, so it wound up having to use GET req...