Evolution
Тема интерфейса

Переключение между источниками моделей и датасетов

С помощью этой инструкции вы переключитесь между источниками моделей и датасетов, используя библиотеку switchhub.

Вы сможете переключаться между Hugging Face и Repo, не меняя привычный интерфейс.

  1. Установите утилиту switchhub.

    pip install switch-hub
  2. Создайте файл .env в корне репозитория и добавьте туда свои токены доступа. Пример файла:

    HF_TOKEN="hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Hugging Face access token
    RH_TOKEN="rh_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy" # Cloud.ru access token
  3. (Опционально) Вы можете указать токены доступа при создании объекта класса.

    Примечание

    Рекомендуется использовать способ из шага 2.

    from switch_hub import HubSwitcher
    switcher = HubSwitcher(
    hf_token="hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    rh_token="rh_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
    )
  4. Добавьте в код переключение между источниками моделей с помощью токенов.

    Пример реализации:

    from transformers import AutoModel
    from switch_hub import HubSwitcher
    # Create a class object
    switcher = HubSwitcher()
    # Switch to Hugging Face Hub
    switcher.switch_to_hf()
    # Clone the model to cache from Hugging Face
    model = AutoModel.from_pretrained('some_user/some_model')
    # Switch to Repo Cloud.ru and push the model to Repo
    switcher.switch_to_rh()
    model.push_to_hub('user_id/model_repository_name')
    # Add operation with the model if necessary
    # Clone model from Cloud.ru Repo
    model_mr = AutoModel.from_pretrained('user_id/model_repository_name')
    # Switch to Hugging Face Hub and push the updated model to Hugging Face Hub
    switcher.switch_to_hf()
    model_mr.push_to_hub("some_user/some_model")

    Где:

    • user_id – идентификатор пользователя console.cloud.ru;

    • model_repository_name – название репозитория модели.