{"id":17383650,"url":"https://github.com/goamegah/fastapi-self-supervised-learning-images","last_synced_at":"2025-06-11T02:05:38.232Z","repository":{"id":210740448,"uuid":"727344575","full_name":"goamegah/FastAPI-Self-Supervised-Learning-Images","owner":"goamegah","description":"API in order to serve S3Ima models","archived":false,"fork":false,"pushed_at":"2023-12-10T16:47:27.000Z","size":3479,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T07:47:02.801Z","etag":null,"topics":["backend","fastapi","image-processing","python","pytorch","self-supervised-learning"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goamegah.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-04T17:17:06.000Z","updated_at":"2025-01-14T14:51:03.000Z","dependencies_parsed_at":"2024-10-18T22:34:25.296Z","dependency_job_id":null,"html_url":"https://github.com/goamegah/FastAPI-Self-Supervised-Learning-Images","commit_stats":null,"previous_names":["goamegah/s3ima-api","goamegah/fastapi-self-supervised-learning-images"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goamegah%2FFastAPI-Self-Supervised-Learning-Images","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goamegah%2FFastAPI-Self-Supervised-Learning-Images/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goamegah%2FFastAPI-Self-Supervised-Learning-Images/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goamegah%2FFastAPI-Self-Supervised-Learning-Images/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goamegah","download_url":"https://codeload.github.com/goamegah/FastAPI-Self-Supervised-Learning-Images/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goamegah%2FFastAPI-Self-Supervised-Learning-Images/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259184738,"owners_count":22818267,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","fastapi","image-processing","python","pytorch","self-supervised-learning"],"created_at":"2024-10-16T07:43:23.318Z","updated_at":"2025-06-11T02:05:38.212Z","avatar_url":"https://github.com/goamegah.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SsIma API\nSsIma API aim to implement API in order to serve all model implement in [s3ima](https://github.com/goamegah/s3ima).\nAfter, I containerize api using docker.\n\n## Table des Matières\n\n1. [Introduction](#introduction)\n2. [API documentation interface](#api-documentation-interface)\n2. [Project workflows](#project-workflows)\n3. [Run model](#run-api)\n\n---\n\n## Introduction\nProject concerns of implementing simple deep learning architecture\nfor classifying ```MNIST``` image data with two constraints\n- Train model with only 100 labels samples:\n- Implement API to serve model functionality\n- Implement Web App (as client) to display model performance.\n\n**API** will be used to serve model by exposing two functionalities:\n- Receiving request that will contains image from a **Frontend app** \nwhich (assuming) to be digit image and ```model name```.\n- Response by posting **inference result** and ***model evaluation metrics*** as graph.\n\nProject workflow below, will help user understanding where APi will take part\nand its roles. (Comments use French language)\n\n---\n**Attention:** _This part of project concerns only API implementation and deployment as service\nusing Docker_. \n---\n\n**Requirements for Running whole process (Front-API-Model):**\n\n- For having a look on model's implementation, you will need to refere to [s3ima](https://github.com/goamegah/s3ima)\nproject. Obviously, you don't need to have s3ima code for testing API due to prior availability of artefact inside \n**artefact/** folder.\n\n- You will probably need to have Dash web app implementation on local. So you can get code \nfrom [s3ima-app](https://github.com/goamegah/ssima-app)\n\n\n## Api documentation interface:\n\nHere is how API interface will look like.\n\n![Alt Text](documentation/fast_api_docs.png)\n\n\n## Project workflows:\n\n![Alt Text](documentation/local_arch.png)\n\nDash web app (ssima-app) depend on API (s3ima-api) results from model (s3ima). \nTo simplify process all artefact is prior available through **artefact/** folder. \n\n\nApi server will be waiting for request (eg. image) send by front (Dash App) and \nwill get and process image, feed model, get result from it and finally sent results \nto the front (dash web app) .\n\n![Alt Text](documentation/dash_screen.png)\n\n\n## Run API\nPlease before going on, make sure having installed ```uvicorn```, ```python-multipart``` and ```torch```.\nIf not, you can require librairy by run ```pip install -r requirements.txt```\n\n\nIn the root of project can launch model API by using following command\n\n```shell\n$  uvicorn api:app --reload\n```\n\nAfter this you can open your navigator and tape this link: ```http://127.0.0.1:8000/``` \n\n\n## Containerize app with Docker\nfor containerize API app, **dockerfile** is available for building and deploy image\n\n```shell\n$ docker build -t image_name:version .\n$ docker run -p 8000:8000 image_name:version\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoamegah%2Ffastapi-self-supervised-learning-images","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoamegah%2Ffastapi-self-supervised-learning-images","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoamegah%2Ffastapi-self-supervised-learning-images/lists"}