13 ms·
GPT-Prompt-Engineer
- Towaway69 3y agoIs this prompt generation for the purposes of prompt engineering? Is this then a kind of meta engineering? Engineering for the purposes of engineering which then hopefully will generate working code for the computer that generated the prompt and the response to the prompt.
- danielbln 3y agoA bit like code generation, really. Transpile one code to another and have the execution engine run that.
- fluxinflex 3y agoIn sense yes, previously we were engaged in "google engineering, then we went to "stackoverflow engineering" and now its "prompt engineering" - with every step, the magic and mystic increases.
- jwestbury 3y agoIt's turtles^W GPT all the way down, I guess.
- PUSH_AX 3y agoIt would be cool if, given a handful of test cases, you could send those off to the LLM to generate even more test cases. My first thought when looking over this tool was "Why do I have to do all the work?", the ideal scenario is that I give the high level description and the LLM does the hard work to create the best prompt.
- Kichererbsen 3y agoI haven't read the article at all, but what you said just reminded me that I've been using ChatGPT to create Dungeons & Dragons campaigns / adventures / worlds (it's crazy good at that) and one trick i've started doing at the end of a fruitful conversation is to ask it to summarize the discussion so far _in a format to be used as a prompt_. it works more or less.
- drekipus 3y ago> to summarize the discussion so far _in a format to be used as a prompt_. Very nice idea, thanks. i might steal that.
- vivekv 3y agoSo one job that has been 'taken over by ai' before it even started ?
- ljlolel 3y agoIt can also create compressed versions in unicode that expand to approximate the human readable prompt. Pretty wild. https://www.reddit.com/r/ChatGPT/comments/12cvx9l/compression_prompts_in_chatgpt_and_how_to_use_them/ https://www.reddit.com/r/ChatGPT/comments/12cvx9l/compressio...
- Kiro 3y agoHow are they actually ranked?
- arbol 3y agoIt seems like a `ranking_system_prompt` is used to rank the output of other prompts, which is pretty cool! > Your job is to rank the quality of two outputs generated by different prompts. The prompts are used to generate a response for a given task. You will be provided with the task description, the test prompt, and two generations - one for each system prompt. Rank the generations in order of quality. If Generation A is better, respond with 'A'. If Generation B is better, respond with 'B'. Remember, to be considered 'better', a generation must not just be good, it must be noticeably superior to the other. Also, keep in mind that you are a very harsh critic. Only rank a generation as better if it truly impresses you more than the other. Respond with your ranking, and nothing else. Be fair and unbiased in your judgement. Source: https://github.com/mshumer/gpt-prompt-engineer/blob/main/gpt_prompt_engineer.ipynb https://github.com/mshumer/gpt-prompt-engineer/blob/main/gpt...
- axlee 3y agoHow did they rank the ranking prompt?
- archargelod 3y agoThey prey extra hard for this one, so the almighty Machine God blesses the results and they won't bring down whole thing. /s
- mistymountains 3y agoThey don’t. They simply assume the model’s most likely output is meaningfully correlated with true rankings even though it was never trained on this task and certainly has not been trained to output the most likely prompt given a prompt in some meaningful order. It’s hogwash.
- A-Train 3y agoI'm pretty surprised more people dont use logit biases to call openai with. Checking if something is either a or b means that the tokens for those letters must be 100 weight which means they will be chosen no matter what and no other character is allowed.
- hoc 3y agoDoug Adams would've had so much fun these days.
- Deestan 3y agoHis genius laid in not only seeing which technologies were coming, but predicting what perversions business people would twist it into.
- namaria 3y agoCreating a computer to find "the ultimate answer to life, the universe and everything", getting a cryptic answer and then creating an even bigger and more complicated computer to find the question is a pretty good satire of generative ai based chatbots of exponentially increasing model size.
- lcnPylGDnU4H9OF 3y agoEven down to the blind faith that there was an accurate calculation performed, which ultimately justified the planet-computer.
- Deestan 3y agoDon't remember if it made it into the book, but from the radio series my favorite is the scene where they end up in a nightclub filled with dancing mannequins sprayed with sweat in order to convince people it was popular and come in.
- namaria 3y ago> a nightclub filled with dancing mannequins sprayed with sweat That's pretty much how I see every nightclub, to be fair... I loved illegal raves when I was in college. Paying big bucks to listen to loops triggered by some influencer feels like a surreal parody...
- hoc 3y agoWell, I am intrigued by the obvious analogies of Deep Thought and the prompt engineers (and their upcoming tools and their respective complexities) while on the other hand I already see the upcoming war between simple and dumb business interests on both sides that will try to make the fascinating und useful concept (which it is after all) consumable on one side while the other side will be ready to kill it if they don't get paid for it using/refrencing/quoting their pieces of work in its answers or "thinking"/modelling. Probably resulting in a cripled tool if politics won't visibly value educational gain over commercial interest. Pain and joke too often come as closely bundled as within Adams's pointed work.
- mangecoeur 3y agoShould we really call it "engineering" if its a case of "try random things until one of them works without really knowing why"?
- mnky9800n 3y agoThat's called machine learning.
- boyka 3y agoGradient descent type optimization is far from "trying random things until one of them works without really knowing why". You can calculate all partial derivatives and understand the impact.
- deleted 3y ago[deleted]
- varispeed 3y agoSure you can, but you can also throw things in randomly and see what works then build theory around it.
- quickthrower2 3y agoI think it is a freaking miracle it even works. I understand how it works for say 100 parameter linear regression, but that it would work for billions of parameters (billion dimensional space) by nudging the parameters each a little (based on purely it's impact on the loss, assuming everything stays the same), is not obvious to me. It is a kind of magic. Regarding randomness, the initialization of the weights is random, and if they use dropouts that is random too, plus the order in which to process the text might be random.
- rmnclmnt 3y agoWhat’s even crazier is the fact that the underlying numerical math solution was exposed early 1800’s by Gauss!
- asimpleusecase 3y agoA bit like an autoGPT, I did not immediately see any kind of token limits. But I did not look carefully. On a complex problem or one that accesses a lot of data the cost might ramp up.
- msp26 3y agoCurrently working on something similar for myself, this doesn't seem to fit my needs (benchmarking generations too rather than just classification). I only have a crude cosine similarity metric for accuracy for now. Also I'm using function calling rather than the normal completions. I was hoping this would do something more interesting with multiple messages (if using a chat model) rather than just dumping the entire prompt in one message. The assistant lets you do stuff with examples.
- lofaszvanitt 3y ago"Prompt engineering is kind of like alchemy. There's no clear way to predict what will work best. It's all about experimenting until you find the right prompt." lololoollool
- mandmandam 3y agoI'm honestly curious why you find this funny? Many fields of study have this fuzzy property - it's easier to name which fields don't.
- mistymountains 3y agoMay I ask, are you a VC? This is a complete non sequitur.
- mandmandam 3y agoNo I'm not, and no it isn't. It's a response to the notion that the quote above comparing writing prompts to alchemy is so wrong that it's funny in some way. I thought it was a pretty good analogy.
- sgt101 3y agothis is supervised machine learning on top of unsupervised machine learning with some interesting wrinkles in both steps! it reminds me of those aircraft that folks in rural india build from time to time.
- brunoluiz 3y agoIsn’t engineering an exact science while prompt engineering is completely not? Although, even software engineering being an exact science, it is a funny one: most of us don’t get certified as like, let’s say, mechanical engineers do. Would they say we are engineers? So perhaps the “engineer” term got overloaded in recent years?
- groestl 3y agoI am a Software Engineer, I am certified (since in my country, they do so, just as with Mechanical Engineers). Still think it's overloaded though.
- pavel_lishin 3y agoCanada?
- groestl 3y agoAustria
- wil421 3y agoHow does certification work? I’d imagine it would be in a less abstracted language like C or C++. The problem for me is most of my schooling was based on web technologies and 2 classes of Java. I wound hate having to studying for a C based test when the area I work in is all web tech. Same could be said of Java. I learned it in school and haven’t used it in 10 years except for it being the backend on my first front end dev project.
- KnobbleMcKnees 3y agoPeople who have not studied and been given that distinction in engineering going on to call themselves engineers is the reason the term is overloaded. I've always assumed there's a near 100% overlap between people using the term wrongly to describe any programming activity, and people complaining that it has no meaning or is self-aggrandisement
- xmcqdpt2 3y agoI think one should just use GPT to generate the prompts so as to reduce the human input further still, a kind of gpt-gpt-prompt-engineer-engineer.
- Makhini 3y agoI think it's exactly what they do here
- xmcqdpt2 3y agoIs it? I thought it just ranked the (manual) prompts against each other.
- bravura 3y agoIsn’t that what this codebase is doing? I haven’t grokked it 100% yet. Recently I’ve been trying to engineer a prompt that I intend to run 1k times. Noticing GPT4 bug out on several responses, I’ve talked it through the problem more and asked it to rewrite the prompt. So an automated approach to help build better prompts based upon held out gold data is useful to me.
- Deestan 3y agoAnd a GPT to receive the output, write a summary, and insert it directly into a CEO's trash folder.
- fdondi 3y agoDoes it only work with ChatGPT? Seems it would be useful also for local Llamas etc.
- Apfel 3y agoUsage query: It looks like this could get expensive quite quickly. The approach is great, but with GPT-4 especially, could be very difficult. Is it worth using with 3.5 as a first pass then switching prompts to GPT4 once you've got the best prompt?
- l5870uoo9y 3y agoI am not sure this approach is doable since GPT-4 is capable of solving assignments that GPT-3.5 get wrong. Example GPT-3.5 fails to solve the prompt (with the dvdrental sample database schema added [1]): > find customers who didn't rent a movie in the last 12 months but rented a movie in the 12 months before that GPT-4 solves this without a problem [2]. Combining logic like (without additional database schema added): > find all users who lives in Paris using lat/lng and who visited the south of France within the last month GPT-3.5 can't understand this at all, GPT-4 solves it [3]. [1]: https://www.postgresqltutorial.com/postgresql-getting-started/postgresql-sample-database/ https://www.postgresqltutorial.com/postgresql-getting-starte... [2]: https://aihelperbot.com/snippets/cljy8km2h0000my0fgq8kut5w https://aihelperbot.com/snippets/cljy8km2h0000my0fgq8kut5w [3]: https://aihelperbot.com/snippets/cljy8q6gz000al70fvfzxt2hh https://aihelperbot.com/snippets/cljy8q6gz000al70fvfzxt2hh
- magicroot75 3y agoPeople don't understand intelligence
- fatso784 3y agoThis tool doesn’t benchmark based on how a model actually responds to the generated prompts. Instead, it trusts GPT4 to rank prompts simply in terms of how well it imagines they will perform head-to-head. Thus, there’s no way to tell if the chosen ‘best prompt’ actually is the best, because there’s no ground truth against actual responses. Why is this so popular, then (more popular than promptfoo, which I think is a much better tool in the same vein)? AI devs seem enamored with the idea of LLMs evaluating LLMs —everything is ‘auto-‘ this and that. They’re in for a rude awakening. The truth is, there are no shortcuts to evaluating performance in real world applications.
- donkeyboy 3y agoThere is a paper on arxiv saying that GPT4 correlation with human evaluators on a variety of tasks with strongly positive. I am also uncomfortable with it, but using GPT4 as a grader is not as bad as you think.
- fatso784 3y agoYou’re missing the point here. It’s not even getting the LLM’s opinion on evaluating the responses to the prompts (which itself is fraught for some tasks, and benchmarks are known to be limited —even OpenAI admits this, it’s why they made evals). It’s one level abstracted from that. It’s evaluating what the LLM thinks of how well the prompt will do, in purely hypothetical terms. That’s hogwash —different LLMs perform very differently even for the same prompts. Try any tool that lets you compare model responses side-by-side. Unless I see actual use cases, this is yet another iteration of overtrusting AI. Here is what HN was talking about, nearly three months ago -the exact same type of ‘auto-prompt-gen’ tool: https://news.ycombinator.com/item?id=35660751 https://news.ycombinator.com/item?id=35660751
- duskwuff 3y ago> Here is what HN was talking about, nearly three months ago -the exact same type of ‘auto-prompt-gen’ tool. I was reminded of the same thing. What a lot of it boils down to is that LLMs have no innate ability to self-reflect. They can pretend to do it, but no more effectively than an untrained human would.
- hamasho 3y agoOff topic but Jupyter cells on GitHub can't display horizontally long content and it frustrates me a lot. This small piece of code for the browser console helps me see more content, but it only works in large displays. $("[data-type='ipynb']").style.width = '100%'
- rhdunn 3y agoTry editing the pre style so it has `white-space: pre-wrap`. That works for me. -- This uses `pre` whitespace formatting but wraps to the next line if it is too long, unlike the default `pre` element behaviour.
- m3kw9 3y agoYou need to learn how to use this to generate a good prompt but why not just learn how to generate good prompts? This code is basically asking for something, with examples. And ask a few real questions to test it
- gaolei8888 3y agoThis is a cool tool
- hacksoi 3y agoAre we really going down this path of prompt-prompt-engineering?
- namuol 3y agoThis could work really well if it replaced GPT-X-judged performance ranking with human-in-the-loop ranking of prompts, but that’s not as exciting, I guess.
- __loam 3y agoI think the human in the loop evaluation of prompts is a red herring since the LLMs were trained with HFRL, which optimized them to be convincing. Humans aren't reliable for evaluating these things because it was literally trained to make us think it's doing well.
- namuol 3y agoI can’t see how we’d expect the same model to be any better…
- jstarfish 3y agoUh...am I missing something, or is this whole thing setting the user up for humiliating failure by doing its testing the same way that bit that lawyer in the ass? > Your job is to rank the quality of two outputs generated by different prompts. The prompts are used to generate a response for a given task. > You will be provided with the task description, the test prompt, and two generations - one for each system prompt. > Rank the generations in order of quality. If Generation A is better, respond with 'A'. If Generation B is better, respond with 'B'. > Remember, to be considered 'better', a generation must not just be good, it must be noticeably superior to the other. > Also, keep in mind that you are a very harsh critic. Only rank a generation as better if it truly impresses you more than the other. > Respond with your ranking, and nothing else. Be fair and unbiased in your judgement. So what factors make the "quality" of one prompt "better" than another? How "impressive" it is to an LLM? What even impresses an LLM? I thought as an AI language model, it lacks human emotional reactions or whatever. Quality is subjective. Even accuracy is subjective. What needs testing is alignment-- with your interests. The thing is hardcoded to rate based on what aligns with model hosts' interests, not yours. Only the "classification version" looks capable of making any kind of assertion: > 'prompt': 'I had a great day!', 'output': 'true' [sentiment analysis I assume?] The rest of the test prompts aren't even complete sentences, they're half-thoughts you'd expect to hear Peter Gregory mutter to himself: > 'prompt': 'Launching a new line of eco-friendly clothing' [ok, and?] The one for 'Why a vegan diet is beneficial for your health' makes some sense at least, but it's really ambiguous. I'm just some idiot, but if I were creating this, I'd expect the response to ask for a number of expected keywords or something to measure how close each model comes to what the user actually wants. Like, for me, 'what are operating systems' "must" mention all keywords Linux, Windows, and iOS, and "should" mention any of Unix, Symbian, PalmOS, etc. All tests should tank the score if it detects fourth-wall-breaking "As an AI language model/I don't feel comfortable" crap anywhere in the response. National Geographic got outed on that one the other day.
- shivams 3y agoBTW, GPT-Engineer is openly collecting all of your data: user prompts and other metadata. And they were even defending it until they received some strong responses from the community: https://github.com/AntonOsika/gpt-engineer/issues/415 https://github.com/AntonOsika/gpt-engineer/issues/415 They now explicitly ask for consent regarding user data, but can we really trust their motives?