Press "Enter" to skip to content

如何在本地微调LLM以用于问答(QA)任务

通过提问从自定义数据中提取信息的实用逐步指南

有三种主要类型的问答任务。

抽取式问答:这是一种系统从给定文本中提取问题答案的任务(以文本为输入)。这是最常见的问答系统形式,也是大多数通用自动化系统(如Alexa或Google Search等)的一部分。

开放式生成问答:这是一种系统以自然语言生成答案的任务。重点是生成性人工智能,使答案更具自然感,而不仅仅是信息提取。然而,开放式生成问答任务需要提供上下文,并且答案是从上下文中生成的(大多数情况下,要记住幻觉)。

闭合式生成问答:这是一种不提供上下文的任务,答案纯粹由模型生成。

Photo by Severin Höin on Unsplash

抽取式问答实用指南

今天我们将快速介绍如何使用自定义数据微调模型。我主张通过生成自己的数据来微调模型!所以让我们开始吧

  1. 如何创建用于训练的数据?
  2. 如何将其转换为正确的格式 — 预处理?
  3. 如何对其进行标记化处理?
  4. 如何使用计算机进行微调?
  5. 额外内容 — 如何微调像Hugging Face这样的云API?

由于HuggingFace的文档相当陈旧且依赖项已损坏,我不得不重写本教程。我已经解决了他们教程中的所有问题,并分享了一个完整可行的版本,您可以轻松跟随(包含完整的Colab)。干杯!

创建自定义数据

我们将使用SQuAD数据集作为示例。在此处了解更多关于SQuAD(斯坦福问答数据集)的信息。

我假设您在Jupyter Notebook/Ipython笔记本中运行此实验。

安装数据集(因为我们可以看到数据的样子)

Leave a Reply

Your email address will not be published. Required fields are marked *