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, Lets Say I'M Kaggling, As You Might Know Some "Code Competitions" Are Restricted From Internet Access. In The General Case, You Might Have Some Inference Code Running In An Environment Which Is Isolated From The Net (Data Privacy Issues And Suc

Question,

Lets say I'm Kaggling, as you might know some "Code Competitions" are restricted from internet access. In the general case, you might have some inference code running in an environment which is isolated from the net (data privacy issues and such).
Is there a way for me to manually output the necessary data, so I will later manually upload it into my trains server? My final goal is to be able to track executions (even if not in real time) in my trains server, when I can't have the code accessing the internet while running

Is there any solution for this?

  
  
Posted 4 years ago
Votes Newest

Answers 4


Yep, if communication is both ways, there is no way (that I can think of) it can be solved for offline mode.

But if the calls that are made from the server to the client can be redundant in a specific setup (some functionality will not work, but enough valuable functionality remains) then it is possible in the manual way

  
  
Posted 4 years ago

I assume that at some points in the execution, the client (where the task is running) is sending JSONs to the mongo service, and that is what we see in the web UI.
Since we are talking about a case where there is no internet available, maybe these could be dumped into files/stdout and let the user manually insert them.
The manual insertion UX could be something like a CLI copy-paste or and endpoint for files - but since your UX is so good ( 🙂 ) I'm sure you'll figure this part out better

  
  
Posted 4 years ago

Hi WackyRabbit7 ,
Your description is essentially true, however I'll just clarify that Trains uses a REST protocol, and that the calls are bidirectional. What AgitatedDove14 was referring to is that Trains replies on the responses, and doesn't only send data. This is the reason an "offline" mode is required - not only to store the data that can be later sent to the server, but also to emulate the server's response in order to allow Trains to continue operating as expected.

  
  
Posted 4 years ago

Hi WackyRabbit7 ,
Yes we had the same experience with kaggle competitions. We ended up having a flag that skipped the task init :(
Introducing offline mode is on the to do list, but to be honest it is there for a while. The thing is, since the Task object actually interacts with the backend, creating an offline mode means simulation of the backend response. I'm open to hacking suggestions though :)

  
  
Posted 4 years ago
987 Views
4 Answers
4 years ago
one year ago
Tags