ShortcutsBench
收藏数据集概述
数据集名称
ShortcutsBench
数据集统计信息
- 应用程序数量: 88
- API 数量: 1414
- 快捷指令数量: 7628
- 平均 API 使用量: 7.86
- 平均操作数量: 21.46
数据集内容
ShortcutsBench 提供了以下内容:
- 快捷指令(即
golden中的操作序列) - 查询(即分配给代理的任务)
- API(即代理可用的工具)
数据集文件
- 原始快捷指令数据集:
1_final_detailed_records_remove_repeat.json - 过滤后的快捷指令数据集:
1_final_detailed_records_filter_apis.json - 快捷指令数据集(长度 <= 30):
1_final_detailed_records_filter_apis_leq_30.json - 生成的查询:
generated_success_queries.json - API 数据集:
4_api_json_filter.json
数据集下载链接
- 原始快捷指令数据集: Google Drive 或 Baidu Cloud(密码:
shortcutsbench) - 过滤后的快捷指令数据集: Google Drive 或 Baidu Cloud(密码:
shortcutsbench) - 快捷指令数据集(长度 <= 30): Google Drive 或 Baidu Cloud(密码:
shortcutsbench) - 生成的查询: Google Drive 或 Baidu Cloud(密码:
shortcutsbench) - API 数据集: Google Drive 或 Baidu Cloud(密码:
shortcutsbench)
数据集优势
ShortcutsBench 在 API 的真实性、丰富性和复杂性,查询和相应操作序列的有效性,参数值的准确填充,以及整体规模方面具有显著优势。
数据集用途
- 快捷指令用户和爱好者: 可以在数据集中找到喜欢的快捷指令,帮助完成各种复杂任务。
- 研究人员: 可以研究自动化工作流程、低代码编程、基于 API 的代理以及使用快捷指令微调大型语言模型等。
数据集下载
除了通过 iCloud 链接逐个下载快捷指令外,还可以直接从以下链接获取完整数据:
数据源和链接
快捷指令源文件介绍
快捷指令源数据在云盘中的目录结构如下:
users_dataset/ ├── matthewcassinelli.com_sirishortcuts_library_free # 网站名称 │ ├── file1 │ ├── file2 │ └── file3
或
users_dataset/ ├── jiejingku.net # 网站名称 │ ├── category1 # 分类 │ │ ├── file1 # 每个具体的快捷指令 │ │ └── file2 │ ├── category2 │ │ └── file3
每个文件代表一个快捷指令。文件名是通过简单处理快捷指令名称生成的,使用以下代码: python file_name = re.sub(r[^a-zA-Z0-9], _, name)
我们提供的快捷指令源文件是 JSON 格式,而苹果设备导出的快捷指令是 iCloud 链接(以链接形式共享)或加密的快捷指令文件(.shortcut 扩展名)。
要在 macOS 上的 Shortcuts 应用中导入快捷指令源文件,请按照以下步骤操作:
-
将
JSON文件格式转换为PLIST格式 📑: python import xml.etree.ElementTree as ETdef parse_element(element): """ Recursively parse XML elements and return dictionaries and lists. """ if element.tag == dict: return {element[i].text: parse_element(element[i+1]) for i in range(0, len(element), 2)} elif element.tag == array: return [parse_element(child) for child in element] elif element.tag == true: return True elif element.tag == false: return False elif element.tag == integer: return int(element.text) elif element.tag == string: return element.text elif element.tag == real: return float(element.text) else: raise ValueError("Unsupported tag: " + element.tag)
tree = ET.parse(file_path) root_element = tree.getroot() parsed_data = parse_element(root_element[0]) data = parsed_data
save_path = "./" with open(save_path, w) as f: json.dump(data, f, indent=4)
-
使用
shortcuts sign --mode anyone --input $input_file --output $output_file对PLIST文件进行签名,替换$input_file和$output_file为实际文件路径。 -
将签名后的文件导入 Shortcuts 应用 📲。




