4 ms·
This is an interesting article, and a bit of a mish mash of UI conventions, application use ideas for GPT and actual patterns for LLMs. I really do miss Martin
by daviding 3y ago
This is an interesting article, and a bit of a mish mash of UI conventions, application use ideas for GPT and actual patterns for LLMs. I really do miss Martin Fowler's actual take on these things, but using his name as some sort of gestalt brain for Thoughtworks works too.
It still feels like a bit of a Wild West for patterns in this area as yet, with a lot of people trying lots of things and it might be too soon for defining terms. A useful resource is still things like the OpenAI Cookbook, that is a decent collection of a lot of the things in this article but with a more implementation bent.[1]
The area that seems to get a lot of idea duplication currently is in providing either a 'session' or a longer term context for GPT, be it with embeddings or rolling prompts for these apps. The use of vector search and embedded chunks is something that seems to be missing so far from vendors like OpenAI, and you can't help but wonder that they'll move it behind their API eventually with a 'session id' in the end. I think that was mentioned as on their roadmap for this year too. The lack of GPT-4 fine tuning options just seems to push people more to look at the Pinecone, Weaviates etc stores and chaining up their own sequences to achieve some sort of memory.
I've implemented features with GPT-4 and functions and so far it's feeling useful for 'data model' like use (where you're bringing json into the prompt about a domain noun, e.g. 'Tasks') but is pretty hairy when it comes to pure functions - the tuning they've done to get it to pick which function and which parameters to use is still hard going to get right, which means there doesn't feel like a lot of trust that it is going to be usable. It's like there needs to be a set of patterns or categories for 'business apps' that are heavily siloed into just a subset of available functions it can work with, making it more task-specific rather than as a general chat agent we see a lot of. The difference in approach between LangChain's Chain of Thought pattern and just using OpenAI functions is sort of up in the air as well. Like I said, it still all feels like we're in wild west times, at least as an app developer.
[1] https://github.com/openai/openai-cookbook https://github.com/openai/openai-cookbook
- ignoramous 3y ago> A useful resource is still things like the OpenAI Cookbook, that is a decent collection of a lot of the things in this article By far, the best resource I've found is the Prompt Engineering Guide: https://www.promptingguide.ai/ https://www.promptingguide.ai/ > you can't help but wonder that they'll move it behind their API eventually with a 'session id' in the end For in-context learning, I think it is fair to expect 100k to 500k context windows sooner. OpenAI is already at 32k.
- daviding 3y ago> By far, the best resource I've found is the Prompt Engineering Guide: https://www.promptingguide.ai/ https://www.promptingguide.ai/ Agreed, that is a good resource for sure. For tooling I like https://promptmetheus.com/ https://promptmetheus.com/ but any pun name gets bonus points from me. > For in-context learning, I think it is fair to expect 100k to 500k context windows sooner. OpenAI is already at 32k. It has been interesting to see that window increase so quickly. For LLM context the biggest thing is the pay-per-token constraint if you don't run your own, so have to wonder if that is what will be around in the future given how this is trending? Just in terms of idempotent calls, throwing everything in context up every time seems like it makes it likely that OpenAI will encroach on the stores side as well and do sessions?
- mark_l_watson 3y agoIt is interesting to see the context window size increasing. I think the time complexity on window size is quadratic - ouch!
- Der_Einzige 3y agoCan we stop calling it "in-context learning" and call it what it is, zero-shot/one-shot/few-shot prompting instead? Learning implies that the underlying weights of the LLM changed. They didn't.
- ignoramous 3y agoIt may be wrongly used, but for better or for worse, few-shot prompting is synonymous with in-context "learning" (inference?): https://www.promptingguide.ai/techniques/fewshot https://www.promptingguide.ai/techniques/fewshot / https://archive.is/D4cIW https://archive.is/D4cIW