Recommender-System Software Libraries & APIs

There is a plethora of software libraries and APIs that often implement dozens of recommendation algorithms.

We define a ‘recommender-system software library’ as e.g. a JAVA or Python library that you can easily integrate into your own application to run recommendation algorithms. Nevertheless, you still do need some recommender-system and programming knowledge to store data in the right format, load it in the library and select, possibly tune, and apply the algorithms. These libraries make it easy to deploy your own recommender system. Keep in mind that while prototypes can be developed typically within hours or days, developing production systems will rather take weeks or even months.

We define a ‘recommendation API’ as a (REST) Web Service that offers the same functionality as a software library, only that your data is hosted in the cloud. In contrast, recommender-systems as-a-service (RaaS) do all the work for you. For instance, you typically would integrate e.g. only a JavaScript snippet in your web page where recommendations shall be displayed. Everything else (indexing data, generating recommendations, displaying recommendations) is done by the RaaS. The downside though would be less control of how recommendations are generated.

In the Google Sheet below you find a collection of recommender-system libraries and APIs (early draft / work-in-progress!). If you would like to add or change information, please send a request and provide us with some details about yourself.

Our list is based in part on the following sources, which all aim at providing overviews of recommender system libraries.

https://github.com/grahamjenson/list_of_recommender_systems and https://maori.geek.nz/list-of-recommender-systems-4526f7c68964

https://github.com/parklize/RecSys-Libraries

https://awesomeopensource.com/projects/recommender-system

News About Recommender-System Software-Libraries & APIs

LinkedIn introduces “GDMix”, a deep ranking personalization framework

Jun Shi from LinkedIn announced the release of GDMix (GitHub), a deep ranking personalization framework. GDMix stands for Generalized Deep Mixed Model and is… a solution created at LinkedIn to train these kinds of [ranking] models efficiently. It breaks down a large model into a global model (a.k.a. “fixed effect”) and a large number of small […]

Posted in Software Libraries | Tagged , , , | Leave a comment

TensorFlow introduces ‘TensorFlow Recommenders’ (TFRS)

This is big news for the recommender-system community: Maciej Kula and James Chen from Google Brain announce TensorFlow Recommenders (TFRS), an official recommender-systems package for TensorFlow, the major deep-learning library.

Posted in Software Libraries | Tagged , , , , | Leave a comment

TensorFlow introduces a new ‘end-to-end’ solution for on-device recommendations with TFLite

Ellie Zhou, Tian Lin, Cong Li, Shuangfeng Li, and Sushant Prakash from TensorFlow announced in a blog post that they open-source an end-to-end solution for TFLite on-device recommendation tasks. TFLite is a TensorFlow-based library for machine-learning on mobile and IoT devices. So far, TFLite had machine-learning models for image classification, object detection, pose estimation, and […]

Posted in Software Libraries | Tagged , , , , , , , , , | Leave a comment

Scalable Recommender Systems with NVTabular- A Fast Tabular Data Loading and Transformation Library [Ronay Ak @ Medium]

Ronay Ak et al. from RapidsAI wrote a nice in-depth post on how to use NVIDIA´s NVTabular to develop a recommender system that works with large amounts of data (1.3 TB). In this blog we will walk you through the NVTabular workflow steps in an example where we use ~1.3TB Criteo dataset shared by CriteoLabs for the predicting […]

Posted in Software Libraries, Tutorials | Tagged , , , , , | Leave a comment

AI2 releases v1 of its free NLP library “AllenNLP” [Michael Schmitz / AI2 @Medium]

AllenNLP is a free, open-source natural language processing platform from AI2, designed so researchers can easily build state-of-the-art models. AllenNLP accelerates the translation of ideas into effective models by providing abstractions and APIs that relate to concepts familiar with researchers, as well as a suite of reference implementations from recent literature. This week, we’re releasing AllenNLP […]

Posted in Software Libraries | Tagged , , , , | Leave a comment

OpenAI makes many of its AI models available through an API

OpenAI announced to make its AI models available through an API, including its GPT-3 model. This could be very interesting for recommender systems that rely on Natural Language Processing and other tasks involving text. We’re releasing an API for accessing new AI models developed by OpenAI. Unlike most AI systems which are designed for one […]

Posted in Software Libraries | Tagged , , | Leave a comment

NeuRec: An open source neural recommender library [Bin Wu et al.]

NeuRec is a comprehensive and flexible Python library for recommender systems that includes a large range of state-of-the-art neural recommender models. This library aims to solve general, social and sequential (i.e. next-item) recommendation tasks, using the Tensorflow library to provide 33 models out of the box. NeuRec is open source and available under the MIT license. https://github.com/wubinzzu/NeuRec Models The list of […]

Posted in Software Libraries | Tagged , , , , , , | Leave a comment