原文出处:Related resources 原作者:OpenAI · 许可证:MIT License 中文译本由诸葛AI学院整理,仅供学习参考,版权归原作者与 OpenAI 所有。
来自全网的相关资源
围绕怎么让 GPT 输出得更好,社区里有人写了不少好用的工具,也有人发表了不少论文。下面是 OpenAI 挑出来的一些他们认为不错的:
提示词库与工具(按字母顺序排列)
- Arthur Shield:付费产品,用来检测有害内容(toxicity)、幻觉(hallucination)、提示词注入(prompt injection)这类问题。
- Baserun:付费产品,针对基于大语言模型(LLM)的应用做测试、调试和监控。
- Chainlit:一个 Python 库,用来做聊天机器人界面。
- ElatoAI:一个平台,让你用 Arduino 在 ESP32 开发板上跑 OpenAI Realtime API 的语音服务,底层用的是 Deno Edge Runtime 和 Supabase。
- Embedchain:一个 Python 库,帮你管理和同步非结构化数据,喂给 LLM 用。
- FLAML (A Fast Library for Automated Machine Learning & Tuning):一个 Python 库,自动挑选模型、超参数和其他可调的选项。
- Guidance:微软出的 Python 库,看着挺顺手,用 Handlebars 模板把生成、提示和逻辑控制穿插在一起写。
- Haystack:开源的 LLM 编排框架,用 Python 搭建可定制、能上生产环境的 LLM 应用。
- HoneyHive:面向企业的平台,做 LLM 应用的评估、调试和监控。
- LangChain:很流行的 Python/JavaScript 库,把一串语言模型的提示词链起来用。
- LiteLLM:一个极简的 Python 库,用统一的格式调用各家 LLM 的 API。
- LlamaIndex:一个 Python 库,给 LLM 应用接入外部数据。
- LLMOps Database:一个记录真实公司如何在生产环境部署 LLM 的数据库。
- LMQL:一门专门和 LLM 交互的编程语言,支持带类型的提示、控制流、约束和工具调用。
- OpenAI Evals:开源库,评估语言模型和提示词在具体任务上的表现。
- Outlines:一个 Python 库,提供一门小语言,让提示词更好写,也能约束模型的输出。
- Parea AI:一个平台,做 LLM 应用的调试、测试和监控。
- Portkey:一个平台,管 LLM 应用的可观测性、模型管理、评估和安全。
- Promptify:一个小型 Python 库,用语言模型来做 NLP(自然语言处理)任务。
- PromptPerfect:付费产品,测试并改进你的提示词。
- Prompttools:开源 Python 工具,测试和评估模型、向量数据库与提示词。
- Scale Spellbook:付费产品,帮你构建、对比并上线语言模型应用。
- Semantic Kernel:微软的库,支持 Python/C#/Java,能做提示模板、函数链、向量记忆和智能规划。
- Vellum:付费的 AI 产品开发平台,试验、评估并部署较复杂的 LLM 应用。
- Weights & Biases:付费产品,跟踪模型训练和提示工程(prompt engineering)实验。
- YiVal:开源的 GenAI-Ops 工具,用自定义的数据集、评估方法和进化策略,来调优和评估提示词、检索配置与模型参数。
提示工程指南
- Brex's Prompt Engineering Guide:金融公司 Brex 写的语言模型与提示工程入门。
- learnprompting.org:提示工程的入门课程网站。
- Lil'Log Prompt Engineering:OpenAI 一位研究员对提示工程文献的综述,写到 2023 年 3 月为止。
- OpenAI Cookbook: Techniques to improve reliability:改进语言模型提示技巧的综述,内容旧一些,停在 2022 年 9 月。
- promptingguide.ai:提示工程指南,演示了很多种技巧。
- Xavi Amatriain's Prompt Engineering 101 Introduction to Prompt Engineering 与 202 Advanced Prompt Engineering:入门篇讲得基础但很有个人见解,进阶篇收了很多高级方法,从思维链(chain of thought)讲起。
视频课程
- Andrew Ng's DeepLearning.AI:吴恩达给开发者开的提示工程短课。
- Andrej Karpathy's Let's build GPT:详细拆解 GPT 背后的机器学习原理。
- Prompt Engineering by DAIR.AI:一小时的视频,讲了提示工程的各种技巧。
- Scrimba course about Assistants API:30 分钟的交互式课程,讲 Assistants API。
- LinkedIn course: Introduction to Prompt Engineering: How to talk to the AIs:LinkedIn 上的短视频入门课,主题是"怎么和 AI 说话"。
相关论文:用进阶提示提高推理能力
- Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (2022):用少样本(few-shot)提示让模型"一步一步想",推理能力变强。PaLM 在数学应用题基准 GSM8K 上的成绩从 18% 涨到 57%。
- Self-Consistency Improves Chain of Thought Reasoning in Language Models (2022):让模型出多个答案再"投票"选多数,准确率更高。对 40 个输出投票,PaLM 的数学应用题成绩从 57% 再涨到 74%,
code-davinci-002从 60% 涨到 78%。 - Tree of Thoughts: Deliberate Problem Solving with Large Language Models (2023):在一步步推理组成的"思维树"上搜索,效果比思维链投票还要好,拉高了
GPT-4在创意写作和填字游戏上的成绩。 - Language Models are Zero-Shot Reasoners (2022):只要跟听指令的模型说一句"一步一步想",推理就变好。
text-davinci-002在 GSM8K 数学应用题上的成绩从 13% 涨到 41%。 - Large Language Models Are Human-Level Prompt Engineers (2023):自动搜索候选提示词,搜出来的提示把 GSM8K 数学应用题成绩推到 43%,比 Zero-Shot Reasoners 那篇里人工写的提示还高 2 个百分点。
- Reprompting: Automated Chain-of-Thought Prompt Inference Through Gibbs Sampling (2023):自动搜索思维链提示词,ChatGPT 在几个基准上的成绩提高了 0 到 20 个百分点。
- Faithful Reasoning Using Large Language Models (2022):一套系统能把推理做得更好,它有四样东西:用"选答案加推下一步"的提示生成思维链,用一个停止模型决定何时结束循环,用价值函数在多条推理路径里搜索,再给句子打标签来减少幻觉。
- STaR: Bootstrapping Reasoning With Reasoning (2022):思维链推理可以通过微调(fine-tuning)直接教进模型里。只要任务有标准答案,思维链示例可以让语言模型自己生成。
- ReAct: Synergizing Reasoning and Acting in Language Models (2023):任务要用到工具或环境时,按规定步骤交替进行效果更好:推理(Reasoning,想清楚该做什么)一步、行动(Acting,从工具或环境拿信息)一步,比单用思维链强。
- Reflexion: an autonomous agent with dynamic memory and self-reflection (2023):让智能体带着过往失败的记忆重做任务,后面的表现会更好。
- Demonstrate-Search-Predict: Composing retrieval and language models for knowledge-intensive NLP (2023):"先检索再阅读"这类知识增强模型,可以用多跳检索链把效果做得更好。
- Improving Factuality and Reasoning in Language Models through Multiagent Debate (2023):让几个 ChatGPT 智能体互相对辩几轮,各种基准的成绩都变好了,数学应用题从 77% 涨到 85%。