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
Hi Guys, With The New Venv Caching Available In Clearml, I Have The Following Problem: I Force My Pip Requirements To Be:

Hi guys, with the new venv caching available in clearml, I have the following problem: I force my pip requirements to be:
torch==1.7.1 pytorch-ignite clearml . # Local python packageThe problem is that when using venv caching, clearml does not detect that its a new version, and reuses the old venv cached. Would it be possible to enforce always reinstalling "." if it is passed?

  
  
Posted 3 years ago
Votes Newest

Answers 30


AgitatedDove14 Should I create an issue for this to keep track of it?

  
  
Posted 3 years ago

So there will be no concurrent cached files access in the cache dir?

  
  
Posted 3 years ago

JitteryCoyote63 sure, this is how it was designed to work 🙂

  
  
Posted 3 years ago

I'm hoping we are ready to release

  
  
Posted 3 years ago

venv mode 🙂

  
  
Posted 3 years ago

JitteryCoyote63 instead of _update_requirements, call the following before Task.init:
Task.add_requirements('torch', '1.3.1') Task.add_requirements('git+ ')

  
  
Posted 3 years ago

ok, but will it install as expected the engine and its dependencies?

  
  
Posted 3 years ago

I had this problem before

  
  
Posted 3 years ago

Hurray ?

  
  
Posted 3 years ago

Since my deps are listed in the dependencies of my setup.py, I don't want clearml to list the dependencies of the current environment

Make sense 🙂
Okay let me check regrading the "." in the venv cache.

  
  
Posted 3 years ago

ok, now I actually remember why I used _update_requirements instead of add_requirements: The first overwrites all the other, the later only add to the already detected packages. Since my deps are listed in the dependencies of my setup.py, I don't want clearml to list the dependencies of the current environment

  
  
Posted 3 years ago

awesome thanks!

  
  
Posted 3 years ago

This is new right? it detects the local package, uninstalls it and reinstalls it?

  
  
Posted 3 years ago

AgitatedDove14 The first time it installs and create the cache for the env, the second time it fails with:
Applying uncommitted changes ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found. clearml_agent: ERROR: Command '['/home/user/.clearml/venvs-builds.1/3.6/bin/python', '-m', 'pip', '--disable-pip-version-check', 'install', '-r', '/tmp/cached-reqsmncaxx45.txt']' returned non-zero exit status 1.

  
  
Posted 3 years ago

since we removed "." from the requirements?

  
  
Posted 3 years ago

JitteryCoyote63

So there will be no concurrent cached files access in the cache dir?

No concurrent creation of the same entry 🙂 It is optimized...

  
  
Posted 3 years ago

Sorry I missed the additional "." in the _update_requirements
Let me check ....

  
  
Posted 3 years ago

Installing collected packages: my-engine Attempting uninstall: my-engine Found existing installation: my-engine 1.0.0 Uninstalling my-engine-1.0.0: Successfully uninstalled my-engine-1.0.0 Successfully installed my-engine-1.0.0

  
  
Posted 3 years ago

Thanks a lot AgitatedDove14 !

  
  
Posted 3 years ago

JitteryCoyote63 I found it 🙂
Are you working in docker mode or venv mode ?

  
  
Posted 3 years ago

I carry this code from older versions of trains to be honest, I don't remember precisely why I did that

  
  
Posted 3 years ago

Looks like its a hurray then 😄 🎉 🍾

  
  
Posted 3 years ago

yes, in the code, i do:
task._wait_for_repo_detection() REQS_TASK = ["torch==1.3.1", "pytorch-ignite @ git+ ", "."] task._update_requirements(REQS_TASK) task.execute_remotely(queue_name=args.queue, clone=False, exit_process=True)

  
  
Posted 3 years ago

Great, you can test directly from the master 🙂
pip3 install -U git+

  
  
Posted 3 years ago

JitteryCoyote63 could you test the latest RC 😉
pip install clearml-agent==0.17.2rc4

  
  
Posted 3 years ago

Yey!

  
  
Posted 3 years ago

Hmm I assume it is not running from the code directory...
(I'm still amazed it worked the first time)
Are you actually using "." ?

  
  
Posted 3 years ago

Task.add_requirements('.')Should work

  
  
Posted 3 years ago

Yep 🙂

  
  
Posted 3 years ago

AgitatedDove14 I have a machine with two gpus and one agent per GPU. I provide the same trains.conf to both agents, so they use the same directory for caching venvs. Can it be problematic?

  
  
Posted 3 years ago
922 Views
30 Answers
3 years ago
one year ago
Tags