docstr: Generic data loader function
  
  :param df: Input dataframe
  :param tokenizer: bert tokenizer
  
  
  :return: Returns the constructed dataloader
docstr_tok: ["Generic","data","loader","function",":","param","df",":","Input","dataframe",":","param","tokenizer",":","bert","tokenizer",":","return",":","Returns","the","constructed","dataloader"]
code: def create_data_loader(self, source, count):
      """
      Generic data loader function
  
      :param df: Input dataframe
      :param tokenizer: bert tokenizer
  
  
      :return: Returns the constructed dataloader
      """
      ds = NewsDataset(
          source=source,
          tokenizer=self.tokenizer,
          max_length=self.MAX_LEN,
          num_samples=count,
          dataset=self.dataset,
      )
  
      return DataLoader(
          ds, batch_size=self.batch_size, num_workers=self.num_workers
      )
  
imports: import math
  import os
  import lightning
  import pandas
  import torch
  import torch.nn.functional
  import torchtext.datasets
  from lightning.pytorch.callbacks import EarlyStopping, LearningRateMonitor, ModelCheckpoint
  from lightning.pytorch.cli import LightningCLI
  from sklearn.datasets import fetch_20newsgroups
  from sklearn.metrics import accuracy_score
  from sklearn.model_selection import train_test_split
  from torch import nn
  from torch.utils.data import DataLoader
  from torch.utils.data.dataset import random_split
  from torchdata.datapipes.iter import IterDataPipe
  from torchtext.data.functional import to_map_style_dataset
  from torchtext.datasets import AG_NEWS
  from transformers import BertModel, BertTokenizer
  import mlflow.pytorch
label_desc: Use image node_id 3 for calling the BertDataModule obj's underlying member method code with example usage: obj.create_data_loader(source, count) and returns: DataLoader