Prudence
Redisai n'est plus activement entretenu ou soutenu.
Nous sommes reconnaissants à la communauté Redisai pour leur intérêt et leur soutien.
Redisai est un module Redis pour exécuter des modèles d'apprentissage en profondeur / d'apprentissage automatique et de gérer leurs données. Son objectif est d'être un «cheval de bataille» pour le service de modèle, en fournissant une prise en charge prête à l'emploi pour les cadres DL / ML populaires et les performances inégalées. Redisai maximise le débit de calcul et réduit la latence en adhérant au principe de la localité des données , et simplifie le déploiement et la portion de graphiques en tirant parti de l'infrastructure prouvée de la production de Redis.
Pour lire Redisai Docs, visitez redisai.io. Pour voir Redisai en action, visitez la page Demos.
Redisai est un module Redis. Pour l'exécuter, vous aurez besoin d'un serveur Redis (v6.0.0 ou plus), de la bibliothèque partagée du module et de ses dépendances.
Les sections suivantes décrivent comment commencer avec Redisai.
Le moyen le plus rapide d'essayer Redisai est de lancer ses images officielles de conteneur Docker.
docker run -p 6379:6379 redislabs/redisai:1.2.7-cpu-bionic
Pour le support GPU, vous aurez besoin d'une machine, vous aurez besoin d'une machine qui a Nvidia Driver (CUDA 11.3 et CUDNN 8.1), NVIDIA-Container-Toolkit et Docker 19.03+ installé. Pour des informations détaillées, le paiement de la documentation Nvidia-Docker
docker run -p 6379:6379 --gpus all -it --rm redislabs/redisai:1.2.7-gpu-bionic
Vous pouvez compiler et construire le module à partir de son code source. La page du développeur contient plus d'informations sur la conception et la mise en œuvre du module Redisai et comment contribuer.
Vous pouvez obtenir le code source du module en clonant le référentiel du projet à l'aide de Git comme SO:
git clone --recursive https://github.com/RedisAI/RedisAIPassez au répertoire du projet avec:
cd RedisAIUtilisez le script suivant pour télécharger et créer les bibliothèques des différents backends redisai (TensorFlow, Pytorch, onnxruntime) pour CPU uniquement:
bash get_deps.shAlternativement, vous pouvez exécuter ce qui suit pour récupérer les backends avec le support GPU.
bash get_deps.sh gpuUne fois les dépendances construites, vous pouvez construire le module Redisai avec:
make -C opt clean ALL=1
make -C optAlternativement, exécutez ce qui suit pour construire Redisai avec le support GPU:
make -C opt clean ALL=1
make -C opt GPU=1Redisai prend actuellement en charge Pytorch (libtorch), Tensorflow (libttensorflow), TensorFlow Lite et Onnxruntime en tant que backends. Cette section montre la carte de la version entre Redisai et Backends pris en charge. Cela est extrêmement important car le mécanisme de sérialisation d'une version pourrait ne pas correspondre à un autre. Pour vous assurer que votre modèle fonctionnera avec une version Redisai donnée, vérifiez avec la documentation backend sur les fonctionnalités incompatibles entre la version de votre backend et la version Redisai est construite avec.
| Redisai | Pytorch | Tensorflow | Tflite | Onnxruntime |
|---|---|---|---|---|
| 1.0.3 | 1.5.0 | 1.15.0 | 2.0.0 | 1.2.0 |
| 1.2.7 | 1.11.0 | 2.8.0 | 2.0.0 | 1.11.1 |
| maître | 1.11.0 | 2.8.0 | 2.0.0 | 1.11.1 |
Remarque: Keras et TensorFlow 2.x sont pris en charge par congélation de graphiques. Voir ce script pour voir comment exporter un graphique gelé de Keras et TensorFlow 2.x.
Pour charger le module lors du démarrage du serveur Redis, utilisez simplement le commutateur de ligne de commande --loadmodule , la directive de configuration loadmodule ou la commande MODULE LOAD Redis avec la bibliothèque du chemin vers la module.
Par exemple, pour charger le module à partir du chemin du projet avec un commutateur de ligne de commande de serveur Utilisez ce qui suit:
redis-server --loadmodule ./install-cpu/redisai.soUne fois chargé, vous pouvez interagir avec Redisai à l'aide de redis-Cli. Les informations de base et les exemples d'utilisation du module sont décrites ici.
Certaines langues ont déjà des bibliothèques clients qui soutiennent les commandes de Redisai. Le tableau suivant répertorie les connus:
| Projet | Langue | Licence | Auteur | URL |
|---|---|---|---|---|
| Jredisai | Java | BSD-3 | Refaire | Github |
| redisai-py | Python | BSD-3 | Refaire | Github |
| redisai-go | Aller | BSD-3 | Refaire | Github |
| redisai-js | TypeScript / JavaScript | BSD-3 | Refaire | Github |
| redis-modules-sdk | Manuscrit | Clause BSD-3 | Dani Tseitlin | Github |
| redis-modules-java | Java | Apache-2.0 | dengliming | Github |
| smartredis | C ++ | Clause BSD-2 | Laboratoires de cray | Github |
| smartredis | C | Clause BSD-2 | Laboratoires de cray | Github |
| smartredis | Frontran | Clause BSD-2 | Laboratoires de cray | Github |
| smartredis | Python | Clause BSD-2 | Laboratoires de cray | Github |
La documentation complète de l'API de Redisai est disponible sur la page des commandes.
Lisez les documents sur redisai.io.
Si vous avez des questions, souhaitez fournir des commentaires ou peut-être signaler un problème ou contribuer un code, voici où nous vous écoutons:
Redisai est sous licence sous votre choix de la licence Redis Source disponible 2.0 (RSALV2) ou de la licence publique du serveur V1 (SSPLV1).