# picaso-engine ML faceid workflow
## Overview
This is a helper library for picaso-engine ML faceid workflow product. The idea of this library is to wrap all reusable code to simplify and improve workflow implementation.
Supported functionality:
- API to communicate with RabbitMQ for event receiver/producer
- Workflow call helper
- Logger call helper
- Rate-limiting strategies
- Computing vector similarity helper (ex. Face Similarity Search)
## Author
picaso-engine ML (https://pypi.org/project/faceid-lib/), Dani Gunawan
## Instructions
Version number should be updated in __init__.py and pyproject.toml
1. Install Poetry
```
pip install poetry
```
2. Add pika and requests libraries
```
poetry add pika
poetry add requests
```
3. Build
```
poetry lock --no-update
poetry install
poetry build
```
4. Publish to TestPyPI
```
poetry publish -r testpypi
```
5. Install from TestPyPI
```
pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple faceid-lib
```
6. Publish to PyPI
```
poetry publish
```
7. Install from PyPI
```
pip install faceid-lib
```
8. Test imported library from CMD
```
python -m faceid_lib
```
9. Import EventReceiver
```
from faceid_lib.events.event_receiver import EventReceiver
```
10. Import EventProducer
```
from faceid_lib.events.event_producer import EventProducer
```
11. Import FastAPILimiter, RateLimiter
```
from faceid_lib.ratelimiter import FastAPILimiter
from faceid_lib.ratelimiter.depends import RateLimiter
```
## Structure
```
.
├── LICENSE
├── poetry.lock
├── pyproject.toml
├── faceid_lib
│ ├── __init__.py
│ ├── __main__.py
│ ├── events
│ ├── __init__.py
│ ├── event_producer.py
│ └── event_receiver.py
│ ├── ratelimiter
│ ├── __init__.py
│ └── depends.py
│ ├── logger
│ ├── __init__.py
│ └── logger_helper.py
│ ├── workflow
│ ├── __init__.py
│ └── workflow_helper.py
│ ├── vector_similarity
│ ├── __init__.py
│ ├── v1
│ ├── __init__.py
│ └── power.py
└── README.md
```
## Changelogs 2.0.0 - 2.0.1 (2023-05-02)
- compute similarity helper
## Changelogs 1.0.9 (2022-06-14)
- modify response & handler
## Changelogs 1.0.5 (2021-10-24)
- downgrade pika version to 1.1.0
## Changelogs 1.0.4 (2021-10-24)
- enhancment rate limiting
## License
Licensed under the Apache License, Version 2.0. Copyright 2020-2021 picaso-engine ML, Dani Gunawan.
Raw data
{
"_id": null,
"home_page": "https://gitlab.playcourt.id/picaso-faceid/picaso-faceid-engine/v1/faceid-lib",
"name": "faceid-lib",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7,<4.0",
"maintainer_email": "",
"keywords": "machine learning,Deep Learning,Message Broker,Distributed System,pipeline,rabbitmq,ratelimiter",
"author": "Dani Gunawan",
"author_email": "danigunawan.elektroug@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/9b/c9/22dfd851adc33c24b55df4532254dc443562523dda814a6f0a72db907941/faceid-lib-3.0.0.tar.gz",
"platform": null,
"description": "# picaso-engine ML faceid workflow\n\n## Overview\n\nThis is a helper library for picaso-engine ML faceid workflow product. The idea of this library is to wrap all reusable code to simplify and improve workflow implementation.\n\nSupported functionality:\n\n- API to communicate with RabbitMQ for event receiver/producer\n- Workflow call helper\n- Logger call helper\n- Rate-limiting strategies\n- Computing vector similarity helper (ex. Face Similarity Search)\n\n## Author\npicaso-engine ML (https://pypi.org/project/faceid-lib/), Dani Gunawan\n\n## Instructions\nVersion number should be updated in __init__.py and pyproject.toml\n\n1. Install Poetry\n\n```\npip install poetry\n```\n\n2. Add pika and requests libraries\n\n```\npoetry add pika\npoetry add requests\n```\n\n3. Build\n\n```\npoetry lock --no-update\npoetry install\npoetry build\n```\n\n4. Publish to TestPyPI\n\n```\npoetry publish -r testpypi\n```\n\n5. Install from TestPyPI\n\n```\npip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple faceid-lib\n```\n\n6. Publish to PyPI\n\n```\npoetry publish\n```\n\n7. Install from PyPI\n\n```\npip install faceid-lib\n```\n\n8. Test imported library from CMD\n\n```\npython -m faceid_lib\n```\n\n9. Import EventReceiver\n\n```\nfrom faceid_lib.events.event_receiver import EventReceiver\n```\n\n10. Import EventProducer\n\n```\nfrom faceid_lib.events.event_producer import EventProducer\n```\n\n11. Import FastAPILimiter, RateLimiter\n\n```\nfrom faceid_lib.ratelimiter import FastAPILimiter\nfrom faceid_lib.ratelimiter.depends import RateLimiter\n```\n\n## Structure\n\n```\n.\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 poetry.lock\n\u251c\u2500\u2500 pyproject.toml\n\u251c\u2500\u2500 faceid_lib\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 __main__.py\n\u2502 \u251c\u2500\u2500 events\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 event_producer.py\n\u2502 \u2514\u2500\u2500 event_receiver.py\n\u2502 \u251c\u2500\u2500 ratelimiter\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u2514\u2500\u2500 depends.py\n\u2502 \u251c\u2500\u2500 logger\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u2514\u2500\u2500 logger_helper.py\n\u2502 \u251c\u2500\u2500 workflow\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u2514\u2500\u2500 workflow_helper.py\n\u2502 \u251c\u2500\u2500 vector_similarity\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 v1\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u2514\u2500\u2500 power.py\n\u2514\u2500\u2500 README.md\n```\n\n## Changelogs 2.0.0 - 2.0.1 (2023-05-02)\n- compute similarity helper\n\n## Changelogs 1.0.9 (2022-06-14)\n- modify response & handler\n\n## Changelogs 1.0.5 (2021-10-24)\n- downgrade pika version to 1.1.0\n\n## Changelogs 1.0.4 (2021-10-24)\n- enhancment rate limiting\n\n## License\nLicensed under the Apache License, Version 2.0. Copyright 2020-2021 picaso-engine ML, Dani Gunawan.\n",
"bugtrack_url": null,
"license": "Apache License",
"summary": "Simple and flexible AI/ML workflow engine by Picaso - FaceID",
"version": "3.0.0",
"project_urls": {
"Homepage": "https://gitlab.playcourt.id/picaso-faceid/picaso-faceid-engine/v1/faceid-lib",
"Repository": "https://gitlab.playcourt.id/picaso-faceid/picaso-faceid-engine/v1/faceid-lib"
},
"split_keywords": [
"machine learning",
"deep learning",
"message broker",
"distributed system",
"pipeline",
"rabbitmq",
"ratelimiter"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "68d53aa343dffe47771b390ba3871081614947353887b81cef1b76d95065cfda",
"md5": "076019cdedec15092ac232b63ccb5878",
"sha256": "cef2a301f052805a6a2ce784db76050b469a05e76512548f458888af2c22ed56"
},
"downloads": -1,
"filename": "faceid_lib-3.0.0-cp38-cp38-manylinux_2_31_x86_64.whl",
"has_sig": false,
"md5_digest": "076019cdedec15092ac232b63ccb5878",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7,<4.0",
"size": 1355761,
"upload_time": "2023-05-28T16:27:34",
"upload_time_iso_8601": "2023-05-28T16:27:34.866825Z",
"url": "https://files.pythonhosted.org/packages/68/d5/3aa343dffe47771b390ba3871081614947353887b81cef1b76d95065cfda/faceid_lib-3.0.0-cp38-cp38-manylinux_2_31_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9bc922dfd851adc33c24b55df4532254dc443562523dda814a6f0a72db907941",
"md5": "19fdab61f0d7c5f722b2763ad68fd389",
"sha256": "318c34a070aae36e15c3119d09fc8e4774a65c43ad8d2c8873dcbc15cb84491d"
},
"downloads": -1,
"filename": "faceid-lib-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "19fdab61f0d7c5f722b2763ad68fd389",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7,<4.0",
"size": 1340591,
"upload_time": "2023-05-28T16:27:29",
"upload_time_iso_8601": "2023-05-28T16:27:29.102442Z",
"url": "https://files.pythonhosted.org/packages/9b/c9/22dfd851adc33c24b55df4532254dc443562523dda814a6f0a72db907941/faceid-lib-3.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-28 16:27:29",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "faceid-lib"
}