{"action":"created","issue":{"url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/426","repository_url":"https://api.github.com/repos/RasaHQ/rasa_nlu","labels_url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/426/labels{/name}","comments_url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/426/comments","events_url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/426/events","html_url":"https://github.com/RasaHQ/rasa_nlu/pull/426","id":234862433,"number":426,"title":"Flask to klein strikes back","user":{"login":"PHLF","id":10827301,"avatar_url":"https://avatars2.githubusercontent.com/u/10827301?v=3","gravatar_id":"","url":"https://api.github.com/users/PHLF","html_url":"https://github.com/PHLF","followers_url":"https://api.github.com/users/PHLF/followers","following_url":"https://api.github.com/users/PHLF/following{/other_user}","gists_url":"https://api.github.com/users/PHLF/gists{/gist_id}","starred_url":"https://api.github.com/users/PHLF/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PHLF/subscriptions","organizations_url":"https://api.github.com/users/PHLF/orgs","repos_url":"https://api.github.com/users/PHLF/repos","events_url":"https://api.github.com/users/PHLF/events{/privacy}","received_events_url":"https://api.github.com/users/PHLF/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":12,"created_at":"2017-06-09T15:28:57Z","updated_at":"2017-06-23T14:13:00Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/RasaHQ/rasa_nlu/pulls/426","html_url":"https://github.com/RasaHQ/rasa_nlu/pull/426","diff_url":"https://github.com/RasaHQ/rasa_nlu/pull/426.diff","patch_url":"https://github.com/RasaHQ/rasa_nlu/pull/426.patch"},"body":"**Proposed changes**:\r\n- [X] Replacing flask by Klein for handling asynchronous request\r\n- [ ] Rasa logic should work with agents [(endpoints)](https://rasa-nlu.readthedocs.io/en/stable/http.html#section-http-config) instead of models.\r\n\r\n**Status**:\r\n- [X] ready for code review\r\n- [X] there are tests for the functionality\r\n- [ ] documentation updated\r\n- [ ] changelog updated\r\n\r\n**Issues introduced by this change**:\r\n- ~~https://github.com/joblib/joblib/issues/180~~\r\n\r\nSo this is just a working draft currently only handling asynchronous training request. As mentioned it introduced an issue related to sklearn and joblibs but that may be circumvented. The idea behind this is to enhance how RASA handles multiple apps to be on par with services like api.ai.\r\nIndeed when you have a client sending a training request like this `127.0.0.1:5000/train?name=agent_A` you expect your agent (endpoint) to still be available for parsing requests and updated with the newly trained model once available (updating the server config `server_model_dirs` with a callback using DeferredLock to prevent unsafe concurrent access). So models would be a way to version your agent:\r\n\r\n- agent_A\r\n  - model_YYYYMMDD-HHMMSS (model actually in use)\r\n  - model_YYYYMMDD-HHMMSS\r\n  - model_YYYYMMDD-HHMMSS\r\n  - ...\r\n- agent_B\r\n  - model_YYYYMMDD-HHMMSS\r\n  - ...\r\n\r\nThis may collide with online training if you ever plan to implement it but I don't really think online training would give any greater benefits (at least in a backend context). What do you think?"},"comment":{"url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/comments/310676213","html_url":"https://github.com/RasaHQ/rasa_nlu/pull/426#issuecomment-310676213","issue_url":"https://api.github.com/repos/RasaHQ/rasa_nlu/issues/426","id":310676213,"user":{"login":"tmbo","id":1098412,"avatar_url":"https://avatars0.githubusercontent.com/u/1098412?v=3","gravatar_id":"","url":"https://api.github.com/users/tmbo","html_url":"https://github.com/tmbo","followers_url":"https://api.github.com/users/tmbo/followers","following_url":"https://api.github.com/users/tmbo/following{/other_user}","gists_url":"https://api.github.com/users/tmbo/gists{/gist_id}","starred_url":"https://api.github.com/users/tmbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tmbo/subscriptions","organizations_url":"https://api.github.com/users/tmbo/orgs","repos_url":"https://api.github.com/users/tmbo/repos","events_url":"https://api.github.com/users/tmbo/events{/privacy}","received_events_url":"https://api.github.com/users/tmbo/received_events","type":"User","site_admin":false},"created_at":"2017-06-23T14:13:00Z","updated_at":"2017-06-23T14:13:00Z","body":"No worries :D"}}
{"actor":{"display_login":"tmbo"}}