free site creation software

Client, Server and Interfaces

Containers are one way of submitting assets to AI4EU's platform and a very powerful object. Containers do not require compilation or any other adaptation  to local or remote  computing resources (e.g. cloud).
However, for non-specialists creating containers and interfacing them is a very hard task.

This set of tools were developed by ISR/IST's work in AI4EU to enable the creation and deployment of AI Resources.
The project is divided into 3 main modules: the gRPC Interface, the server program, and the client gRPC module (used by multiple clients), as shown in the diagram below and downloadable and documented in the GitHub repositories

1

Interface

The gRPC interface defines a contract, establishing the server remote methods which the client can call, as well as the format of the messages sent between the server and the clients. This interface can be compiled to generate the gRPC source code responsible for the communication between any client and server, as well as the marshaling and unmarshaling of the messages
https://github.com/sipg-isr/tag_my_outfit_interface

2

Server


The server itself has the code for the application. Our first published server is named Tag-my-outfit. This server is an interface for a CNN model called VSAM that tags fashion images described here or downloadable from AI4EU.
The service is communication independent, meaning it should not be dependent on how the server receives and sends messages. The server also needs a gRPC module that uses the gRPC interface. This module receives the messages from the client gRPC module, transforms the information into the inputs for the service, takes the predicted output, transforms it back into gRPC messages, and sends the response.
https://github.com/sipg-isr/tag_my_outfit_server

3

Client

Finally, the client gRPC module serves as an interface for any clients that want to use the service and don’t want to focus on gRPC. Although any client can directly communicate with the server using the gRPC interface source code, this module is provided as an easy interface, so that clients can focus on their program logic and ignore the aspects relative to communicating with the server.
https://github.com/sipg-isr/tag_my_outfit_client

Download and terms of use

These tools were developed by ISR/IST and used in AI4EU to develop AI resources. They are available for download on GitHub and for public use under MIT License... (doc)
This code was developed by Duarte Alves to deliver the CNN-model Tag-My-Outfit. Questions or suggestions for further developments contact through AI4EU user Duarte Alves (https://www.ai4eu.eu/user/duarte-alves)