Mert
1ec9a60e41
feat(ml): configurable batch size for facial recognition ( #13689 )
...
* configurable batch size, default openvino to 1
* update docs
* don't add a new dependency for two lines
* fix typing
2024-10-23 07:50:28 -05:00
Mert
e7397f35c9
chore(ml): update pydantic ( #13230 )
...
* update pydantic
* fix typing
* remove unused import
* remove unused schema
2024-10-13 18:00:21 -04:00
Mert
bd826b0b9b
feat(ml): round-robin device assignment ( #13237 )
...
* round-robin device assignment
* docs and tests
clarify doc
2024-10-07 17:37:45 -04:00
Mert
a68e6be7e1
chore(ml): remove deprecated kwarg when downloading models ( #12589 )
...
remove local_dir_use_symlinks
2024-09-11 22:21:33 -05:00
Mert
22dc9bcebb
fix(ml): batch axis not being added for recognition model ( #12588 )
...
* fix has_batch_axis
* fix typing
2024-09-11 22:21:12 -05:00
Mert
036676d501
fix(ml): tokenization for webli models ( #11881 )
2024-08-18 11:05:10 -04:00
Alex
fb962f49ea
fix(ml): pydantic dep causes starting up issue ( #11773 )
...
* fix(ml): pydantic dep causes starting up issue
* revert import
2024-08-14 10:20:12 -05:00
Robert Schütz
9ed04588b8
chore(deps): update pydantic to v2 ( #11701 )
2024-08-11 12:23:11 -04:00
Mert
41580696c7
feat(ml): add more search models ( #11468 )
...
* update export code
* add uuid glob, sort model names
* add new models to ml, sort names
* add new models to server, sort by dims and name
* typo in name
* update export dependencies
* onnx save function
* format
2024-07-31 04:34:45 +00:00
renovate[bot]
b53bd8c525
fix(deps): update machine-learning ( #10740 )
...
* fix(deps): update machine-learning
* update openvino options, cuda
* update openvino build
* fix indentation
* update minimum nvidia driver
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-07-21 19:30:24 -04:00
Fynn Petersen-Frey
54488b1016
feat(ml): improved ARM-NN support ( #11233 )
2024-07-20 15:59:27 -04:00
Mert
f43721ec92
fix(ml): armnn not being used ( #10929 )
...
* fix armnn not being used, move fallback handling to main, add tests
* formatting
2024-07-10 09:20:43 -05:00
Mert
6356c28f64
refactor(ml): model sessions ( #10559 )
2024-06-25 12:00:24 -04:00
Mert
a42af06889
fix(ml): limit load retries ( #10494 )
2024-06-20 14:13:18 -04:00
Mert
2b1b43a7e4
feat(ml): composable ml ( #9973 )
...
* modularize model classes
* various fixes
* expose port
* change response
* round coordinates
* simplify preload
* update server
* simplify interface
simplify
* update tests
* composable endpoint
* cleanup
fixes
remove unnecessary interface
support text input, cleanup
* ew camelcase
* update server
server fixes
fix typing
* ml fixes
update locustfile
fixes
* cleaner response
* better repo response
* update tests
formatting and typing
rename
* undo compose change
* linting
fix type
actually fix typing
* stricter typing
fix detection-only response
no need for defaultdict
* update spec file
update api
linting
* update e2e
* unnecessary dimension
* remove commented code
* remove duplicate code
* remove unused imports
* add batch dim
2024-06-07 03:09:47 +00:00
CodaBool
6a4c2e97c0
feat: add docker healthchecks to server and ml ( #9583 )
...
* add healthcheck
* format, import, IMMICH_PORT, and eslint change
* chore: clean up nodejs healthcheck
* fix ruff formating
* add healthcheck
* format, import, IMMICH_PORT, and eslint change
* chore: clean up nodejs healthcheck
* fix ruff formating
* add healthcheck to dockerfile
* poetry run ruff check --fix
* removed 2 of 3 console calls
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-05-22 16:54:29 +00:00
Jason Rasmussen
4807fc40a6
refactor!: LOG_LEVEL => IMMICH_LOG_LEVEL ( #9557 )
...
refactor: LOG_LEVEL => IMMICH_LOG_LEVEL
2024-05-17 11:44:22 -04:00
renovate[bot]
640f53fe0a
fix(deps): update dependency pillow to v10.3.0 [security] ( #8493 )
...
* fix(deps): update dependency pillow to v10.3.0 [security]
* fix typing
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-04-11 05:48:09 +00:00
Davide
e8f0f82db0
feat(ml): add cache_dir option to OpenVINO EP ( #8018 )
...
* add cache_dir option to OpenVINO EP
* update provider options test to include cache_dir
* use forward slash instead of string concatenation
* fix cache_dir placement in provider options assertion
2024-03-17 13:48:59 -04:00
Mert
3a045b33ca
chore(deps): update onnxruntime-openvino ( #7854 )
2024-03-16 00:04:45 -04:00
DawidPietrykowski
e8b001f62f
feat: preloading of machine learning models ( #7540 )
2024-03-03 19:48:56 -05:00
Mert
7e18e69c1c
fix(ml): only use openvino if a gpu is available ( #7450 )
...
use `device_type`
2024-02-27 00:45:14 -05:00
Sourav Agrawal
2a75f884d9
Fix Smart Search when using OpenVINO ( #7389 )
...
* Fix external_path loading in OpenVINO EP
* Fix ruff lint
* Wrap block in try finally
* remove static input shape code
* add unit test
* remove unused imports
* remove repeat line
* linting
* formatting
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-02-24 18:22:27 -05:00
renovate[bot]
2b8ec30767
chore(deps): update machine-learning (major) ( #6934 )
...
* chore(deps): update machine-learning
* formatting
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-02-12 22:29:15 -05:00
Fynn Petersen-Frey
49c378d706
fix(ml): re-enable ARMNN integration ( #7053 )
2024-02-12 13:29:55 -05:00
Mert
0c4df216d7
feat(ml): improve test coverage ( #7041 )
...
* update e2e
* tokenizer tests
* more tests, remove unnecessary code
* fix e2e setting
* add tests for loading model
* update workflow
* fixed test
2024-02-11 17:58:56 -05:00
Mert
c9b7f4e690
chore(ml): make execution provider log info-level ( #7024 )
...
* change debug log to info
* update test
2024-02-11 06:12:11 +00:00
Mert
79d3342c3d
fix(ml): openvino not working with dynamic axes ( #6871 )
...
* convert to static
* add comment about gross code
* formatting
* fixed test
* fix typing
* cleanup
* formatting
* Revert "formatting"
This reverts commit 073965c47e
.
* Revert "cleanup"
This reverts commit bb56bd3297
.
* formatting
2024-02-03 05:35:26 +00:00
Mert
f52994e8ca
fix(ml): model paths not working ( #6705 )
...
* fix str enum string repr
* fixed typing
2024-01-28 20:54:33 +00:00
Mert
a84b6f5fb1
feat(ml): conditionally download .armnn models ( #6650 )
2024-01-28 10:31:59 -05:00
Mert
2249f7d42a
fix(ml): handle missing context_length
field ( #6695 )
...
* handle missing `context_length` field
* specify list type
2024-01-27 19:50:50 -05:00
Mert
ca28e1e7a8
fix(ml): error logging ( #6646 )
...
* fix ml error logging
* exclude certain libraries from traceback
2024-01-26 00:26:27 +00:00
Mert
95cfe22866
feat(ml)!: cuda and openvino acceleration ( #5619 )
...
* cuda and openvino ep, refactor, update dockerfile
* updated workflow
* typing fixes
* added tests
* updated ml test gh action
* updated README
* updated docker-compose
* added compute to hwaccel.yml
* updated gh matrix
updated gh matrix
updated gh matrix
updated gh matrix
updated gh matrix
give up
* remove cuda/arm64 build
* add hwaccel image tags to docker-compose
* remove unnecessary quotes
* add suffix to git tag
* fixed kwargs in base model
* armnn ld_library_path
* update pyproject.toml
* add armnn workflow
* formatting
* consolidate hwaccel files, update docker compose
* update hw transcoding docs
* add ml hwaccel docs
* update dev and prod docker-compose
* added armnn prerequisite docs
* support 3.10
* updated docker-compose comments
* formatting
* test coverage
* don't set arena extend strategy for openvino
* working openvino
* formatting
* fix dockerfile
* added type annotation
* add wsl configuration for openvino
* updated lock file
* copy python3
* comment out extends section
* fix platforms
* simplify workflow suffix tagging
* simplify aio transcoding doc
* update docs and workflow for `hwaccel.yml` change
* revert docs
2024-01-21 18:22:39 -05:00
Mert
68f52818ae
feat(server): separate face clustering job ( #5598 )
...
* separate facial clustering job
* update api
* fixed some tests
* invert clustering
* hdbscan
* update api
* remove commented code
* wip dbscan
* cleanup
removed cluster endpoint
remove commented code
* fixes
updated tests
minor fixes and formatting
fixed queuing
refinements
* scale search range based on library size
* defer non-core faces
* optimizations
removed unused query option
* assign faces individually for correctness
fixed unit tests
remove unused method
* don't select face embedding
update sql
linting
fixed ml typing
* updated job mock
* paginate people query
* select face embeddings because typeorm
* fix setting face detection concurrency
* update sql
formatting
linting
* simplify logic
remove unused imports
* more specific delete signature
* more accurate typing for face stubs
* add migration
formatting
* chore: better typing
* don't select embedding by default
remove unused import
* updated sql
* use normal try/catch
* stricter concurrency typing and enforcement
* update api
* update job concurrency panel to show disabled queues
formatting
* check jobId in queueAll
fix tests
* remove outdated comment
* better facial recognition icon
* wording
wording
formatting
* fixed tests
* fix
* formatting & sql
* try to fix sql check
* more detailed description
* update sql
* formatting
* wording
* update `minFaces` description
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-18 00:08:48 -05:00
Mert
e2666f0e74
fix(ml): remove unused import ( #6356 )
...
* remove unused import
* formatting
2024-01-13 00:25:26 -05:00
renovate[bot]
20be42cec0
chore(deps): update machine-learning ( #6302 )
...
* chore(deps): update machine-learning
* fix typing, use new lifespan syntax
* wrap in try / finally
* move log
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-01-13 05:00:09 +00:00
Fynn Petersen-Frey
753292956e
feat(ml): ARMNN acceleration ( #5667 )
...
* feat(ml): ARMNN acceleration for CLIP
* wrap ANN as ONNX-Session
* strict typing
* normalize ARMNN CLIP embedding
* mutex to handle concurrent execution
* make inputs contiguous
* fine-grained locking; concurrent network execution
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-01-11 18:26:46 +01:00
renovate[bot]
3edc87f684
fix(deps): update machine-learning ( #5180 )
...
* fix(deps): update machine-learning
* updated ruff command
* use isinstance
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2023-12-25 22:37:48 -05:00
Mert
092a23fd7f
feat(server,ml): remove image tagging ( #5903 )
...
* remove image tagging
* updated lock
* fixed tests, improved logging
* be nice
* fixed tests
2023-12-20 20:47:56 -05:00
Mohamed BOUSSAID
7839be3b49
Adding the new models to the whitelist ( #5736 )
2023-12-15 22:45:14 +00:00
Mert
d729c863c8
chore(ml): improve shutdown ( #5689 )
2023-12-14 13:51:24 -06:00
Mert
ddf04a7eb4
chore(ml): increase spool threshold to 64MiB ( #5176 )
2023-11-20 09:05:35 -06:00
Mert
a6af4892e3
fix(ml): better model unloading ( #3340 )
...
* restart process on inactivity
* formatting
* always update `last_called`
* load models sequentially
* renamed variable, updated docs
* formatting
* made poll env name consistent with model ttl env
2023-11-16 20:42:44 -06:00
Mert
291159e7fc
fixed tests ( #5017 )
2023-11-13 19:37:39 +00:00
Mert
935f471ccb
chore(ml): use strict mypy ( #5001 )
...
* improved typing
* improved export typing
* strict mypy & check export folder
* formatting
* add formatting checks for export folder
* re-added init call
2023-11-13 10:18:46 -06:00
Mert
328a58ac0d
feat(ml): add face models ( #4952 )
...
added models to config dropdown
fixed downloading
updated tests
use hf for face models
formatting
2023-11-11 19:04:49 -06:00
Mert
87a0ba3db3
feat(ml): export clip models to ONNX and host models on Hugging Face ( #4700 )
...
* export clip models
* export to hf
refactored export code
* export mclip, general refactoring
cleanup
* updated conda deps
* do transforms with pillow and numpy, add tokenization config to export, general refactoring
* moved conda dockerfile, re-added poetry
* minor fixes
* updated link
* updated tests
* removed `requirements.txt` from workflow
* fixed mimalloc path
* removed torchvision
* cleaner np typing
* review suggestions
* update default model name
* update test
2023-10-31 05:02:04 -05:00
Mert
d8ecefaea5
chore(ml): removed vit-b check and st warning ( #4422 )
2023-10-10 12:26:30 -05:00
Mert
258b98c262
fix(ml): load models in separate threads ( #4034 )
...
* load models in thread
* set clip mode logs to debug level
* updated tests
* made fixtures slightly less ugly
* moved responses to json file
* formatting
2023-09-09 16:02:44 +07:00
Mert
3cf0f5f11b
fix(ml): model downloading improvements ( #3988 )
...
* handle ort `NoSuchFile` error, stricter file check
* keep exception order
2023-09-06 08:48:40 +07:00