Skip to content

Commit c2e07ac

Browse files
committed
AQUA. Adds handler to check wether user logged in to HF or not.
1 parent 0c17bef commit c2e07ac

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

ads/aqua/extension/common_handler.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@
88

99
import huggingface_hub
1010
import requests
11+
from huggingface_hub import HfApi
12+
from huggingface_hub.utils import LocalTokenNotFoundError
1113
from tornado.web import HTTPError
1214

1315
from ads.aqua import ODSC_MODEL_COMPARTMENT_OCID
1416
from ads.aqua.common.decorator import handle_exceptions
15-
from ads.aqua.common.errors import AquaResourceAccessError
17+
from ads.aqua.common.errors import AquaResourceAccessError, AquaRuntimeError
1618
from ads.aqua.common.utils import fetch_service_compartment, known_realm
1719
from ads.aqua.extension.base_handler import AquaAPIhandler
1820
from ads.aqua.extension.errors import Errors
@@ -96,9 +98,26 @@ def post(self, *args, **kwargs):
9698
return self.finish("success")
9799

98100

101+
class HFUserStatusHandler(AquaAPIhandler):
102+
"""Handler to check if user logged in to the HF."""
103+
104+
@handle_exceptions
105+
def get(self):
106+
try:
107+
HfApi().whoami()
108+
except LocalTokenNotFoundError:
109+
raise AquaRuntimeError(
110+
"You are not logged in. Please log in to Hugging Face using the `huggingface-cli login` command."
111+
"See https://huggingface.co/settings/tokens.",
112+
)
113+
114+
return self.finish("success")
115+
116+
99117
__handlers__ = [
100118
("ads_version", ADSVersionHandler),
101119
("hello", CompatibilityCheckHandler),
102120
("network_status", NetworkStatusHandler),
103121
("hf_login", HFLoginHandler),
122+
("hf_logged_in", HFUserStatusHandler),
104123
]

0 commit comments

Comments
 (0)