-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcreate_sample_data.sh
More file actions
65 lines (57 loc) · 6.21 KB
/
create_sample_data.sh
File metadata and controls
65 lines (57 loc) · 6.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/bash
# 设置示例数据集
mkdir -p raw/huggingface/example-dataset
touch raw/huggingface/example-dataset/sample.json
# 创建示例JSON数据文件
cat > raw/huggingface/example-dataset/sample.json << EOL
[
{
"instruction": "将以下句子翻译成英文",
"input": "我喜欢使用这个数据蒸馏工具",
"output": "I like using this data distillation tool"
},
{
"instruction": "总结以下文本的主要内容",
"input": "自动数据蒸馏工具是一款运行在Ubuntu服务器上的Web应用,通过简洁直观的界面,实现从Huggingface和ModelScope平台下载数据集,对数据集进行预览、加工、处理、合成等操作,最终为模型蒸馏提供所需的问答对数据集。",
"output": "这是一款在Ubuntu上运行的数据蒸馏工具,用于下载、预览和处理来自Huggingface和ModelScope的数据集,生成用于模型蒸馏的问答对。"
},
{
"instruction": "编写一个Python函数来计算斐波那契数列",
"input": "",
"output": "def fibonacci(n):\n if n <= 0:\n return 0\n elif n == 1:\n return 1\n else:\n return fibonacci(n-1) + fibonacci(n-2)\n\n# 示例使用\nfor i in range(10):\n print(fibonacci(i))"
},
{
"instruction": "解释什么是数据蒸馏",
"input": "",
"output": "数据蒸馏是一种技术,它通过让小模型学习大模型的输出来提炼知识。这个过程类似于知识蒸馏,但特别关注数据方面。在数据蒸馏中,我们使用强大的大型模型生成高质量的训练数据,然后用这些数据来训练小型模型,使其能够在资源有限的情况下达到接近大模型的性能。这种方法特别适用于需要在边缘设备或资源受限环境中部署模型的场景。"
},
{
"instruction": "分析以下代码并找出错误",
"input": "def calculate_average(numbers):\n total = 0\n for num in numbers:\n total += num\n return total / len(numbers)\n\nresult = calculate_average([])\nprint(result)",
"output": "这段代码的错误在于尝试对空列表计算平均值。当传入空列表[]时,len(numbers)为0,导致除以零的错误。应该添加对空列表的检查,例如:\n\ndef calculate_average(numbers):\n if not numbers: # 检查是否为空列表\n return 0 # 或返回None,或抛出异常\n total = 0\n for num in numbers:\n total += num\n return total / len(numbers)"
}
]
EOL
echo "示例数据集已创建在 raw/huggingface/example-dataset 目录"
# 创建示例JSONL文件
mkdir -p raw/modelscope/example-dataset
cat > raw/modelscope/example-dataset/sample.jsonl << EOL
{"prompt": "将以下句子翻译成英文", "response": "I like using this data distillation tool", "context": "我喜欢使用这个数据蒸馏工具"}
{"prompt": "总结以下文本的主要内容", "response": "这是一款在Ubuntu上运行的数据蒸馏工具,用于下载、预览和处理来自Huggingface和ModelScope的数据集,生成用于模型蒸馏的问答对。", "context": "自动数据蒸馏工具是一款运行在Ubuntu服务器上的Web应用,通过简洁直观的界面,实现从Huggingface和ModelScope平台下载数据集,对数据集进行预览、加工、处理、合成等操作,最终为模型蒸馏提供所需的问答对数据集。"}
{"prompt": "编写一个Python函数来计算斐波那契数列", "response": "def fibonacci(n):\n if n <= 0:\n return 0\n elif n == 1:\n return 1\n else:\n return fibonacci(n-1) + fibonacci(n-2)\n\n# 示例使用\nfor i in range(10):\n print(fibonacci(i))", "context": ""}
{"prompt": "解释什么是数据蒸馏", "response": "数据蒸馏是一种技术,它通过让小模型学习大模型的输出来提炼知识。这个过程类似于知识蒸馏,但特别关注数据方面。在数据蒸馏中,我们使用强大的大型模型生成高质量的训练数据,然后用这些数据来训练小型模型,使其能够在资源有限的情况下达到接近大模型的性能。这种方法特别适用于需要在边缘设备或资源受限环境中部署模型的场景。", "context": ""}
{"prompt": "分析以下代码并找出错误", "response": "这段代码的错误在于尝试对空列表计算平均值。当传入空列表[]时,len(numbers)为0,导致除以零的错误。应该添加对空列表的检查,例如:\n\ndef calculate_average(numbers):\n if not numbers: # 检查是否为空列表\n return 0 # 或返回None,或抛出异常\n total = 0\n for num in numbers:\n total += num\n return total / len(numbers)", "context": "def calculate_average(numbers):\n total = 0\n for num in numbers:\n total += num\n return total / len(numbers)\n\nresult = calculate_average([])\nprint(result)"}
EOL
echo "示例JSONL数据集已创建在 raw/modelscope/example-dataset 目录"
# 创建示例CSV文件
mkdir -p raw/local/example-dataset
cat > raw/local/example-dataset/sample.csv << EOL
question,answer,category
"什么是机器学习?","机器学习是人工智能的一个分支,它使用算法和统计模型让计算机系统能够从数据中学习和改进,而无需明确编程。",技术
"Python和Java的主要区别是什么?","Python是一种解释型、高级、通用编程语言,注重代码可读性;Java是一种编译型、面向对象的语言,强调"一次编写,到处运行"。Python通常用于数据分析、AI和脚本编写,而Java常用于企业级应用和Android开发。",编程
"解释什么是数据蒸馏","数据蒸馏是一种技术,它通过让小模型学习大模型的输出来提炼知识。这个过程类似于知识蒸馏,但特别关注数据方面。",AI
"如何在Linux中查看磁盘空间?","可以使用'df -h'命令查看磁盘空间使用情况,'-h'参数使输出以人类可读的格式显示。",系统
"什么是Docker?","Docker是一个开源平台,可以轻松创建、部署和运行应用程序。Docker将应用程序及其依赖项打包到一个标准化单元中,称为容器,确保应用程序在任何环境中都能一致运行。",技术
EOL
echo "示例CSV数据集已创建在 raw/local/example-dataset 目录"
echo "所有示例数据集创建完成"