code: def prepare(project):
      # given
      run = neptune.init_run(
          name="Pytorch-Lightning integration", project=project
      )
      # and
      model_checkpoint = ModelCheckpoint(
          dirpath="my_model/checkpoints/",
          filename="{epoch:02d}-{valid/loss:.2f}",
          save_weights_only=True,
          save_top_k=2,
          save_last=True,
          monitor="valid/loss",
          every_n_epochs=1,
      )
      neptune_logger = NeptuneLogger(run=run, prefix="custom_prefix")
      # and (Subject)
      model = BoringModel()
      trainer = Trainer(
          limit_train_batches=1,
          limit_val_batches=1,
          log_every_n_steps=1,
          max_epochs=3,
          logger=neptune_logger,
          callbacks=[model_checkpoint],
      )
      train_data = DataLoader(RandomDataset(32, 64), batch_size=2)
      val_data = DataLoader(RandomDataset(32, 64), batch_size=2)
      test_data = DataLoader(RandomDataset(32, 64), batch_size=2)
  
      # then
      trainer.fit(
          model, train_dataloaders=train_data, val_dataloaders=val_data
      )
      trainer.test(model, dataloaders=test_data)
      run.sync()
  
      return run
  
imports: import os
  import re
  import pytest
  import pytorch_lightning
  import torch
  from pytorch_lightning import LightningModule, Trainer
  from pytorch_lightning.callbacks import ModelCheckpoint
  from pytorch_lightning.loggers.neptune import NeptuneLogger
  from torch.utils.data import DataLoader, Dataset
  import neptune
  from tests.e2e.base import BaseE2ETest
label_desc: Use image node_id 1 for calling a global function with example usage: prepare(project) and returns: run