code: def load_yago3_10(
      check_md5hash=False, clean_unseen=True, add_reciprocal_rels=False
  ):
      """Load the YAGO3-10 dataset.
  
      The dataset is a split of YAGO3 :cite:`mahdisoltani2013yago3`,
      and has been first presented in :cite:`DettmersMS018`.
  
      The YAGO3-10 dataset is loaded from file if it exists at the ``AMPLIGRAPH_DATA_HOME`` location.
      If ``AMPLIGRAPH_DATA_HOME`` is not set, the default  ``~/ampligraph_datasets`` is checked.
      If the dataset is not found at either location it is downloaded and placed in ``AMPLIGRAPH_DATA_HOME``
      or ``~/ampligraph_datasets``.
  
      This dataset is divided in three splits:
  
      - `train`: 1,079,040 triples
      - `valid`: 5,000 triples
      - `test`: 5,000 triples
  
      ========= ========= ======= ======= ============ ===========
       Dataset  Train     Valid   Test    Entities     Relations
      ========= ========= ======= ======= ============ ===========
      YAGO3-10  1,079,040 5,000   5,000   123,182       37
      ========= ========= ======= ======= ============ ===========
  
      Parameters
      ----------
      check_md5hash: bool
          If `True` check the md5hash of the files (default: `False`).
  
      clean_unseen: bool
          If `True`, filters triples in validation and test sets that include entities not present in the training set.
  
      add_reciprocal_rels: bool
          Flag which specifies whether to add reciprocal relations. For every <s, p, o> in the dataset
          this creates a corresponding triple with reciprocal relation <o, p_reciprocal, s> (default:`False`).
  
      Returns
      -------
  
      splits: dict
          The dataset splits: `{'train': train, 'valid': valid, 'test': test}`. Each split is a ndarray of shape (n, 3).
  
      Example
      -------
  
      >>> from ampligraph.datasets import load_yago3_10
      >>> X = load_yago3_10()
      >>> X["valid"][0]
      array(['Mikheil_Khutsishvili', 'playsFor', 'FC_Merani_Tbilisi'], dtype=object)
  
      """
      yago3_10 = DatasetMetadata(
          dataset_name="YAGO3-10",
          filename="YAGO3-10.zip",
          url="https://s3-eu-west-1.amazonaws.com/ampligraph/datasets/YAGO3-10.zip",
          train_name="train.txt",
          valid_name="valid.txt",
          test_name="test.txt",
          train_checksum="a9da8f583ec3920570eeccf07199229a",
          valid_checksum="2d679a906f2b1ac29d74d5c948c1ad09",
          test_checksum="14bf97890b2fee774dbce5f326acd189",
      )
  
      if clean_unseen:
          return _clean_data(
              _load_dataset(
                  yago3_10,
                  data_home=None,
                  check_md5hash=check_md5hash,
                  add_reciprocal_rels=add_reciprocal_rels,
              )
          )
      else:
          return _load_dataset(
              yago3_10,
              data_home=None,
              check_md5hash=check_md5hash,
              add_reciprocal_rels=add_reciprocal_rels,
          )
  
imports: import hashlib
  import json
  import logging
  import os
  import urllib
  import zipfile
  from collections import namedtuple
  from pathlib import Path
  import numpy
  import pandas
label_desc: Use image node_id 15 for calling a global function with example usage: load_yago3_10(check_md5hash, clean_unseen, add_reciprocal_rels) and returns: _clean_data, _load_dataset