Reputation
Badges 1
56 × Eureka!There has been a restart of my machine in the mean time :man-shrugging:
So only the matrix knows now I guess..
Back when I wrote this, I thought HPO does something magical for overwriting the general args of the task when cloning.
Turns out it just was my code that was missing a more explicit set_parameter
for this environment path.
I noticed poetry can be a problem in my run.
Not specifically due to the cache, but due to the installation of much more packages than the runtime might need.
When using regular pip, it will use the requirements list determined by ClearML to install necessary packages, which usually already excludes all dev-tools and similar.
I am not sure if poetry uses the cache properly, but I can't verify either atm.
Hey. I should have closed this..
The thing that I was looking for is called set_parameter
on the task.
The HPO uses a task I created previously and I had trouble with that, since it contained a path, which wasn't available on the colab instance.
I fixed my code, so it always updates this parameter depending on the environment.
It was less of an HPO issue, more of a programming failure on the function, which didn't properly update the parameter, even though I thought it should.
I ‘ m using the app.clearml server
Hem, yeah might be the case.
What’s considered large in that case?
No idea what's going on now, but I cannot reproduce the behaviour either.. also tried my old code posted here, but the warning doesn't pop up anymore.
I will inform once it pops again and will use the provided traceback function then.
I have a slight suspicion that it was indeed environment based on my local machine, but I have no idea what is the trigger for that.
It may or may not be related to this
2024-04-29 23:38:25,932 - clearml.Task - WARNING - Parameters must be of builtin ty...
Yea, but even though it's cached, it takes quite a long time, because my project has really alot of submodules, due to the submodules having their own submodules as well.
I don't really understand why fetching the submodules is the default.
None of these submodules are required for the tasks, they are there for a different part of the project dealing with data generation.
So even having them fetched (even when cached) is quite the delay on the actual task.
If there's some or any mechanism that would allow me to constrain what the task sees, it would really help me alot.
My experiments are all using YOLOv8 and they contain the data from what is gathered there automatically
It happens on all of my pipeline run attempts and there's nothing more that gives insight.
As an example:
python src/train.py
ClearML Task: created new task id=102a4f25c5ac4972abd41f1d0b6b9708
ClearML results page:
<unknown>:1: SyntaxWarning:
invalid decimal literal
<unknown>:1: SyntaxWarning:
invalid decimal literal
<unknown>:1: SyntaxWarning:
invalid decimal literal
<unknown>:1: SyntaxWarning:
invalid decimal literal
<unknown>:1: SyntaxWarning:
invalid decimal...
It comes from the PipelineDecorator.pipeline I assume or from PipelineDecorator.component
just to give an idea about the scale of the problem on my side.
These are the submodules...
`Fetching submodule lvgl_ui_generator
2024-04-27 20:45:34
Fetching submodule lvgl_ui_generator/lv_drivers
Fetching submodule lvgl_ui_generator/lvgl
Fetching submodule lvgl_ui_generator_v2
Fetching submodule lvgl_ui_generator_v2/lv_micropython
Fetching submodule lvgl_ui_generator_v2/lv_micropython/lib/asf4
2024-04-27 20:45:40
Fetching submodule lvgl_ui_generator_v2/lv_micropython/lib/axtls
Fetch...
Not that I would know of..
I attached the possible problematic argument.
The strings are just regular string, nothing fancy there.
args
:{'epochs': 3, 'imgsz': 480, 'data': '/home/rini-debian/git-stash/lvgl-ui-detector/datasets/ui_randoms.yaml'}
model_variant
:yolov8n
dataset_id
:50e10f640d7548458d9c38ab9aac571b
I am getting the same when starting regular tasks.
I think it has something to do with my paramaters, which contain an environment variable which contains a list of datasets
Alright cool!
I will check it out and let you know what it was.
Here are the codefiles for my pipelines.
They do not work yet, I am struggling with the pipeline stuff quite a bit.
But both pipelines always give these warnings.
Well.. I'll guess I'll do the workaround then of putting the main code into a submodule and have everything run from there
You mean a seperate branch to work in without the submodules linked?
Not really sure how I'd go about doing that.
I'd be more happy with an option to say 'pull_submodules=False'
The code that is run in regards to clearml is really small.
If there's no mechanism on side of clearml, I might consider just putting that codebase into it's own submodule, making it a different repo without knowledge of the others.
Here is an updated and improved version.
if anyone can tell me on how to improve the cookie situation, I'd be grateful
Yup.
I really don't know what it's about.
It doesn't affect the process. Everything seems to run fine.
If the warnings would provide a bit more info I could maybe pinpoint it better, but it's really all I got
Here is the code doing the reporting:
def capture_design(design_folder: str):
import subprocess, os, shutil
from clearml import Task
print(f"Capturing designs from {design_folder}...")
task = Task.current_task()
logger = task.get_logger()
design_files = [f for f in os.listdir(design_folder) if os.path.isfile(os.path.join(design_folder, f))]
if len(design_files) == 0:
print(f"No design files found in {design_folder}")
return
widgets = {}
...