Sophia is a system who will allow you to use several model for classification.
I build Sophia for experiment around SMACK architecture. Architecture will grow.
Based on the SMACK architecture, Sophia want to provide several data model for users.
The akka workers in the image are designed to route http request to the proper model. For example, a POST request asking for image classification with data inside.
The Spark technology will be used to provide batch processing in order to refresh model. The new model will be push to the micro-service associated (that's the initial vision of the project from now...).
Micro-service are designed for asking about classification request or more. The future below would be to adding new akka route to make an aggregation of classification answer.
Sophia provide api design to manage you services :
- /list to list all the services available.
- /addService to register a service to the project.
- /getService provide a service given the specific name.
It's possible to push your data in a HDFS cluster through :
- /push
you can use it like :
curl --form "data=@path/to/file" http://localhost:8080/push