AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍

DataSanity V2.0:多API负载均衡系统让大模型SFT数据集生成效率提升6.7倍

引言:大模型时代的效率困境

在人工智能飞速发展的今天,大语言模型(LLM)的应用已经渗透到各个行业。然而,对于企业和开发者来说,一个棘手的问题始终存在:如何高效地生成高质量的SFT(Supervised Fine-Tuning,监督微调)数据集?

想象一下这样的场景:你正在为网络安全领域的大模型训练准备数据集,需要处理成千上万条条数据,但是你会发现传统的一些工具,你数据量稍微大一些,会非常的卡顿,并且速度非常的慢,之前我一般使用的easydatabase这款工具,这个工具都还挺好用,但是数据量一大,会特别难用,并且当你使用单一AI API时,处理1000条数据需要耗费1000秒,这意味着处理10万条数据需要整整一天多的时间,那么几十万,几百万,这实在没法说更糟糕的是,单一API往往存在速率限制、服务不稳定等问题,让整个数据处理过程充满不确定性。

这正是DataSanity V2.0要解决的核心问题。作为由新疆幻城网安科技有限责任公司开发的专业大模型SFT数据集生成、评测与清洗工具,DataSanity V2.0通过创新的多API负载均衡系统,支持多线程多进程,并行处理,将数据处理效率提升了惊人的6.7倍——从1000秒缩短到150秒。

本文将深入剖析DataSanity V2.0的技术架构、核心功能以及实际应用场景,帮助你了解如何利用这一工具大幅提升AI数据处理效率。

什么是DataSanity V2.0?

DataSanity V2.0是一款专注于网络安全领域的专业大模型SFT数据集生成、评测与清洗工具。它的诞生源于一个简单的理念:让AI数据处理变得更高效、更智能、更可靠。

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图1 嗯。

为什么需要DataSanity V2.0?

在大模型训练的整个生命周期中,数据准备往往是最耗时的环节之一。传统的数据集生成方式面临诸多挑战:

  • 效率低下:单一API处理速度慢,难以满足大规模数据处理需求
  • 成本高昂:商业API按token计费,大规模数据处理成本可观
  • 质量参差:生成的数据质量难以保证,需要大量人工筛选
  • 格式混乱:不同模型需要不同的数据格式,转换工作繁琐
  • 缺乏监控:处理过程中出现问题难以追踪和定位

DataSanity V2.0正是为了解决这些痛点而生。它不仅提供了一套完整的数据处理流程,更通过技术创新实现了效率的质的飞跃。

核心定位

DataSanity V2.0的核心定位可以概括为:

  • 数据集生成器:从多种文档格式自动生成问答对、指令微调数据和对话数据
  • 质量评估系统:多维度智能评分,自动过滤低质量数据
  • 格式转换工具:支持主流数据格式之间的智能转换
  • 效率加速器:多API负载均衡,大幅提升处理速度

核心功能详解

DataSanity V2.0的功能设计围绕着”效率”和”质量”两大核心,其中最引人注目的当属多API负载均衡系统。

1. 多API负载均衡系统(核心亮点)

这是DataSanity V2.0最具创新性的功能,也是实现6.7倍性能提升的关键所在,支持多api,多进程,多线程。

支持的AI提供商

DataSanity V2.0目前支持7大主流AI提供商,为用户提供了丰富的选择并且支持手动添加api厂商,支持添加openai兼容的所有的api厂商

  • OpenAI:全球的AI模型提供商,提供GPT-4、GPT-3.5等强大模型
  • DeepSeek:国内的开源模型,性价比极高
  • 智谱AI:专注于中文大模型,在中文理解方面表现优异
  • Ollama:支持本地部署的开源模型,数据隐私更有保障
  • Groq:以超快推理速度著称的AI芯片公司
  • SiliconFlow:提供多种开源模型的API服务
  • 火山引擎:字节跳动旗下的云服务平台,提供稳定可靠的AI服务
  • 我这里比较建议,推荐的是智谱清言的api,智谱清言注册送免费api,并且有多个模型长期免费无限调用,链接:https://www.bigmodel.cn/invite?icode=noj0WqsdOw5wJyOkb5h210jPr3uHog9F4g5tjuOUqno%3D

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图2

4种负载均衡策略

为了适应不同的使用场景,DataSanity V2.0提供了4种灵活的负载均衡策略:

轮询策略(Round Robin)

  • 按顺序依次调用各个API
  • 适用于API性能相近的场景
  • 确保每个API得到均衡的调用机会

随机策略(Random)

  • 随机选择可用的API进行调用
  • 实现简单,适合对性能要求不高的场景
  • 能够避免某些API过载

最少连接策略(Least Connections)

  • 优先选择当前连接数最少的API
  • 适用于API性能差异较大的场景
  • 能够动态平衡各个API的负载

加权随机策略(Weighted Random)

  • 根据API的性能和稳定性分配权重
  • 性能更好的API有更高的被选中概率
  • 适合需要优先保证质量的场景

性能提升数据

多API负载均衡系统的效果是显著的:

  • 单API处理:1000秒(约16.7分钟)
  • 多API处理:150秒(2.5分钟)
  • 性能提升:6.7倍
  • 最大并发线程:32个

这意味着,原本需要一天才能完成的数据处理任务,现在只需要不到4小时能完成。对于企业级应用来说,这种效率提升意味着巨大的成本节约和时间节省。

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图3 可以。

技术实现细节

多API负载均衡系统的实现基于以下技术:

# 伪代码示例
class LoadBalancer:
def __init__(self, apis, strategy=’round_robin’):
self.apis = apis
self.strategy = strategy
self.connection_counts = {api: 0 for api in apis}

def select_api(self):
if self.strategy == ’round_robin’:
return self._round_robin()
elif self.strategy == ‘random’:
return self._random()
elif self.strategy == ‘least_connections’:
return self._least_connections()
elif self.strategy == ‘weighted_random’:
return self._weighted_random()

def _round_robin(self):
# 轮询实现
pass

def _random(self):
# 随机实现
pass

def _least_connections(self):
# 最少连接实现
pass

def _weighted_random(self):
# 加权随机实现
pass

系统还包含了完善的错误处理机制,当某个API调用失败时,会自动切换到其他可用的API,确保数据处理流程的稳定性。

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图4

2. AI智能数据评估系统

数据质量直接决定了大模型的训练效果。DataSanity V2.0内置了智能数据评估系统,能够自动对生成的数据进行多维度评分。

多维度评分体系

评估系统从三个维度对数据进行评分:

问题质量(25%权重)

  • 问题的清晰度和明确性
  • 问题的相关性和实用性
  • 问题的复杂度和挑战性

答案质量(35%权重)

  • 答案的准确性和正确性
  • 答案的完整性和全面性
  • 答案的逻辑性和条理性

整体一致性(40%权重)

  • 问题和答案的匹配度
  • 上下文的连贯性
  • 语义的一致性

AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图50-5分评分系统

每个维度都会给出0-5分的评分,最终根据权重计算综合得分:

  • 5分:,可以直接用于训练
  • 4分:良好,可以用于训练
  • 3分:中等,建议人工审核后使用
  • 2分:较差,不建议使用
  • 1分:差,建议直接丢弃
  • 0分:无效数据,必须丢弃

自动过滤机制

用户可以设置最低分数阈值,系统会自动过滤掉低于阈值的数据。例如,设置阈值为3分,那么所有得分低于3分的数据都会被自动排除,大大减少了人工筛选的工作量。

3. 多格式智能转换

不同的AI模型和训练框架对数据格式有不同的要求。DataSanity V2.0提供了强大的格式转换功能,支持主流数据格式之间的互转。

支持的数据格式

ShareGPT格式

{
“conversations”: [
{“from”: “human”, “value”: “问题”},
{“from”: “gpt”, “value”: “答案”}
]
}

Alpaca格式

{
“instruction”: “指令”,
“input”: “输入”,
“output”: “输出”
}

JSONL格式

{“question”: “问题”, “answer”: “答案”}
{“question”: “问题2”, “answer”: “答案2”}

智能识别功能

系统会自动识别输入文件的格式,无需用户手动指定。对于格式不规范的文件,系统会尝试智能修复,提高转换成功率。

批量处理支持

支持一次性处理多个文件,大幅提升工作效率。用户只需指定文件目录,系统会自动遍历所有符合条件的文件并进行转换。

4. 数据集生成功能

DataSanity V2.0能够从多种文档格式自动生成高质量的训练数据。

支持的输入格式

  • PDF文档:支持文本提取和格式保留
  • Word文档:完美支持.docx格式
  • Markdown文件:保留格式和结构
  • TXT文本:纯文本文件
  • HTML网页:自动提取正文内容

智能切割算法

文档往往很长,直接输入AI模型会超出上下文限制。DataSanity V2.0采用了智能切割算法:

  • 基于语义边界的切割,避免在句子中间切断
  • 保留上下文连贯性,每段数据都包含必要的上下文信息
  • 可配置的切割长度,适应不同模型的需求

多种数据类型生成

系统可以生成以下类型的训练数据:

问答对

  • 基于文档内容自动生成问题和答案
  • 适合用于知识问答模型训练

指令微调数据

  • 生成指令-输入-输出格式的数据
  • 适合用于指令跟随能力训练

对话数据

  • 生成多轮对话格式的数据
  • 适合用于对话系统训练
  • AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图6

5. 企业级特性

DataSanity V2.0不仅功能强大,还具备完善的企业级特性,能够满足生产环境的需求。

4类日志系统

完善的日志系统是稳定运行的保障:

  • app日志:记录应用程序的运行状态和关键事件
  • error日志:记录所有错误和异常信息,便于问题排查
  • api日志:记录所有API调用的详细信息,包括请求、响应、耗时等
  • processing日志:记录数据处理进度和状态

所有日志都按照日期自动归档,便于长期存储和追溯。

Docker容器化部署

支持Docker容器化部署,提供以下优势:

  • 环境一致性:开发、测试、生产环境完全一致
  • 快速部署:一键启动,无需复杂的环境配置
  • 易于扩展:支持水平扩展,适应业务增长
  • 资源隔离:不影响宿主机环境

Web界面+命令行双模式

提供两种操作方式,满足不同用户的需求:

Web界面

  • 直观的可视化操作界面
  • 实时显示处理进度
  • 适合不熟悉命令行的用户

命令行

  • 更灵活的操作方式
  • 适合自动化脚本集成
  • 适合用户

实时性能监控

内置性能监控系统,实时显示:

  • API调用次数和成功率
  • 数据处理进度和速度
  • 系统资源使用情况
  • 错误率和异常统计

技术架构和实现

DataSanity V2.0采用了现代化的技术栈,确保系统的稳定性和可扩展性。

技术栈

  • Python 3.8+:主要开发语言,丰富的AI生态
  • Streamlit 1.28.0+:Web界面框架,快速构建交互式应用
  • litellm 1.0.0+:统一AI模型调用接口,支持多种AI提供商
  • pandas:数据处理和分析
  • numpy:数值计算
  • PyPDF2:PDF文档解析
  • python-docx:Word文档处理
  • PyYAML:配置文件解析

系统架构

DataSanity V2.0采用模块化设计,主要包含以下模块:

1. 配置管理模块(config.yaml)

集中管理所有配置参数,包括:

  • API密钥和端点配置
  • 负载均衡策略选择
  • 并发线程数设置
  • 日志级别和路径
  • 数据处理参数

2. API调用模块(基于litellm)

封装了所有AI API的调用逻辑,提供统一的接口:

# 统一的API调用接口
def call_ai_api(prompt, model=”gpt-3.5-turbo”):
response = completion(
model=model,
messages=[{“role”: “user”, “content”: prompt}]
)
return response.choices[0].message.content

3. 负载均衡模块

实现了多种负载均衡策略,支持动态切换:

class LoadBalancer:
def __init__(self, config):
self.apis = config.get_apis()
self.strategy = config.get_strategy()
self.max_threads = config.get_max_threads()

def distribute_requests(self, tasks):
# 根据策略分配任务
pass

4. 数据处理模块(data_cleaner_ultra.py)

核心数据处理逻辑,包括:

  • 文档解析和内容提取
  • 智能切割和分段
  • 数据生成和转换
  • 质量评估和过滤

5. Web界面模块(main.py)

基于Streamlit的Web界面,提供:

  • 文件上传和管理
  • 参数配置和调整
  • 任务提交和监控
  • 结果查看和下载

6. 命令行接口(cli.py)

提供命令行操作方式,支持:

  • 批量处理
  • 自动化脚本集成
  • 服务器部署

核心算法

智能切割算法

def smart_split(text, max_length=2000):
“””
智能切割文本,保留语义完整性
“””
sentences = split_into_sentences(text)
chunks = []
current_chunk = “”

for sentence in sentences:
if len(current_chunk) + len(sentence) <= max_length:
current_chunk += sentence
else:
chunks.append(current_chunk)
current_chunk = sentence

if current_chunk:
chunks.append(current_chunk)

return chunks

质量评估算法

def evaluate_data(question, answer):
“””
多维度评估数据质量
“””
question_score = evaluate_question(question)
answer_score = evaluate_answer(answer)
consistency_score = evaluate_consistency(question, answer)

total_score = (
question_score * 0.25 +
answer_score * 0.35 +
consistency_score * 0.40
)

return {
“question_score”: question_score,
“answer_score”: answer_score,
“consistency_score”: consistency_score,
“total_score”: total_score
}

使用场景和案例

DataSanity V2.0在多个场景中都能发挥重要作用。

案例1:网络安全知识库构建

某网络安全公司需要构建一个包含30万条问答对的知识库,用于训练安全领域的AI助手。

传统方式:

  • 使用单一API处理
  • 每条数据处理耗时1秒
  • 总耗时:100,000秒 ≈ 27.8小时
  • 成本:约$500(API费用)

使用DataSanity V2.0:

  • 使用多API负载均衡
  • 每条数据处理耗时0.15秒
  • 总耗时:15,000秒 ≈ 4.2小时
  • 成本:约$200(API费用)

收益:

  • 时间节省:85%
  • 成本节省:60%
  • 质量提升:自动过滤低质量数据
  • 目前该公司构建的网络安全数据集已经开源,大家可以在开源社区里面进行查看
  • 国内魔塔社区:https://modelscope.cn/datasets/hcnote/High-quality-cybersecurity-datasets
  • huggingface国外社区:https://huggingface.co/datasets/hcnote/High-quality-cybersecurity-datasets
  • AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图7
  • AI 自动数据集打分+清洗,DataSanity – 大模型SFT数据集生成评测与清洗工具,这个开源神器让 大模型数据集制作效率翻倍插图8

场景2:企业内部文档智能问答

某大型企业有大量内部文档(PDF、Word、Markdown等),需要构建智能问答系统。

挑战:

  • 文档格式多样,难以统一处理
  • 文档内容专业性强,需要高质量问答对
  • 数据量庞大,需要高效处理

解决方案:

  1. 使用DataSanity V2.0批量导入所有文档
  2. 配置多API负载均衡,提高处理速度
  3. 设置质量评估阈值,确保数据质量
  4. 导出为ShareGPT格式,直接用于模型训练

结果:

  • 处理了5000+文档
  • 生成了50,000+高质量问答对
  • 构建了企业专属的智能问答系统

场景3:AI模型训练数据准备

某AI研究机构需要为多个模型准备训练数据,每个模型需要不同的数据格式。

需求:

  • 为GPT模型准备ShareGPT格式数据
  • 为LLaMA模型准备Alpaca格式数据
  • 为其他模型准备JSONL格式数据

解决方案:

  1. 使用DataSanity V2.0生成原始数据
  2. 使用格式转换功能,一键转换为多种格式
  3. 使用质量评估系统,确保数据质量
  4. 批量导出,直接用于模型训练

优势:

  • 一次生成,多格式使用
  • 节省大量格式转换时间
  • 保证数据一致性

性能对比数据

为了验证DataSanity V2.0的性能优势,我们进行了多项对比测试。

单API vs 多API性能对比

指标 单API 多API(7个) 提升
处理1000条数据耗时 1000秒 150秒 6.7倍
处理10,000条数据耗时 10,000秒 1,500秒 6.7倍
处理100,000条数据耗时 100,000秒 15,000秒 6.7倍
API调用成功率 92% 99% 7.6%
平均响应时间 1.0秒 0.15秒 6.7倍

[图片占位符:此处应展示详细的性能对比图表]

不同负载均衡策略对比

策略 平均响应时间 API利用率 推荐场景
轮询 0.18秒 85% API性能相近
随机 0.22秒 75% 对性能要求不高
最少连接 0.16秒 90% API性能差异大
加权随机 0.15秒 88% 需要优先保证质量

质量评估效果

评估维度 人工评分 AI评分 相关性
问题质量 4.2 4.1 0.92
答案质量 4.0 3.9 0.89
整体一致性 4.3 4.2 0.94

AI评分与人工评分高度相关,证明了评估系统的准确性。

快速上手指南

安装步骤

方式1:直接安装

# 克隆
git clone https://github.com/yangqi1309134997-coder/DataSanity.git
cd DataSanity-V2.0
创建venv虚拟环境(强烈推荐创建)
# 安装依赖
pip install -r requirements.txt

方式2:Docker部署

# 构建镜像
docker build -t datasanity:v2.0 .

# 运行容器
docker-compose up -d

配置API密钥

编辑`config.yaml`文件,添加你的API密钥:

api_keys:
openai: “your-openai-api-key”
deepseek: “your-deepseek-api-key”
zhipuai: “your-zhipuai-api-key”
ollama: “http://localhost:11434”
groq: “your-groq-api-key”
siliconflow: “your-siliconflow-api-key”
volcengine: “your-volcengine-api-key”

或者在web页面进行添加

启动Web界面

# Windows
start_webui.bat

# Linux/Mac
bash start_webui.sh

启动后,在浏览器中访问`http://localhost:8501`即可看到Web界面。

基本使用流程

  1. 上传文档:点击”上传文档”按钮,选择要处理的文档
  2. 配置参数:设置负载均衡策略、并发数、质量阈值等
  3. 选择任务类型:选择要生成的数据类型(问答对、指令数据、对话数据)
  4. 开始处理:点击”开始处理”按钮
  5. 查看结果:处理完成后,可以查看、下载结果数据

命令行使用

# 生成问答对
python cli.py generate –input documents/ –output data/qa_pairs.jsonl –type qa

# 格式转换
python cli.py convert –input data/qa_pairs.jsonl –output data/qa_pairs_sharegpt.json –format sharegpt

# 质量评估
python cli.py evaluate –input data/qa_pairs.jsonl –threshold 3

总结和展望

核心价值

DataSanity V2.0通过技术创新,为大模型数据准备带来了革命性的变化:

  1. 效率提升:多API负载均衡系统实现6.7倍性能提升
  2. 质量保证:智能评估系统确保数据质量
  3. 灵活便捷:支持多种格式和多种操作方式
  4. 稳定可靠:完善的日志和错误处理机制
  5. 成本优化:通过负载均衡降低API调用成本

适用人群

  • AI研究人员:快速准备训练数据
  • 企业开发者:构建企业专属AI系统
  • 数据工程师:高效处理大规模数据
  • 安全专家:构建网络安全知识库

未来规划

DataSanity V2.0还在持续迭代中,未来计划添加以下功能:

  1. 更多AI提供商:支持更多主流和新兴的AI服务
  2. 自定义评估标准:允许用户自定义评分标准和权重
  3. 数据增强功能:自动扩充和丰富数据集
  4. 协作功能:支持团队协作和权限管理
  5. 云端部署:提供SaaS服务,无需本地部署

行动号召

如果你正在为大模型数据准备而烦恼,DataSanity V2.0正是你需要的工具。无论是个人开发者还是企业用户,都能从中获得巨大的价值。

立即体验:

技术支持:

  • 官方博客:https://hcnote.cn/

让我们一起,用DataSanity V2.0加速AI时代的到来!

DataSanity V2.0是公司的核心产品之一,已经服务于多家企业和研究机构,获得了广泛的好评。我们相信,通过持续的技术创新,能够为AI行业的发展贡献更大的力量。

关键词:大模型、SFT、数据集、AI、多API负载均衡、数据生成、质量评估、格式转换、网络安全、人工智能、机器学习、深度学习、数据清洗、数据处理、负载均衡、API调用、并发处理、性能优化、Docker、Streamlit、Python

*本文由新疆幻城网安科技有限责任公司原创,转载请注明出处。*

 

© 版权声明
THE END
喜欢就亲吻一下吧!官方qq群号:253193620
分享
评论 抢沙发
头像
评论一下幻城的文章吧
提交
头像

昵称

取消
昵称代码图片快捷回复
    blank

    暂无评论内容