mirror of
https://github.com/dair-ai/Prompt-Engineering-Guide
synced 2024-11-18 03:25:39 +00:00
122 lines
9.0 KiB
Markdown
122 lines
9.0 KiB
Markdown
# Prompt Engineering Guide
|
|
|
|
This guide contains a non-exhaustive set of learning guides and tools about prompt engineering. It includes several materials, guides, examples, papers, and much more. The repo is intended to be used as a research and educational reference for practitioners and developers.
|
|
|
|
**📣 Full lecture + notebook + exercises on the ~30th of January** (announcement will happen on [Twitter](https://twitter.com/dair_ai))
|
|
|
|
## Table of Contents
|
|
|
|
- [Papers](#papers)
|
|
- [Tools & Libraries](#tools--libraries)
|
|
- [Datasets](#datasets)
|
|
- [Blog, Guides, Tutorials and Other Readings](#blog-guides-tutorials-and-other-readings)
|
|
|
|
## Papers
|
|
|
|
- Surveys / Overviews:
|
|
- [Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing](https://arxiv.org/abs/2107.13586)
|
|
- [A Taxonomy of Prompt Modifiers for Text-To-Image Generation](https://arxiv.org/abs/2204.13988)
|
|
- [Emergent Abilities of Large Language Models](https://arxiv.org/abs/2206.07682)
|
|
- Applications:
|
|
- [Legal Prompt Engineering for Multilingual Legal Judgement Prediction](https://arxiv.org/abs/2212.02199)
|
|
- [Investigating Prompt Engineering in Diffusion Models](https://arxiv.org/abs/2211.15462)
|
|
- [Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language](https://arxiv.org/abs/2210.15157)
|
|
- [Piloting Copilot and Codex: Hot Temperature, Cold Prompts, or Black Magic?](https://arxiv.org/abs/2210.14699)
|
|
- Approaches/Techniques:
|
|
- [Ask Me Anything: A simple strategy for prompting language models](https://paperswithcode.com/paper/ask-me-anything-a-simple-strategy-for)
|
|
- [Fantastically Ordered Prompts and Where to Find Them: Overcoming Few-Shot Prompt Order Sensitivity](https://arxiv.org/abs/2104.08786)
|
|
- [AutoPrompt: Eliciting Knowledge from Language Models with Automatically Generated Prompts](https://arxiv.org/abs/2010.15980)
|
|
- [Large Language Models Are Human-Level Prompt Engineers](https://sites.google.com/view/automatic-prompt-engineer?pli=1)
|
|
- [BERTese: Learning to Speak to BERT](https://aclanthology.org/2021.eacl-main.316/)
|
|
- [Large Language Models are Zero-Shot Reasoners](https://arxiv.org/abs/2205.11916)
|
|
- [Structured Prompting: Scaling In-Context Learning to 1,000 Examples](https://arxiv.org/abs/2212.06713)
|
|
- [Chain of Thought Prompting Elicits Reasoning in Large Language Models](https://arxiv.org/abs/2201.11903)
|
|
- [Reframing Instructional Prompts to GPTk's Language](https://arxiv.org/abs/2109.07830)
|
|
- [Promptagator: Few-shot Dense Retrieval From 8 Examples](https://arxiv.org/abs/2209.11755)
|
|
- [Making Pre-trained Language Models Better Few-shot Learners](https://aclanthology.org/2021.acl-long.295/)
|
|
- [Prompt Programming for Large Language Models: Beyond the Few-Shot Paradigm](https://www.arxiv-vanity.com/papers/2102.07350/)
|
|
- [A Taxonomy of Prompt Modifiers for Text-To-Image Generation](https://arxiv.org/abs/2204.13988)
|
|
- [PromptChainer: Chaining Large Language Model Prompts through Visual Programming](https://arxiv.org/abs/2203.06566)
|
|
- [How Can We Know What Language Models Know?](https://direct.mit.edu/tacl/article/doi/10.1162/tacl_a_00324/96460/How-Can-We-Know-What-Language-Models-Know)
|
|
- Collections:
|
|
- [Papers with Code](https://paperswithcode.com/task/prompt-engineering)
|
|
- [Prompt Papers](https://github.com/thunlp/PromptPapers#papers)
|
|
|
|
|
|
## Tools & Libraries
|
|
|
|
- [OpenAI Playground](https://beta.openai.com/playground)
|
|
- [GPTTools](https://gpttools.com/comparisontool)
|
|
- [EveryPrompt](https://www.everyprompt.com/)
|
|
- [DUST](https://dust.tt/)
|
|
- [Prompts.ai](https://github.com/sevazhidkov/prompts-ai)
|
|
- [Lexica](https://lexica.art/)
|
|
- [Scale SpellBook](https://scale.com/spellbook)
|
|
- [Interactive Composition Explorer](https://github.com/oughtinc/ice)
|
|
- [Promptable](https://promptable.ai/)
|
|
- [GPT Index](https://github.com/jerryjliu/gpt_index)
|
|
- [Prompt Base](https://promptbase.com/)
|
|
- [Playground](https://playgroundai.com/)
|
|
- [OpenPrompt](https://github.com/thunlp/OpenPrompt)
|
|
- [Visual Prompt Builder](https://tools.saxifrage.xyz/prompt)
|
|
- [Prompt Generator for OpenAI's DALL-E 2](http://dalle2-prompt-generator.s3-website-us-west-2.amazonaws.com/)
|
|
- [AI Test Kitchen](https://aitestkitchen.withgoogle.com/)
|
|
- [betterprompt](https://github.com/krrishdholakia/betterprompt)
|
|
- [Prompt Engine](https://github.com/microsoft/prompt-engine)
|
|
- [PromptSource](https://github.com/bigscience-workshop/promptsource)
|
|
- [sharegpt](https://sharegpt.com/)
|
|
- [DreamStudio](https://beta.dreamstudio.ai/)
|
|
|
|
## Datasets
|
|
- [PartiPrompts](https://parti.research.google/)
|
|
- [Real Toxicity Prompts](https://allenai.org/data/real-toxicity-prompts)
|
|
- [DiffusionDB](https://github.com/poloclub/diffusiondb)
|
|
- [P3 - Public Pool of Prompts](https://huggingface.co/datasets/bigscience/P3)
|
|
- [WritingPrompts](WritingPrompts)
|
|
- [Midjourney Prompts](https://huggingface.co/datasets/succinctly/midjourney-prompts)
|
|
- [Awesome ChatGPT Prompts](https://huggingface.co/datasets/fka/awesome-chatgpt-prompts)
|
|
- [Stable Diffusion Dataset](https://huggingface.co/datasets/Gustavosta/Stable-Diffusion-Prompts)
|
|
|
|
## Blog, Guides, Tutorials and Other Readings
|
|
- [Pretrain, Prompt, Predict - A New Paradigm for NLP](http://pretrain.nlpedia.ai/)
|
|
- [Prompt Engineering 101 - Introduction and resources](https://www.linkedin.com/pulse/prompt-engineering-101-introduction-resources-amatriain/)
|
|
- [Prompt Engineering by co:here](https://docs.cohere.ai/docs/prompt-engineering)
|
|
- [Prompt Engineering by Microsoft](https://microsoft.github.io/prompt-engineering/)
|
|
- [Best practices for prompt engineering with OpenAI API](https://help.openai.com/en/articles/6654000-best-practices-for-prompt-engineering-with-openai-api)
|
|
- [Start with an Instruction](https://beta.openai.com/docs/quickstart/start-with-an-instruction)
|
|
- [CMU Advanced NLP 2022: Prompting](https://youtube.com/watch?v=5ef83Wljm-M&feature=shares)
|
|
- [Prompt Engineering 101: Autocomplete, Zero-shot, One-shot, and Few-shot prompting](https://youtube.com/watch?v=v2gD8BHOaX4&feature=shares)
|
|
- [Prompt engineering davinci-003 on our own docs for automated support (Part I)](https://www.patterns.app/blog/2022/12/21/finetune-llm-tech-support/)
|
|
- [DALLE Prompt Book](https://dallery.gallery/the-dalle-2-prompt-book/)
|
|
- [DALL·E 2 Prompt Engineering Guide](https://docs.google.com/document/d/11WlzjBT0xRpQhP9tFMtxzd0q6ANIdHPUBkMV-YB043U/edit#)
|
|
- [Prompt injection attacks against GPT-3](https://simonwillison.net/2022/Sep/12/prompt-injection/)
|
|
- [Language Models and Prompt Engineering: Systematic Survey of Prompting Methods in NLP](https://youtube.com/watch?v=OsbUfL8w-mo&feature=shares)
|
|
- [A Complete Introduction to Prompt Engineering for Large Language Models](https://www.mihaileric.com/posts/a-complete-introduction-to-prompt-engineering/)
|
|
- [Learn Prompting](https://learnprompting.org/)
|
|
- [3 Principles for prompt engineering with GPT-3](https://www.linkedin.com/pulse/3-principles-prompt-engineering-gpt-3-ben-whately/)
|
|
- [Extrapolating to Unnatural Language Processing with GPT-3's In-context Learning: The Good, the Bad, and the Mysterious](http://ai.stanford.edu/blog/in-context-learning/)
|
|
- [Prompt Engineering Topic by GitHub](https://github.com/topics/prompt-engineering)
|
|
- [Prompt Engineering Template](https://docs.google.com/spreadsheets/d/1-snKDn38-KypoYCk9XLPg799bHcNFSBAVu2HVvFEAkA/edit#gid=0)
|
|
- [Awesome ChatGPT Prompts](https://github.com/f/awesome-chatgpt-prompts)
|
|
- [Prompt Engineering: From Words to Art](https://www.saxifrage.xyz/post/prompt-engineering)
|
|
- [NLP for Text-to-Image Generators: Prompt Analysis](https://heartbeat.comet.ml/nlp-for-text-to-image-generators-prompt-analysis-part-1-5076a44d8365)
|
|
- [GPT3 and Prompts: A quick primer](https://buildspace.so/notes/intro-to-gpt3-prompts)
|
|
- [Prompt Engineering in GPT-3](https://www.analyticsvidhya.com/blog/2022/05/prompt-engineering-in-gpt-3/)
|
|
- [Talking to machines: prompt engineering & injection](https://artifact-research.com/artificial-intelligence/talking-to-machines-prompt-engineering-injection/)
|
|
- [A beginner-friendly guide to generative language models - LaMBDA guide](https://aitestkitchen.withgoogle.com/how-lamda-works)
|
|
- [Giving GPT-3 a Turing Test](https://lacker.io/ai/2020/07/06/giving-gpt-3-a-turing-test.html)
|
|
- [Prompts as Programming by Gwern](https://www.gwern.net/GPT-3#prompts-as-programming)
|
|
- [AI Content Generation](https://www.jonstokes.com/p/ai-content-generation-part-1-machine)
|
|
- [How to Draw Anything](https://andys.page/posts/how-to-draw/)
|
|
- [How to write good prompts](https://andymatuschak.org/prompts/)
|
|
- [Prompting Methods with Language Models and Their Applications to Weak Supervision](https://snorkel.ai/prompting-methods-with-language-models-nlp/)
|
|
- [How to get images that don't suck](https://www.reddit.com/r/StableDiffusion/comments/x41n87/how_to_get_images_that_dont_suck_a/)
|
|
- [Best 100+ Stable Diffusion Prompts](https://mpost.io/best-100-stable-diffusion-prompts-the-most-beautiful-ai-text-to-image-prompts/)
|
|
- [Notes for Prompt Engineering by sw-yx](https://github.com/sw-yx/ai-notes)
|
|
|
|
# Lecture + Tutorial
|
|
Full tutorial and lecture coming soon!
|
|
|
|
---
|
|
Feel free to open a PR if you think something is missing here. Always welcome feedback and suggestions.
|