code: def prepare_dpo(q):
      path = f"{get_data_dir(q)}/dpo"
      if os.path.exists(path):
          shutil.rmtree(path)
      os.makedirs(path, exist_ok=True)
      train_df = prepare_default_dataset_dpo_modeling()
      train_df.to_parquet(os.path.join(path, "train.pq"), index=False)
  
      from llm_studio.python_configs.text_dpo_modeling_config import (
          ConfigDPODataset,
      )
      from llm_studio.python_configs.text_dpo_modeling_config import (
          ConfigProblemBase as ConfigProblemBaseDPO,
      )
  
      cfg: ConfigProblemBaseDPO = ConfigProblemBaseDPO(
          dataset=ConfigDPODataset(
              train_dataframe=os.path.join(path, "train.pq"),
              system_column="system",
              prompt_column=("question",),
              answer_column="chosen",
              rejected_answer_column="rejected",
          ),
      )
  
      cfg_path = os.path.join(path, "text_dpo_modeling_config.yaml")
      save_config_yaml(cfg_path, cfg)
      dataset = Dataset(
          id=2,
          name="dpo",
          path=path,
          config_file=cfg_path,
          train_rows=train_df.shape[0],
      )
      return dataset
  
file_path: h2o-llmstudio/llm_studio/app_utils/initializers.py
imports: import logging
  import os
  import shutil
  from tempfile import NamedTemporaryFile
  from bokeh.resources import Resources
  from h2o_wave import Q, ui
  from llm_studio.app_utils.config import default_cfg
  from llm_studio.app_utils.db import Database, Dataset
  from llm_studio.app_utils.default_datasets import prepare_default_dataset_causal_language_modeling, prepare_default_dataset_dpo_modeling
  from llm_studio.app_utils.sections.common import interface
  from llm_studio.app_utils.setting_utils import load_user_settings_and_secrets
  from llm_studio.app_utils.utils import get_data_dir, get_database_dir, get_download_dir, get_output_dir, get_user_db_path, get_user_name
  from llm_studio.src.utils.config_utils import load_config_py, save_config_yaml
label_desc: Use image node_id 2 for calling a global function with example usage: prepare_dpo(q) and returns: dataset