def get_batch(data_iterator, args):
    """
    Generate a batch func.
    input schema:
        data_iterator: data iterator that implements the torch.utils.data.DataLoader interface
        args: user defined arguments dictionary
    output schema：
        dictionary (python dict()): a dictionary that contains all data used in the model forward step
    """
    data = next(data_iterator)

    user_id = data[args.consts["FIELD_USER_ID"]].long()
    target_id = data[args.consts["FIELD_TARGET_ID"]].long()
    clk_seq = data[args.consts["FIELD_CLK_SEQUENCE"]].long()
    label = data[args.consts["FIELD_LABEL"]].long()
    group_id = data[args.consts["FIELD_GROUP_ID"]].long()

    data = {
        args.consts["FIELD_USER_ID"]: user_id,
        args.consts["FIELD_TARGET_ID"]: target_id,
        args.consts["FIELD_CLK_SEQUENCE"]: clk_seq,
        args.consts["FIELD_LABEL"]: label,
        args.consts["FIELD_GROUP_ID"]: group_id
    }
    return data