Reputation
Badges 1
75 × Eureka!I'm doing that and it's working well
right now I'm doing
# clear existing configs in case we're rerunning the notebook
if hydra.core.global_hydra.GlobalHydra().is_initialized():
hydra.core.global_hydra.GlobalHydra.instance().clear()
# initialize Hydra
hydra.initialize(
version_base=None,
config_path=".",
job_name="test_app",
)
# use the compose API since we're running in a notebook instead of __main__
cfg = hydra.compose(
config_name="config",
overrides=[],
)
# report in ClearML Config UI
clearm...
cool, if I call clearml.binding.hydra_bind.PatchHydra._register_omegaconf(cfg)
directly inside the notebook I can manually cause it to log the Hydra config, it just doesn't seem to autodetect if you're doing a manual call to Hydra Compose
And then we want to compare backtests or just this week's estimates across multiple of those models/branches
I'm not sure if Subprojects will work for that - can you use the Web UI to compare the artifacts from two separate subprojects?
So I'm thinking maybe a Project for each thing we're forecasting, and then new Tasks for each time we run it
awesome, I'll test it out - thanks for the tips!
poking around a little bit, and clearml.backend_interface.task.repo.scriptinfo.ScriptInfo._get_jupyter_notebook_filename()
returns None
I'll give it a shot and see! Just setting up a test server now, so it's still a hypothetical question just from reading the docs so far
Just ran the same notebook in a local Jupyter Lab session and it worked as I expected it might, saving a copy to Artifacts
the server_info
is
[{'base_url': '/jupyter/default/',
'hostname': '0.0.0.0',
'password': False,
'pid': 9,
'port': 8888,
'root_dir': '/home/sagemaker-user',
'secure': False,
'sock': '',
'token': '',
'url': '
',
'version': '1.23.2'}]
but the call to jupyter_server.serverapp.list_running_servers()
does return the server
right now I can't figure out how to get the session in order to get the notebook path
But we're also testing out new models all the time, which are typically implemented as git branches - they run on the same set of inputs but don't output their results into production
Yes, I'm running a notebook in Studio. Where should it be captured?
As another test I ran Jupyter Lab locally using the same custom Docker container that we're using for Sagemaker Studio, and it works great there, just like the native local Jupyter Lab. So it's seemingly not the image, but maybe something to do with how Studio runs it as a kernel.
but the only exception handler is for requests.exceptions.SSLError
so notebook path is empty
seems like it's using None and that doesn't provide the normal api/sessions
endpoint - or, it does, but returns an empty list
I can get it to run up to here: None
it does return kernels, just not sessions
I think it just ends up in /home/sagemaker-user/{notebook}.ipynb
every time
which I looked at previously to see if I could import sagemaker.kg or kernelgateway or something, but no luck
if there are any tests/debugging you'd like me to try, just let me know
if I change it to 0.0.0.0 it works