Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Request for step-by-step SFT (single & multi-task) pipeline guidance for MFTCoder

未关闭
#91 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
25/100
Issue 类型
文档
描述清晰度
需要澄清
活跃度
停滞
技术栈
python

调研方向

首先比较 mftcoder_accelerate 和 mftcoder_atorch 分支,然后阅读 build_model.py 和 atorch_trainer.py,追踪现有的 SFT 入口。记录所需的数据 schema、单任务和多任务的命令或配置、loss 和评估选项,以及可复现性指南;完成的标准是新手能够运行并评估两种 SFT 变体。

由索引模型根据 Issue 内容生成。

描述

Hello MFTCoder authors 👋,

First, thank you for releasing MFTCoder: Boosting Code LLMs with Multitask Fine-Tuning and sharing the code. I’m a 3rd year PhD student currently attempting to reproduce your SFT experiments (both single-task and multi-task baselines) using the repo.

I’ve successfully set up the environment (conda, CUDA 12.x; multi-GPU available) and explored the repo (e.g., build_model.py, atorch_trainer.py). However, I’m still unclear on the exact SFT pipelines. Could you please clarify or provide a minimal set of example scripts/configs?

What I’m Hoping To Clarify

  1. Data Loading & Formats
    • Expected JSON/JSONL schema per task (fields for input/output, roles, label masking).
    • Where task IDs / TASK2ID are defined and how they map to datasets.

  2. SFT-Single (SFT-S-*)
    • One concrete command (e.g., CodeLlama-13B-Python + QLoRA) to fine-tune on a single task (e.g., text-to-code or code completion).
    • Example config/flags for:
    • optimizer, LR schedule
    • max sequence length
    • gradient accumulation
    • PEFT settings (LoRA/QLoRA)

  3. SFT-Mixed (Multi-task)
    • How to specify multiple datasets in one run (CLI flags vs config file).
    • Task sampling/mixing policy: uniform vs size-based?
    • How to switch between:
    • sample-count weighted loss
    • valid-token weighted loss
    • Any recommendations on per-task batch sizes or temperature scaling.

  4. Loss Functions
    • Confirmation that SFT experiments used cross-entropy with weighted loss.
    • Whether focal loss or FAMO were excluded in the official SFT baseline results.
    • The exact flag names to enable:
    • weighted by valid tokens
    • weighted by samples

  5. Evaluation
    • Commands to evaluate on:
    • HumanEval / HumanEval-X
    • MBPP
    • CodeFuseEval
    • pass@k evaluation protocol, execution-based scoring, and seeds for reproducibility.

  6. Reproducibility
    • Example run logs or expected training curves.
    • Early stopping criteria and typical step counts.
    • Any specific branches (e.g., mftcoder_accelerate vs mftcoder_atorch) that contain the canonical SFT scripts.

主要语言
Python
星标
711
派生
69
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

codefuse-ai/MFTCoder 的其他 Issue

查看 codefuse-ai/MFTCoder 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。