five

txchmechanicus/qwen3.5-toolcalling-v2

收藏
Hugging Face2026-03-11 更新2026-03-29 收录
下载链接:
https://hf-mirror.com/datasets/txchmechanicus/qwen3.5-toolcalling-v2
下载链接
链接失效反馈
官方服务:
资源简介:
--- language: - en license: apache-2.0 pretty_name: Qwen3.5 Tool Calling Dataset v2 size_categories: - 10K<n<100K task_categories: - text-generation tags: - tool-use - tool-calling - function-calling - reasoning - agentic - jupyter - code-execution - sft - chat - qwen3 - qwen3.5 - chain-of-thought - multi-turn - structured-output - json - fine-tuning - open-source - expanded-dataset annotations_creators: - machine-generated language_creators: - found configs: - config_name: default data_files: - split: train path: data/train-* - split: test path: data/test-* --- # Qwen3.5 Tool Calling Dataset v2 An expanded tool-calling SFT dataset combining **smirki/Tool-Calling-Dataset-UIGEN-X** and **AmanPriyanshu/tool-reasoning-sft-jupyter-agent**, unified into Qwen3 messages format. Adds Jupyter notebook agent data with code execution reasoning chains. ## Dataset Summary | Property | Value | |----------|-------| | **Total Samples** | ~60K+ | | **Train Split** | ~55K | | **Test Split** | ~6K | | **Sources** | UIGEN-X + Jupyter Agent | | **Format** | Qwen3 messages | | **Language** | English | | **License** | Apache 2.0 | ## v1 vs v2 Comparison | Version | Samples | Agent Type | New Sources | |---------|---------|------------|-------------| | **v1** | 51,004 | General tool calling | smirki/Tool-Calling-Dataset-UIGEN-X | | **v2** (this) | ~60K+ | + Code/Jupyter agent | + AmanPriyanshu/tool-reasoning-sft-jupyter-agent | ## What's New in v2? - **Jupyter Agent**: Code execution with `add_and_execute_jupyter_code_cell` tool - **Richer Reasoning**: Structured `reasoning → tool_call → tool_output → answer` chains - **Data Science Tasks**: CSV analysis, visualization, statistical computation - **Multi-step Execution**: Multiple code cells in sequence ## Dataset Structure ### Data Fields | Field | Type | Description | |-------|------|-------------| | `messages` | `list[dict]` | Conversation turns with `role` and `content` | ### Role Types | Role | Source | Description | |------|--------|-------------| | `system` | Both | Tool schema + assistant instructions | | `user` | Both | User request or tool output | | `assistant` | Both | `<think>` reasoning + tool call or final answer | > Note: Original `reasoning`, `tool_call`, `tool_output` roles from Jupyter Agent source are normalized to `assistant` or `user`. ## Sources | Dataset | Format | Samples | Key Capability | |---------|--------|---------|----------------| | [smirki/Tool-Calling-Dataset-UIGEN-X](https://huggingface.co/datasets/smirki/Tool-Calling-Dataset-UIGEN-X) | `conversations[from/value]` | 51,004 | General API/tool calls with `<think>` reasoning | | [AmanPriyanshu/tool-reasoning-sft-jupyter-agent](https://huggingface.co/datasets/AmanPriyanshu/tool-reasoning-sft-jupyter-agent-dataset-sft-tool-use-agent-data-cleaned-rectified) | `messages[role/content]` | ~10K | Jupyter code execution agent | ## Format ### UIGEN-X Style: API Tool Calling ```json { "messages": [ { "role": "system", "content": "You are a deep thinking AI...\n<tools>\n{\"name\": \"search_web\", \"description\": \"Search the web\", ...}\n</tools>" }, { "role": "user", "content": "Find the latest news about AI developments" }, { "role": "assistant", "content": "<think>\nUser wants latest AI news. I'll use search_web.\n</think>\n<tool_call>\n{\"name\": \"search_web\", \"arguments\": {\"query\": \"latest AI developments 2025\"}}\n</tool_call>" }, { "role": "user", "content": "<tool_response>\n[{\"title\": \"New LLM achieves SOTA\", \"url\": \"...\"}]\n</tool_response>" }, { "role": "assistant", "content": "Here are the latest AI developments: New LLM achieves state-of-the-art performance..." } ] } ``` ### Jupyter Agent Style: Code Execution ```json { "messages": [ { "role": "system", "content": "You are an intelligent data science assistant with access to a stateful Jupyter notebook. You can use the add_and_execute_jupyter_code_cell tool.\n\nYou have access to: winequality-red.csv" }, { "role": "user", "content": "What is the average alcohol content in the dataset?" }, { "role": "assistant", "content": "<think>\nI need to load the CSV and compute the mean of the alcohol column.\n</think>\n{\"name\": \"add_and_execute_jupyter_code_cell\", \"arguments\": {\"code\": \"import pandas as pd\\ndf = pd.read_csv('/home/user/input/winequality-red.csv')\\nprint(df['alcohol'].mean())\"}}" }, { "role": "assistant", "content": "10.422983114446529" }, { "role": "assistant", "content": "<answer>\nThe average alcohol content is approximately 10.42%.\n</answer>" } ] } ``` ## Source Conversions ```python # --- UIGEN-X (ShareGPT) --- role_map = {"human": "user", "gpt": "assistant", "system": "system"} # --- Jupyter Agent (native messages) --- # reasoning -> assistant (merged with following tool_call) # tool_call -> assistant # tool_output -> user # answer -> assistant ``` ## Usage ```python from datasets import load_dataset dataset = load_dataset("Mustafaege/qwen3.5-toolcalling-v2") # Check both types of examples for sample in dataset['train']: msgs = sample['messages'] has_jupyter = any('jupyter_code_cell' in str(m['content']) for m in msgs) if has_jupyter: print("Jupyter agent example found!") break ``` ## Training with Unsloth ```python from unsloth import FastLanguageModel from trl import SFTTrainer, SFTConfig model, tokenizer = FastLanguageModel.from_pretrained( model_name = "unsloth/Qwen3-1.7B", max_seq_length = 8192, # Longer for multi-step reasoning load_in_4bit = True, ) trainer = SFTTrainer( model = model, tokenizer = tokenizer, train_dataset = dataset['train'], args = SFTConfig( per_device_train_batch_size = 2, gradient_accumulation_steps = 8, max_seq_length = 8192, ), ) trainer.train() ``` ## Related Datasets | Version | Samples | Link | |---------|---------|------| | **v1** | 51,004 | [Mustafaege/qwen3.5-toolcalling-v1](https://huggingface.co/datasets/Mustafaege/qwen3.5-toolcalling-v1) | | **v2** (this) | ~60K+ | [Mustafaege/qwen3.5-toolcalling-v2](https://huggingface.co/datasets/Mustafaege/qwen3.5-toolcalling-v2) | ## License Apache 2.0 — see [LICENSE](https://www.apache.org/licenses/LICENSE-2.0) for details. --- Built for Qwen3.5 fine-tuning. Part of the [Mustafaege](https://huggingface.co/Mustafaege) model series.

--- language: - en license: apache-2.0 pretty_name: Qwen3.5工具调用数据集v2 size_categories: - 10K<n<100K task_categories: - 文本生成 tags: - 工具使用(Tool Use) - 工具调用(Tool Calling) - 函数调用(Function Calling) - 推理(Reasoning) - 智能体相关(Agentic) - Jupyter - 代码执行(Code Execution) - 监督微调(Supervised Fine-Tuning, SFT) - 对话(Chat) - Qwen3 - Qwen3.5 - 思维链(Chain-of-Thought) - 多轮对话(Multi-Turn) - 结构化输出(Structured Output) - JSON - 微调(Fine-Tuning) - 开源(Open-Source) - 扩展数据集(Expanded Dataset) annotations_creators: - 机器生成 language_creators: - 公开获取 configs: - config_name: default data_files: - split: train path: data/train-* - split: test path: data/test-* --- # Qwen3.5工具调用数据集v2 本数据集为扩展版工具调用监督微调(Supervised Fine-Tuning, SFT)数据集,整合了**smirki/Tool-Calling-Dataset-UIGEN-X**与**AmanPriyanshu/tool-reasoning-sft-jupyter-agent**两个数据集,并统一适配Qwen3对话格式。新增了包含代码执行思维链的Jupyter Notebook智能体数据。 ## 数据集摘要 | 属性 | 取值 | |----------|-------| | **总样本量** | ~60K+ | | **训练集划分** | ~55K | | **测试集划分** | ~6K | | **数据来源** | UIGEN-X + Jupyter智能体 | | **数据格式** | Qwen3对话格式 | | **语言** | 英语 | | **许可证** | Apache 2.0 | ## v1与v2版本对比 | 版本 | 样本量 | 智能体类型 | 新增数据源 | |---------|---------|------------|-------------| | **v1** | 51,004 | 通用工具调用 | smirki/Tool-Calling-Dataset-UIGEN-X | | **v2(本数据集)** | ~60K+ | + 代码/Jupyter智能体 | + AmanPriyanshu/tool-reasoning-sft-jupyter-agent | ## v2版本新增特性 - **Jupyter智能体**:支持通过`add_and_execute_jupyter_code_cell`工具执行代码 - **更丰富的推理流程**:采用结构化的`推理→工具调用→工具输出→最终回答`链条 - **数据科学任务**:涵盖CSV数据分析、可视化与统计计算 - **多步执行**:支持按顺序执行多个代码单元 ## 数据集结构 ### 数据字段 | 字段 | 类型 | 描述 | |-------|------|-------------| | `messages` | `list[dict]` | 包含`role`与`content`的对话轮次列表 | ### 角色类型 | 角色 | 来源 | 描述 | |------|--------|-------------| | `system` | 两个数据源均支持 | 工具模式(Tool Schema)与助手系统提示 | | `user` | 两个数据源均支持 | 用户查询或工具返回结果 | | `assistant` | 两个数据源均支持 | 包含`<think>`推理模块、工具调用或最终回答的内容 | > 注意:来自Jupyter Agent数据源的原始`reasoning`、`tool_call`、`tool_output`角色已被标准化为`assistant`或`user`角色。 ## 数据来源 | 数据集 | 格式 | 样本量 | 核心能力 | |---------|--------|---------|----------------| | [smirki/Tool-Calling-Dataset-UIGEN-X](https://huggingface.co/datasets/smirki/Tool-Calling-Dataset-UIGEN-X) | `conversations[from/value]` | 51,004 | 支持`<think>`推理的通用API/工具调用 | | [AmanPriyanshu/tool-reasoning-sft-jupyter-agent](https://huggingface.co/datasets/AmanPriyanshu/tool-reasoning-sft-jupyter-agent-dataset-sft-tool-use-agent-data-cleaned-rectified) | `messages[role/content]` | ~10K | Jupyter代码执行智能体 | ## 数据格式 ### UIGEN-X风格:API工具调用 json { "messages": [ { "role": "system", "content": "你是一名深度思考的AI助手…… <tools> {"name": "search_web", "description": "网页搜索", ...} </tools>" }, { "role": "user", "content": "查询AI领域的最新资讯" }, { "role": "assistant", "content": "<think> 用户需要最新的AI资讯,我将调用search_web工具。 </think> <tool_call> {"name": "search_web", "arguments": {"query": "2025年AI领域最新进展"}} </tool_call>" }, { "role": "user", "content": "<tool_response> [{"title": "新型大语言模型实现SOTA性能", "url": "..."}] </tool_response>" }, { "role": "assistant", "content": "以下是AI领域的最新进展:新型大语言模型实现了当前最优性能……" } ] } ### Jupyter智能体风格:代码执行 json { "messages": [ { "role": "system", "content": "你是一名具备状态感知能力的Jupyter Notebook智能数据科学助手,可使用`add_and_execute_jupyter_code_cell`工具。 你可访问数据集:winequality-red.csv" }, { "role": "user", "content": "该数据集中酒精含量的平均值是多少?" }, { "role": "assistant", "content": "<think> 我需要加载CSV数据集并计算alcohol列的均值。 </think> {"name": "add_and_execute_jupyter_code_cell", "arguments": {"code": "import pandas as pd df = pd.read_csv('/home/user/input/winequality-red.csv') print(df['alcohol'].mean())"}}" }, { "role": "assistant", "content": "10.422983114446529" }, { "role": "assistant", "content": "<answer> 该数据集的平均酒精含量约为10.42%。 </answer>" } ] } ## 数据源转换 python # --- UIGEN-X(ShareGPT格式)--- role_map = {"human": "user", "gpt": "assistant", "system": "system"} # --- Jupyter Agent(原生消息格式)--- # reasoning角色 → assistant角色(与后续的tool_call合并) # tool_call角色 → assistant角色 # tool_output角色 → user角色 # answer角色 → assistant角色 ## 使用方法 python from datasets import load_dataset dataset = load_dataset("Mustafaege/qwen3.5-toolcalling-v2") # 检查两种类型的示例 for sample in dataset['train']: msgs = sample['messages'] has_jupyter = any('jupyter_code_cell' in str(m['content']) for m in msgs) if has_jupyter: print("找到Jupyter智能体示例!") break ## 使用Unsloth进行微调训练 python from unsloth import FastLanguageModel from trl import SFTTrainer, SFTConfig model, tokenizer = FastLanguageModel.from_pretrained( model_name = "unsloth/Qwen3-1.7B", max_seq_length = 8192, # 更长的序列长度适配多步推理 load_in_4bit = True, ) trainer = SFTTrainer( model = model, tokenizer = tokenizer, train_dataset = dataset['train'], args = SFTConfig( per_device_train_batch_size = 2, gradient_accumulation_steps = 8, max_seq_length = 8192, ), ) trainer.train() ## 相关数据集 | 版本 | 样本量 | 链接 | |---------|---------|------| | **v1** | 51,004 | [Mustafaege/qwen3.5-toolcalling-v1](https://huggingface.co/datasets/Mustafaege/qwen3.5-toolcalling-v1) | | **v2(本数据集)** | ~60K+ | [Mustafaege/qwen3.5-toolcalling-v2](https://huggingface.co/datasets/Mustafaege/qwen3.5-toolcalling-v2) | ## 许可证 Apache 2.0 — 详细信息请参阅 [LICENSE](https://www.apache.org/licenses/LICENSE-2.0)。 --- 本数据集专为Qwen3.5微调设计,属于[Mustafaege](https://huggingface.co/Mustafaege)模型系列的一部分。
提供机构:
txchmechanicus
二维码
社区交流群
二维码
科研交流群
商业服务