code: def _condition_percent_limit(result, ratio: float):
      not_passing_columns = {}
      for col, baseforms in result.items():
          sum_percent = 0
          for info in baseforms.values():
              sum_percent += info["percent_variants_only_in_test"]
          if sum_percent > ratio:
              not_passing_columns[col] = format_percent(sum_percent)
  
      if not_passing_columns:
          details = (
              f"Found {len(not_passing_columns)} out of {len(result)} relevant columns with ratio of variants "
              f"above threshold: {not_passing_columns}"
          )
          return ConditionResult(ConditionCategory.FAIL, details)
      return ConditionResult(
          ConditionCategory.PASS, get_condition_passed_message(result)
      )
  
file_path: deepchecks/deepchecks/tabular/checks/train_test_validation/string_mismatch_comparison.py
imports: from typing import List, Union
  import pandas
  from deepchecks.core import CheckResult, ConditionCategory, ConditionResult
  from deepchecks.tabular import Context, TrainTestCheck
  from deepchecks.tabular.utils.feature_importance import N_TOP_MESSAGE, column_importance_sorter_df
  from deepchecks.tabular.utils.messages import get_condition_passed_message
  from deepchecks.utils.dataframes import select_from_dataframe
  from deepchecks.utils.strings import format_percent, get_base_form_to_variants_dict, is_string_column
  from deepchecks.utils.typing import Hashable
label_desc: Use image node_id 1 for calling a global function with example usage: _condition_percent_limit(result, ratio) and returns: ConditionResult, ConditionResult