SPB Git

spb/zyquo-mlx Public MIT

The local MLX foundry for your Mac — run, fine-tune, quantize, and ship models. Nothing leaves your machine.

Swift 93.4% Python 3.8% Makefile 2.2% Shell 0.5%
1.3 KB · 44 lines swift
Raw Blame History
1//2//  HyperParams.swift3//  Zyquo MLX4//5//  Author: Simon-Pierre Boucher6//  Mail: contact@spboucher.ai7//89import Foundation1011/// Training hyperparameters. Field names/defaults mirror mlx-lm's12/// `CONFIG_DEFAULTS` exactly (docs/TRAINING-RESEARCH.md §1.2); serialized to13/// the YAML config the Python bridge consumes (`lora_parameters` and14/// `lr_schedule` are config-only upstream).15struct HyperParams: Codable, Hashable, Sendable {16    // LoRA-specific (config-only upstream)17    var rank: Int = 818    /// MLX uses a single scale factor instead of alpha/rank (default 20.0).19    var scale: Double = 20.020    var dropout: Double = 0.021    /// Target modules; nil = adapt all linear layers in targeted blocks.22    var keys: [String]?2324    // Core loop25    var numLayers: Int = 16 // -1 = all layers26    var batchSize: Int = 427    var iterations: Int = 100028    var learningRate: Double = 1e-529    var maxSeqLength: Int = 204830    var seed: Int = 03132    // Optimizer: adam | adamw | muon | sgd | adafactor33    var optimizer: String = "adam"34    var gradCheckpoint: Bool = false35    var gradAccumulationSteps: Int = 136    var maskPrompt: Bool = false3738    // Cadences39    var stepsPerReport: Int = 1040    var stepsPerEval: Int = 20041    var saveEvery: Int = 10042    var valBatches: Int = 2543}44