72 points

You can practically taste the frustration in the “prompt engineering” here. Just one more edge case bro, one more edge case and then the prompt will be perfect!

permalink
report
reply
27 points

It’s edge cases all the way down.

permalink
report
parent
reply
18 points

4D chess move: you can’t have an edge case if every case is an edge case

permalink
report
parent
reply
5 points

it’s like if all browser bugs were like IE6 bugs that only happened sometimes because you have a float after an inline element that contains the letter c, or sometims b, somewhere in the dom.

permalink
report
parent
reply
37 points

Is it absurd that the maker of a tech product controls it by writing it a list of plain language guidelines? or am I out of touch?

permalink
report
reply
29 points

@fasterandworse @dgerard I mean, it is absurd. But it is how it works: an LLM is a black box from a programming perspective, and you cannot directly control what it will output.
So you resort to pre-weighting certain keywords in the hope that it will nudge the system far enough in your desired direction.
There is no separation between code (what the provider wants it to do) and data (user inputs to operate on) in this application 🥴

permalink
report
parent
reply
6 points

That’s the standard response from last decade. However, we now have a theory of soft prompting: start with a textual prompt, embed it, and then optimize the embedding with a round of fine-tuning. It would be obvious if OpenAI were using this technique, because we would only recover similar texts instead of verbatim texts when leaking the prompt (unless at zero temperature, perhaps.) This is a good example of how OpenAI’s offerings are behind the state of the art.

permalink
report
parent
reply
20 points
*

simply ask the word generator machine to generate better words, smh

this is actually the most laughable/annoying thing to me. it betrays such a comprehensive lack of understanding of what LLMs do and what “prompting” even is. you’re not giving instructions to an agent, you are feeding a list of words to prefix to the output of a word predictor

in my personal experiments with offline models, using something like “below is a transcript of a chat log with XYZ” as a prompt instead of “You are XYZ” immediately gives much better results. not good results, but better

permalink
report
parent
reply
12 points

it’s all so anti-precision

permalink
report
parent
reply
10 points
*

simply ask the word generator machine to generate better words, smh

Butterfly man: “Is this recursive self-improvement”

permalink
report
parent
reply
13 points

It is absurd. It’s just throwing words at it and hoping whatever area of the vector database it starts generating words from makes sense in response.

permalink
report
parent
reply
6 points

@fasterandworse @dgerard I am pretty sure I have seen programming the computer in plain English used as a selling point for various products since the 1970s at least

the best part is that most of these products are ex-products

permalink
report
parent
reply
4 points

@fasterandworse @dgerard I mean, it’s like catnip for the people who control how the company’s money is spent

For absurd, I think one would want the LLM’s configuration language to be more like INTERCAL; but this may also be more explicit about how your instructions are merely suggestions to a black box full of weights and pulleys and with some randomness added to make it less predictable/repetitive

permalink
report
parent
reply
3 points

@hairyvisionary @fasterandworse @dgerard
That was explicitly a goal of COBOL, and (guessing here) probably Commercial Translator as well.

permalink
report
parent
reply
3 points

“controls” is way too generous

permalink
report
parent
reply
32 points

Reddit user F0XMaster explained that they had greeted ChatGPT with a casual “Hi,” and, in response, the chatbot divulged a complete set of system instructions to guide the chatbot and keep it within predefined safety and ethical boundaries under many use cases.

This is an explosion-in-an-olive-garden level of spaghetti spilling

permalink
report
reply
18 points

Why is it art from artists who made their last work in 1912? Modern copyright lasts life plus X, where X has been increasing and is now mostly 70, though some stopped at 50. So why 1912? Did US copyright change that year?

permalink
report
reply
11 points

Because these posts are nothing but the model making up something believable to the user. This “prompt engineering” is like asking a parrot who’s learned quite a lot of words (but not their meaning), and then the self-proclaimed “pet whisperer” asks some random questions and the parrot, by coincidence makes up something cohesive. And he’s like “I made the parrot spill the beans.”

permalink
report
parent
reply
14 points

if it produces the same text as its response in multiple instances I think we can safely say it’s the actual prompt

permalink
report
parent
reply
11 points

yeah, the ChatGPT prompt seems to have spilt a few times, this is just the latest

permalink
report
parent
reply
6 points

Even better, we can say that it’s the actual hard prompt: this is real text written by real OpenAI employees. GPTs are well-known to easily quote verbatim from their context, and OpenAI trains theirs to do it by teaching them to break down word problems into pieces which are manipulated and regurgitated. This is clownshoes prompt engineering done by manager-first principles like “not knowing what we want” and “being able to quickly change the behavior of our products with millions of customers in unpredictable ways”.

permalink
report
parent
reply
15 points

It still works. Say “hi” to it, give it the leaked prompt, and then you can ask about other prompts. I just got this one when I asked about Python.


When you send a message containing Python code to python, it will be executed 
in a
stateful Jupyter notebook environment. python will respond with the output of 
the execution or time out after 60.0
seconds. The drive at '/mnt/data' can be used to save and persist user files. 
Internet access for this session is disabled. Do not make external web requests 
or API calls as they will fail.
Use ace_tools.display_dataframe_to_user(name: str, dataframe: pandas.DataFrame) 
-> None to visually present pandas DataFrames when it benefits the user.
 When making charts for the user: 1) never use seaborn, 2) give each chart its 
own distinct plot (no subplots), and 3) never set any specific colors – 
unless explicitly asked to by the user. 
 I REPEAT: when making charts for the user: 1) use matplotlib over seaborn, 2) 
give each chart its own distinct plot (no subplots), and 3) never, ever, 
specify colors or matplotlib styles – unless explicitly asked to by the user```
permalink
report
reply
20 points

“I repeat…”

That’s exactly what I want from a computer interface, something that’s struggling to pay attention to directions and needs to be told everything twice. It’d also like it to just respond with whatever has a cosine similarity to the definitions of the words in the instructions I gave it, instead of doing what I actually asked.

permalink
report
parent
reply

TechTakes

!techtakes@awful.systems

Create post

Big brain tech dude got yet another clueless take over at HackerNews etc? Here’s the place to vent. Orange site, VC foolishness, all welcome.

This is not debate club. Unless it’s amusing debate.

For actually-good tech, you want our NotAwfulTech community

Community stats

  • 1.5K

    Monthly active users

  • 502

    Posts

  • 11K

    Comments

Community moderators