Description
faiss-server provides gRPC services to for similarity search using faiss. It is written in C++ and now supports only CPU environments.
faiss-server alternatives and similar libraries
Based on the "Machine Learning" category.
Alternatively, view faiss-server alternatives based on common mentions on social networks and blogs.
-
xgboost
Scalable, Portable and Distributed Gradient Boosting (GBDT, GBRT or GBM) Library, for Python, R, Java, Scala, C++ and more. Runs on single machine, Hadoop, Spark, Dask, Flink and DataFlow -
mxnet
Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more -
Dlib
A toolkit for making real world machine learning and data analysis applications in C++ -
Caffe2
A lightweight, modular, and scalable deep learning framework. [Apache2] website -
vowpal_wabbit
Vowpal Wabbit is a machine learning system which pushes the frontier of machine learning with techniques such as online, hashing, allreduce, reductions, learning2search, active, and interactive learning. -
CCV
C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library -
catboost
A fast, scalable, high performance Gradient Boosting on Decision Trees library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU. -
RNNLIB
RNNLIB is a recurrent neural network library for sequence learning problems. Forked from Alex Graves work http://sourceforge.net/projects/rnnl/ -
Fido
A lightweight C++ machine learning library for embedded electronics and robotics. -
Recommender
A C library for product recommendations/suggestions using collaborative filtering (CF) -
NN++
A small and easy to use neural net implementation for C++. Just download and #include! -
OpenHotspot
OpenHotspot is a machine learning, crime analysis framework written in C++11. -
sofia-ml
The suite of fast incremental algorithms for machine learning. [Apache2]
Write Clean C++ Code. Always.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of faiss-server or a related project?
README
faiss-server
faiss-server provides gRPC services to for similarity search using faiss. It is written in C++ and now supports only CPU environments.
Installation
Currently, installation is from source only.
$ git clone https://github.com/ynqa/faiss-server
$ cd faiss-server
To build faiss-server on your local, please use cmake
.
$ mkdir build; cd build
$ cmake ..
$ make
[Beta] To build as docker image:
$ docker build -t faiss-server .
Demo
- Create indexed file, which is composed of the word vectors. Indexed words are on text8 corpus and those vectors are trained by word2vec model of gensim.
$ python example/indexing/indexing.py
- Select the indexed file and then execute faiss-server.
$ ./build/bin/faiss_server -file_path example/indexing/faiss.index
- If you build with docker:
$ docker run -p 8080:8080 -v $(pwd)/example/indexing:/tmp faiss-server -file_path /tmp/faiss.index
- Throw the requests for similarity search
$ PYTHONPATH=python python example/client/search.py
Usage
faiss_server:
-file_path (index file name) type: string default: ""
-host (host of faiss server) type: string default: "0.0.0.0"
-port (port of faiss server) type: string default: "8080"
-top_k (default number of neighbor) type: uint64 default: 5