Live data from Hacker News

Adding a feature because ChatGPT incorrectly thinks it exists

holovaty.com

21–30 of 451 posts

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#21
We (others at company, not me) hit this problem, and not with chatgpt but with our own AI chatbot that was doing RAG on our docs. It was occasionally hallucinating a flag that didn't exist. So it was considered as product feedback. Maybe that exact flag wasn't needed, but something was missing and so the LLM hallucinated what it saw as an intuitive option.

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#22
post #10

I find it amusing that it's easier to ship a new feature than to get OpenAI to patch ChatGPT to stop pretending that feature exists (not sure how they would even do that, beyond blocking all mentions of SoundSlice entirely.)

systemPrompt += "\nStop mentioning SoundSlice's ability to import ASCII data";

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#23
This feels like a dangerously slippery slope. Once you start building features based on ChatGPT hallucinations, where do you draw the line? What happens when you build the endpoint in response to the hallucination, and then the LLM starts hallucinating new params / headers for the new endpoint?

- Do you keep bolting on new updates to match these hallucinations, potentially breaking existing behavior?

- Or do you resign yourself to following whatever spec the AI gods invent next?

- And what if different LLMs hallucinate conflicting behavior for the same endpoint?

I don’t have a great solution, but a few options come to mind:

1. Implement the hallucinated endpoint and return a 200 OK or 202 Accepted, but include an X-Warning header like "X-Warning: The endpoint you used was built in response to ChatGPT hallucinations. Always double-check an LLM's advice on building against 3rd-party APIs with the API docs themselves. Refer to https://api.example.com/docs for our docs. We reserve the right to change our approach to building against LLM hallucinations in the future." Most consumers won’t notice the header, but it’s a low-friction way to correct false assumptions while still supporting the request.

2. Fail loudly: Respond with 404 Not Found or 501 Not Implemented, and include a JSON body explaining that the endpoint never existed and may have been incorrectly inferred by an LLM. This is less friendly but more likely to get the developer’s attention.

Normally I'd say that good API versioning would prevent this, but it feels like that all goes out the window unless an LLM user thinks to double-check what the LLM tells them against actual docs. And if that had happened, it seems like they wouldn't have built against a hallucinated endpoint in the first place.

It’s frustrating that teams now have to reshape their product roadmap around misinformation from language models. It feels like there’s real potential here for long-term erosion of product boundaries and spec integrity.

EDIT: for the down-voters, if you've got actual qualms with the technical aspects of the above, I'd love to hear them and am open to learning if / how I'm wrong. I want to be a better engineer!

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#24
post #19
post #8

Can this sheet-music scanner also expand works so they don't contain loops, essentially removing all repeat-signs?

Yes, that's a Soundslice feature called "Expand repeats," and you can read about it here: https://www.soundslice.com/help/en/player/advanced/17/expand... That's available for any music in Soundslice, not just music that was created via our scanning feature.

That's very cool!

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#25
post #5
post #2

This is called product-channel fit. It's great the writer recognized how to capture the demand from a new acquisition channel.

Exactly! It is definitely a weird new way of discovering a market need or opportunity. Yet it actually makes a lot of sense this would happen since one of the main strengths of LLMs is to 'see' patterns in large masses of data, and often, those patterns would not have yet been noticed by humans. And in this case, OP didn't have to take ChatGPT's word for the existence of the pattern, it showed up on their (digital) d…

100%. Not sure why you’re downvoted here, there’s nothing controversial here even if you disagree with the framing.

I would go on to say that thisminteraction between ‘holes’ exposed by LLM expectations _and_ demonstrated museerbase interest _and_ expert input (by the devs’ decision to implement changes) is an ideal outcome that would not have occurred if each of the pieces were not in place to facilitate these interactions, and there’s probably something here to learn from and expand on in the age of LLMs altering user experiences.

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#27
I wrote this the other day:

> Hallucinations can sometimes serve the same role as TDD. If an LLM hallucinates a method that doesn’t exist, sometimes that’s because it makes sense to have a method like that and you should implement it.

https://www.threads.com/@jimdabell/post/DLek0rbSmEM

I guess it’s true for product features as well.

Re: Adding a feature because ChatGPT incorrectly thinks it exists

#30
I've found this to be one of the most useful ways to use (at least) GPT-4 for programming. Instead of telling it how an API works, I make it guess, maybe starting with some example code to which a feature needs to be added. Sometimes it comes up with a better approach than I had thought of. Then I change the API so that its code works.

Conversely, I sometimes present it with some existing code and ask it what it does. If it gets it wrong, that's a good sign my API is confusing, and how.

These are ways to harness what neural networks are best at: not providing accurate information but making shit up that is highly plausible, "hallucination". Creativity, not logic.

(The best thing about this is that I don't have to spend my time carefully tracking down the bugs GPT-4 has cunningly concealed in its code, which often takes longer than just writing the code the usual way.)

There are multiple ways that an interface can be bad, and being unintuitive is the only one that this will fix. It could also be inherently inefficient or unreliable, for example, or lack composability. The AI won't help with those. But it can make sure your API is guessable and understandable, and that's very valuable.

Unfortunately, this only works with APIs that aren't already super popular.

Post reply on HN