Releases: zauberzeug/learning_loop_node
v0.14.0
Detector features:
New handling of image uploads. As there will be an upload throttle mechanism in the learning loop, we had to make sure that the outbox will not grow infinitely. There are now two queues in the outbox, a priority queue and a normal queue. Regular images to upload (e.g. selected by the detection step) are added to the normal queue which is cut off at 1000 images. when using the upload functions (sio or rest) it is possible to declare an image as priority. The images in this queue will be uploaded first and never thrown away.
Detector breaking change:
The abstract method evaluate
which needs to be implemented by detectors now provides the raw jpg image bytes instead of a semi-converted np.array. This means if the detector uses cv2, reading the file can be done with cv_image = cv2.imdecode(np.frombuffer(image, np.uint8), cv2.IMREAD_COLOR)
. Alternatively PIL could be used as well.
v0.13.7
Detector fixes:
- Handle scenario where the download of model files would time out (e.g. due to a slow internet connection).
- Increase timeout time
- Properly handle timeout error and fix check if model is existing
v0.13.6
Detector Nodes
- Fix problems with model updates
v0.13.5
Detector fixes:
- Make sure the detector does not end up in an endless retry loop if initialization of the model fails
v0.13.4
Detector config:
- Set sio data limit to 20 MB
v0.13.3
v0.13.2
v0.13.1
Detector fix:
Improve behavior when the target model is changed to speed up the change between already downloaded models. Downloaded models will only be compiled if necessary.
v0.13.0
Detector SIO Interface:
- Add endpoints to control versioning mode and get current versioning info (
set_model_version_mode
,get_model_version
) - Add endpoints to get
about
info (same response as the corresponding REST endpoint) - Add endpoints to control outbox mode (
get_outbox_mode
,set_outbox_mode
) - Breaking change: All SIO responses are now dicts. This affects the response of the
info
endpoint which now returns{"status": "No model loaded"}
if no model is loaded.
All Nodes:
- Changes of the node status are now logged with level INFO
Further Breaking Changes:
- Enums are moved to own module
v0.12.1
Improvements:
- Handle 429 (too many requests). When communicating with a learning loop instance via the REST interface the server may respond with 429 when it has to handle too many requests. We extended the loop communication module (used by all nodes) with a retry mechanism to retry the call several times with a delay between all attempts.