网上相关资源
人们正在编写很棒的工具和论文来改进 GPT 的输出。以下是我们看到的一些很棒的资源:
提示库和工具(按字母顺序列出)
- Arthur Shield:一个付费产品,用于检测毒性、幻觉、提示注入等。
- Baserun:一个用于测试、调试和监控 LLM 应用程序的付费产品。
- Chainlit:一个用于创建聊天机器人界面的 Python 库。
- ElatoAI:一个使用 Deno Edge Runtime 和 Supabase 在 Arduino 上的 ESP32 上运行 OpenAI Realtime API Speech 的平台。
- Embedchain:一个用于管理非结构化数据并将其与 LLM 同步的 Python 库。
- FLAML (用于自动化机器学习和调优的快速库):一个用于自动化选择模型、超参数和其他可调选项的 Python 库。
- Guidance:来自微软的一个看起来很方便的 Python 库,它使用 Handlebars 模板来交织生成、提示和逻辑控制。
- Haystack:一个开源 LLM 编排框架,用于在 Python 中构建可自定义的、生产就绪的 LLM 应用程序。
- HoneyHive:一个用于评估、调试和监控 LLM 应用程序的企业平台。
- LangChain:一个流行的 Python/JavaScript 库,用于链接语言模型提示的序列。
- LiteLLM:一个用于以一致格式调用 LLM API 的最小 Python 库。
- LlamaIndex:一个用于使用数据增强 LLM 应用程序的 Python 库。
- LLMOps 数据库:关于公司如何在生产中实际部署 LLM 的数据库。
- LMQL:一种用于 LLM 交互的编程语言,支持类型化提示、控制流、约束和工具。
- OpenAI Evals:一个用于评估语言模型和提示的任务性能的开源库。
- Outlines:一个 Python 库,提供一种特定于领域的语言来简化提示和约束生成。
- Parea AI:一个用于调试、测试和监控 LLM 应用程序的平台。
- Portkey:一个用于 LLM 应用程序的可观察性、模型管理、评估和安全的平台。
- Promptify:一个用于使用语言模型执行 NLP 任务的小型 Python 库。
- PromptPerfect:一个用于测试和改进提示的付费产品。
- Prompttools:用于测试和评估模型、向量数据库和提示的开源 Python 工具。
- Scale Spellbook:一个用于构建、比较和发布语言模型应用程序的付费产品。
- Semantic Kernel:来自微软的一个 Python/C#/Java 库,支持提示模板、函数链接、向量化内存和智能规划。
- Vellum:一个付费的 AI 产品开发平台,用于试验、评估和部署高级 LLM 应用程序。
- Weights & Biases:一个用于跟踪模型训练和提示工程实验的付费产品。
- YiVal:一个开源的 GenAI-Ops 工具,用于使用可自定义的数据集、评估方法和演化策略来调整和评估提示、检索配置和模型参数。
提示指南
- Brex 的提示工程指南:Brex 关于语言模型和提示工程的介绍。
- learnprompting.org:提示工程入门课程。
- Lil'Log 提示工程:一位 OpenAI 研究员对提示工程文献的回顾(截至 2023 年 3 月)。
- OpenAI Cookbook:提高可靠性的技术:一篇关于提示语言模型技术的略有年代(2022 年 9 月)的回顾。
- promptingguide.ai:一个演示了许多技术的提示工程指南。
- Xavi Amatriain 的提示工程 101 入门 和 202 高级提示工程:一个基础但有见地的提示工程入门介绍,以及一个后续的集合,其中包含许多从 CoT 开始的高级方法。
视频课程
- Andrew Ng 的 DeepLearning.AI:一个关于面向开发者的提示工程的短期课程。
- Andrej Karpathy 的 Let's build GPT:深入探讨 GPT 的底层机器学习。
- DAIR.AI 的提示工程:一个关于各种提示工程技术的时长一小时的视频。
- Scrimba 关于 Assistants API 的课程:一个关于 Assistants API 的 30 分钟互动课程。
- LinkedIn 课程:提示工程入门:如何与 AI 对话:关于提示工程的简短视频介绍。
关于高级提示以改进推理的论文
- Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (2022):使用少样本提示让模型逐步思考可以提高它们的推理能力。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%,比 Language Models are 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):可以通过微调将思维链推理嵌入到模型中。对于有答案键的任务,可以通过语言模型生成示例思维链。
- 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%。