
Couche de contexte IA multi-modèle
Freemium
SurrealDB est une base de données multi-modèle de nouvelle génération conçue pour servir de couche de contexte unifiée pour les agents IA. Contrairement aux bases de données traditionnelles qui imposent un choix entre les modèles documentaires, orientés graphe ou relationnels, SurrealDB prend en charge nativement tous ces paradigmes, ainsi que la recherche vectorielle et les données de séries temporelles. En consolidant ces structures de données dans un moteur unique, elle élimine le besoin de pipelines de synchronisation complexes entre des bases de données disparates. Elle propose un langage de requête propriétaire, SurrealQL, permettant des opérations de jointure complexes et le parcours de graphes en une seule instruction, réduisant ainsi considérablement la latence pour les pipelines RAG (Retrieval-Augmented Generation) et la gestion de la mémoire des agents.
SurrealDB combine des modèles de données documentaires, orientés graphe, relationnels et vectoriels dans un moteur unique. Cela élimine la prolifération de bases de données courante dans les piles technologiques IA, où les développeurs devaient auparavant gérer des stockages séparés pour les données relationnelles et les embeddings vectoriels. En unifiant ces éléments, les développeurs peuvent effectuer des transactions conformes ACID sur des relations de graphe et des recherches de similarité vectorielle dans une requête atomique, garantissant la cohérence des données et réduisant la complexité architecturale.
Le moteur inclut un support intégré pour les embeddings vectoriels, permettant des recherches de similarité (k-NN) haute performance directement au sein de la base de données. Il prend en charge diverses métriques de distance comme Cosinus, Euclidienne et Manhattan. En conservant les vecteurs aux côtés des métadonnées associées et des relations de graphe, il permet aux agents d'effectuer une récupération 'sensible au contexte', extrayant non seulement le document le plus similaire, mais aussi les entités liées et les données historiques de séries temporelles en une seule requête.
SurrealQL est un langage puissant inspiré du SQL, conçu pour les structures de données modernes. Il prend en charge des fonctionnalités avancées comme les sous-requêtes imbriquées, le parcours de graphe (ex: '->follows->user') et des fonctions intégrées pour la manipulation de données. Contrairement au SQL standard, il est optimisé pour les données non relationnelles, permettant aux développeurs d'interroger des documents JSON profondément imbriqués et des arêtes de graphe sans jointures complexes ou traitement externe, ce qui est critique pour la prise de décision des agents en temps réel.
SurrealDB prend en charge les requêtes en direct, permettant aux clients de s'abonner aux changements de données en temps réel via WebSockets. Lorsqu'un enregistrement est créé, mis à jour ou supprimé, la base de données transmet le changement au client. C'est essentiel pour les agents IA qui doivent réagir immédiatement aux changements d'état de l'environnement, permettant des architectures pilotées par les événements sans avoir besoin de polling ou de courtiers de messages externes comme Kafka.
La base de données peut fonctionner dans un cluster distribué à haute disponibilité, sur un serveur à nœud unique, ou même être intégrée directement dans une application (en mémoire ou sur disque). Cette flexibilité la rend adaptée à tout, des agents IA d'edge computing fonctionnant sur des appareils locaux aux applications cloud-native à grande échelle. Elle fournit une API cohérente dans tous les modes de déploiement, permettant aux développeurs de prototyper localement et de passer à la production sans changer leur base de code.
Les développeurs utilisent SurrealDB pour stocker à la fois les documents bruts et leurs embeddings vectoriels. Lorsqu'un agent interroge des informations, il effectue une requête unique qui récupère le document correspondant au vecteur et ses métadonnées basées sur le graphe, fournissant au LLM un contexte plus riche et structuré qu'une base de données vectorielle standard.
Les agents IA utilisent SurrealDB pour stocker leur mémoire épisodique à long terme. En utilisant des arêtes de graphe pour lier les interactions passées, les préférences utilisateur et les journaux de séries temporelles, l'agent peut parcourir son propre historique pour fournir des réponses personnalisées basées sur des relations complexes et multidimensionnelles plutôt que sur une simple correspondance de mots-clés.
Les entreprises construisent des graphes de connaissances dynamiques où les entités et les relations sont mises à jour en temps réel. SurrealDB permet d'interroger ces entités comme des documents tout en maintenant l'intégrité du graphe, permettant aux agents de naviguer instantanément dans des hiérarchies organisationnelles ou techniques complexes.
Ils ont besoin d'un backend robuste pour gérer les pipelines RAG et la mémoire des agents. Ils exigent une recherche vectorielle haute performance combinée à des données structurées pour fournir aux LLM des informations précises et riches en contexte.
Ils cherchent à simplifier leur pile technologique en remplaçant plusieurs bases de données spécialisées (ex: Postgres, Pinecone, Neo4j) par une solution unique et unifiée qui gère efficacement tous les types de données.
Ils nécessitent une base de données légère et intégrable pouvant fonctionner localement sur des appareils en périphérie tout en conservant la puissance d'une base de données multi-modèle complète pour le traitement IA hors ligne.
Open source (Apache 2.0). SurrealDB Cloud propose une offre gratuite, avec des plans Pro et Entreprise disponibles pour une mise à l'échelle et un support de niveau production.