Recherchez, faites des inférences et organisez des vecteurs, des tenseurs, du texte et des données structurées, à l'heure de service et à toute échelle.
Ce référentiel contient tout le code requis pour construire et exécuter tous les Vespa vous-même, et où vous pouvez voir tout le développement tel qu'il se produit. Tout le contenu de ce référentiel est concédé sous licence Apache 2.0.
Une nouvelle version de Vespa est faite à partir de la branche maîtresse de ce référentiel chaque matin du lundi au jeudi.
Les cas d'utilisation tels que la recherche, la recommandation et la personnalisation doivent sélectionner un sous-ensemble de données dans un grand corpus, évaluer les modèles d'apprentissage de la machine sur les données sélectionnées, l'organiser et les agréger et les retourner, généralement en moins de 100 millisecondes, tout en étant pendant les données Corpus change continuellement.
Ceci est difficile à faire, en particulier avec de grands ensembles de données qui doivent être distribués sur plusieurs nœuds et évalués en parallèle. Vespa est une plate-forme qui effectue ces opérations pour vous avec une haute disponibilité et des performances. Il est en développement depuis de nombreuses années et est utilisé sur plusieurs grands services Internet et applications qui desservent des centaines de milliers de requêtes de VESPA par seconde.
Déployez vos applications Vespa au service cloud: https://cloud.vespa.ai, ou exécutez votre propre instance Vespa: https://docs.vespa.ai/en/getting-started.html
La documentation complète est sur https://docs.vespa.ai.
Nous accueillons les contributions! Voir contribution.md pour apprendre à contribuer.
Si vous souhaitez contribuer à la documentation, consultez https://github.com/vespa-engine/documentation
Vous n'avez pas besoin de créer Vespa pour l'utiliser, mais si vous souhaitez contribuer, vous devez pouvoir créer le code. Cette section explique comment construire et tester Vespa. Pour comprendre où apporter des modifications, voir Code-Map.md. Certaines améliorations suggérées avec des pointeurs vers le code sont dans todo.md.
Le bâtiment C ++ et Java est pris en charge sur Almalinux 8. La source Java peut également être construite sur n'importe quelle plate-forme ayant installé Java 17 et Maven 3.8+. Utilisez le guide suivant pour configurer un environnement de développement complet à l'aide de Docker pour la création de VESPA, des tests unitaires en cours d'exécution et des tests système d'exécution: Développement VESPA sur Almalinux 8.
brew install jenv mvnvm openjdk@17sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdkzsh utilisez les commandes ci-dessous: echo ' export PATH="$HOME/.jenv/bin:$PATH" ' >> ~ /.zshrc
echo ' eval "$(jenv init -)" ' >> ~ /.zshrc
eval " $( jenv init - ) "
jenv enable-plugin export
exec $SHELL -ljenv add $( /usr/libexec/java_home -v 17 )mvn -v export MAVEN_OPTS="-Xms128m -Xmx1024m"
./bootstrap.sh java
mvn install --threads 1C
Utilisez-le si vous n'avez besoin que de créer les modules Java, sinon suivez le guide de développement complet ci-dessus.
Code sous licence Apache 2.0. Voir la licence pour les conditions.