Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escaping: Escape characters +-&|!(){}[]^"~*?:\ with \, e.g. \+
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Answered
Question About The Task And Queue In The Clearml Sdk. There Are Three Machine, Machine A(Running The Clearml Server), Machine B (Linux, Target Machine To Run Task), Machine C(Windows, My Woring Machine). B And C Already Installed Clearml-Agent. I Want T

Question about the task and queue in the clearml SDK.
There are three machine, machine A(running the clearml server), machine B (Linux, target machine to run task), machine C(windows, my woring machine). B and C already installed clearml-agent.
I want to run train.py at the remote target machine B, my steps is: first open the train.py with Visual Studio Code in machine C and
run the train.py directly in Visual Studio Code and the part of the train.py like(I already created the queue SmokeQueue):

if __name__ == '__main__':
    task = Task.init(project_name='SmokeProject', task_name='Tran_Smoke')
    Task.enqueue(task, "SmokeQueue")
    opt = parse_opt()
    main(opt)

And I got the error:

PS E:\Dev\Source\ultralytics\yolov5> & "C:/Program Files/Python37/python.exe" e:/Dev/Source/ultralytics/yolov5/train.py
ClearML Task: overwriting (reusing) task id=a33b2e6841884278a6501621024fdb83
ClearML results page: 

Traceback (most recent call last):
  File "e:/Dev/Source/ultralytics/yolov5/train.py", line 643, in <module>
    Task.enqueue(task, "SmokeQueue")
  File "C:\Program Files\Python37\lib\site-packages\clearml\task.py", line 1282, in enqueue
    res = cls._send(session=session, req=req)
  File "C:\Program Files\Python37\lib\site-packages\clearml\backend_interface\base.py", line 103, in _send
    raise SendError(res, error_msg)
clearml.backend_interface.session.SendError: Action failed <400/110: tasks.enqueue/v1.0 (Invalid task status (Invalid status change): current_status=in_progress, new_status=queued)> (queue=11aad14061a94d23b6fd1fe4da4affed, task=a33b2e6841884278a6501621024fdb83, verify_watched_queue=False)

Is that correct way to new a task from a machine to a queue in code?
If not, can you tell me the correct way to do this? Thanks~

  
  
Posted 10 months ago
Votes Newest

Answers 2


Hi @<1572395190897872896:profile|ShortWhale75> , that is not the correct way to use workers & queues.

First of all, Task.init will mark your task as running so this error makes sense.

The idea is first you run the code locally on your machine, once everything is logged (packages, repo, uncomitted changes & configurations) you can clone the task and then enqueue it into the agent.

Programmatically, you would watch to fetch an existing task in the system, clone it and then enqueue the new experiment.

  
  
Posted 10 months ago

Thanks~
I understand it now.

  
  
Posted 10 months ago