现代大语言模型对上下文窗口的需求不断增长——128K、256K 甚至 1M tokens。单卡 GPU 无法容纳如此长的序列。Twinkle 的 Sequence Parallel 模块通过在多设备间切分序列维度来解决这一问题,结合 Ulysses All-to-All 并行与 ZigZag Ring Attention,实现近线性扩展。
Twinkle 通过全面的 monkey-patching 系统为华为昇腾 NPU 提供一等公民级别的支持,自动将标准 CUDA 算子替换为 NPU 优化的融合算子。本文介绍 kernel 架构与各项优化细节。
Twinkle 的 infra 模块提供统一的编程模型,无缝支持两种运行模式:local(单机 torchrun)和 ray(多机 Ray 集群)。本文介绍其架构设计、基于装饰器的 API,以及各模式的适用场景。
Twinkle 内置了一个终端 UI(TUI),集成 LLM Agent,可以自主启动、监控、暂停和调试 ML 训练任务。本文介绍 TUI 的架构设计、Agent 循环以及让「自动化研究」成为可能的工具系统。
Twinkle 的 Multi-LoRA 架构支持多个租户在同一份共享模型上同时训练各自独立的 LoRA 适配器。本文介绍其技术方案,涵盖 Transformers 和 Megatron 两种后端。
Twinkle 的 envs 模块在异步外部环境(代码沙箱、浏览器、游戏引擎)和同步 RL 训练循环之间架起桥梁。本文介绍 Env 抽象、EnvTool 适配器以及 OpenEnv WebSocket 客户端的设计。
我们很高兴地宣布,Twinkle 训练即服务(TaaS) 现已在魔搭社区上线!开发者可以免费体验 Twinkle 的训练 API——无需 GPU 集群。