Dynamic few-shot examples with LangSmith datasets

使用 LangSmith 数据集的动态少样本示例

通过 LangSmith 中的动态少样本示例,您只需单击一下即可在数据集中索引示例,并根据用户输入动态选择最相关的少样本示例。 这使您可以快速迭代并提高 LLM 应用的性能。

3 分钟阅读

今天,我们发布了作为 LangSmith 一部分的动态少样本示例选择器。 少样本提示是用于提高应用程序性能的常用技术。 动态选择少样本提示的示例可以进一步改进性能。 为此,您需要能够管理数据集,并拥有索引和搜索所述数据集的基础设施。

LangSmith 已经可以轻松实现 数据集管理。 现在,借助这项新功能,您只需单击一个按钮即可在数据集中索引示例。 这使您可以根据用户输入动态选择最相关的少样本示例,从而更有效地改进和优化 LLM 应用。

优化模型性能的挑战

少样本提示包括在模型提示中包含示例模型输入和期望的输出,这可以极大地提高模型在各种任务上的性能。 通常,开发人员在提示中使用 3-5 个少样本示例,以避免上下文窗口因琐碎信息而过载。

但是,随着应用程序复杂性的增长,您可能需要数百甚至数千个示例来涵盖不同的最终用户需求。 在每个请求中包含大量示例数据集可能太大而无法添加到上下文窗口。 即使它适合,也会增加 token 成本和延迟。

当处理如此多的示例时,微调通常是下一个选择。 但是,虽然微调功能强大,如果做得正确可以产生良好的结果,但它也有一些缺点。 微调 (a) 执行起来相对复杂,(b) 难以使用新示例进行更新,(c) 需要专门的基础设施 (GPU) 和专业知识 (MLE),以及 (d) 缺乏个性化(即,不能轻易地为用户定制示例)。

因此,微调可能不太适合个性化应用程序和快速迭代。 这就是动态少样本提示可以派上用场的地方。

LangSmith 中的动态少样本示例

动态少样本提示可以帮助您快速迭代并提高 LLM 应用程序的性能。 使用此技术,您仍然使用一组 3-5 个示例,但根据用户输入动态选择要使用的示例。 这些示例涵盖了所有选项,这可以优于 3-5 个示例的静态数据集。“动态”和“静态”少样本提示之间的区别在于,“动态”提示根据用户输入选择要包含在提示中的示例,而“静态”提示无论用户输入如何都使用相同的示例。

我们将动态少样本提示集成到 LangSmith 中,以简化数据集管理并增强您的 LLM 应用程序性能。 只需单击一下,您就可以索引数据集并调用端点,使用新输入来获取与新输入最相似的示例列表。

与微调相比,动态少样本提示 (a) 在技术上更容易实现,(b) 更容易保持最新,并且 (c) 需要最少的专门基础设施。 您可以根据用户输入检索相关示例,从而轻松快速迭代应用程序,您还可以进行调整和个性化设置。

我们在 LangSmith 中添加的新按钮,允许您将数据集索引为少样本数据集

通过动态少样本提示,您可以在 LangSmith 中简化数据集管理并优化您的 LLM 应用性能。 在我们的详细技术文档中了解更多关于如何使用动态少样本提示的信息。 您还可以观看下面的视频演练。

LangSmith 中的动态少样本提示目前处于封闭测试阶段。 您可以在此处注册候补名单。 我们的目标是在本月晚些时候公开发布。


要开始构建数据飞轮以改进您的 LLM 应用程序,请查看我们在 LangSmith 中管理数据和测试的其他资源,包括