kda#
KDA adapter for serving-aligned recurrent-state QAT.
Functions
Adapt Megatron's FLA-style KDA call to serving-aligned state QAT. |
- kda_state_qat(q, k, v, g, beta, *, policy, state_quantizer=None, scale=None, initial_state=None, output_final_state=False, use_qk_l2norm_in_kernel=False, use_gate_in_kernel=False, use_beta_sigmoid_in_kernel=False, allow_neg_eigval=False, A_log=None, dt_bias=None, safe_gate=False, lower_bound=None, cu_seqlens=None, cu_seqlens_cpu=None, state_v_first=False, chunk_size=64, cp_context=None, disable_recompute=False, return_intermediate_states=False, prefill_lengths=None, sequence_lengths=None, gate_inputs=None)#
Adapt Megatron’s FLA-style KDA call to serving-aligned state QAT.
Prepare per-key-channel gates and optional beta activation using FLA’s formula. The shared training forward runs the chunked prefix and recurrent suffix with native forward values and configured state QDQ. FLA supplies the prefix backward; a Torch recurrence supplies the suffix adjoint.
state_quantizerowns state QDQ; passing None or a disabled quantizer retains the unquantized native path.