can we pass environment variable PRODIGY_HOME directly in the prodigy.serve argument

I am trying to run multiple instances of prodigy at the same time on different ports simultaneaously on the same machine. I wanted to know if an argument can be passed, instead of setting environment variable for prodigy home. So that I can have separate settings for all running instances.

Hi! PRODIGY_HOME is currently only an environment variable. I guess you could write to os.environ in between the calls to prodigy.serve, but I'm not sure if this is going to have any side-effects.

Is the main reason you want to change the PRODIGY_HOME location the database file? If so, yo could also just pass different "db_settings" to each call to prodigy.serve via the keyword arguments. The SQLite settings also allow specifying different paths to the .db file. I haven't tested this in detail yet, but something like this should work:

prodigy.serve("...", db_settings={"path": "/custom/path1", "name": "prodigy.db"})
prodigy.serve("...", db_settings={"path": "/custom/path2", "name": "prodigy.db"})