code: def awd_lstm_lm_split(model):
      "Split a RNN `model` in groups for differential learning rates."
      groups = [
          nn.Sequential(rnn, dp)
          for rnn, dp in zip(model[0].rnns, model[0].hidden_dps)
      ]
      groups = L(
          groups
          + [
              nn.Sequential(
                  model[0].encoder, model[0].encoder_dp, model[1]
              )
          ]
      )
      return groups.map(params)
  
imports: from __future__ import annotations
  from ...data.all import *
  from ..core import *
label_desc: Use image node_id 2 for calling a global function with example usage: awd_lstm_lm_split(model) and returns: groups