Le flux texte-vers-requête

Agents de text-to-query avec MongoDB et LangGraph

Apoorva Joshi

Senior AI/ML Developer Advocate, MongoDB

Texte en requête

texte en requête 1

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête

texte en requête 2

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête

texte en requête 3

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête

texte en requête 4

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête

texte en requête 5

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête

texte en requête 6

Agents de text-to-query avec MongoDB et LangGraph

Texte en requête : approche agentique

 

agent_de_requête

Agents de text-to-query avec MongoDB et LangGraph

Données : l’approche MongoDB

 

données_mongodb

Agents de text-to-query avec MongoDB et LangGraph

Structured Query Language (SQL)

Exemple de requête SQL

SELECT *
FROM table
WHERE year>=1950
LIMIT 5

API de requêtes MongoDB

Exemple d’entrée type JSON

{ "$and": [
              {"year": {"$gte": 1990}},
              {"year": {"$lt": 2000}}
          ]
}

Méthodes de requête MongoDB

  • .find(), .insert(), .update(), .delete()
Agents de text-to-query avec MongoDB et LangGraph

Exemple : collection movies

_id Titre Année de sortie Distribution Genres
573a1396f29313caabce3d17 Larks on a String 1990 [Rudolf Hrusènskè, Vlastimil Brodskè] [Comédie, Drame, Romance]
573a1398f29313caabceab72 The Witching of Ben Wagner 1990 [Sam Bottoms, Harriet Hall, Bettina Rae, Justin Gocke] [Famille]
... ... ... [...] [...]
Agents de text-to-query avec MongoDB et LangGraph

Filtres simples

query = {"genre": "Romance"}
Agents de text-to-query avec MongoDB et LangGraph

Filtres simples

query = {"genre": "Romance"}
_id Titre Année de sortie Distribution Genres
573a1390f29313caabcd6377 Wild and Woolly 1917 [Douglas Fairbanks, Eileen Percy, Calvert Carter, Charles Stevens] [Comédie, Western, Romance]
573a1391f29313caabcd70b4 The Four Horsemen of the Apocalypse 1921 [Pomeroy Cannon, Josef Swickard, Bridgetta Clark, Rudolph Valentino] [Drame, Romance, Guerre]
Agents de text-to-query avec MongoDB et LangGraph

Filtres multiples

query = { "$and": [
                    {"year": {"$gte": 1990}},
                    {"year": {"$lt": 2000}}
                  ]
        }
Agents de text-to-query avec MongoDB et LangGraph

Filtres multiples

query = { "$and": [
                    {"year": {"$gte": 1990}},
                    {"year": {"$lt": 2000}}
                  ]
        }
_id Titre Année de sortie Distribution Genres
573a1396f29313caabce3d17 Larks on a String 1990 [Rudolf Hrusènskè, Vlastimil Brodskè] [Comédie, Drame, Romance]
573a1398f29313caabceab72 The Witching of Ben Wagner 1990 [Sam Bottoms, Harriet Hall, Bettina Rae, Justin Gocke] [Famille]
Agents de text-to-query avec MongoDB et LangGraph

Pipelines d’agrégation

pipeline

db.<collection>.aggregate([
    {stage-1},
    {stage-2},
    {stage-3},
    {stage-4},
])
Agents de text-to-query avec MongoDB et LangGraph

Opérations multiples

query = [




]
Agents de text-to-query avec MongoDB et LangGraph

Opérations multiples

query = [

{ "$sort": { "released": -1 } },


]
  • Trier par released
Agents de text-to-query avec MongoDB et LangGraph

Opérations multiples

query = [

{ "$sort": { "released": -1 } },
{ "$limit": 5 },

]
  • Trier par released
  • Limiter à 5 résultats
Agents de text-to-query avec MongoDB et LangGraph

Opérations multiples

query = [

{ "$sort": { "released": -1 } },
{ "$limit": 5 },
{ "$project": { "title": 1, "_id": 0 } }
]
  • Trier par released
  • Limiter à 5 résultats
  • Projeter la colonne "title"
Agents de text-to-query avec MongoDB et LangGraph

Opérations multiples

query = [

{ "$sort": { "released": -1 } },
{ "$limit": 5 },
{ "$project": { "title": 1, "_id": 0 } }
]
  • Trier par released
  • Limiter à 5 résultats
  • Projeter la colonne "title"
Titre
The Treasure
Knight of Cups
Sand Castles
Shut In
Dègradè
Agents de text-to-query avec MongoDB et LangGraph

Agrégations groupées

_id Titre Année de sortie Distribution Genres
573a1396f29313caabce3d17 Larks on a String 1990 [Rudolf Hrusènskè, Vlastimil Brodskè] [Comédie, Drame, Romance]
573a1398f29313caabceab72 The Witching of Ben Wagner 1990 [Sam Bottoms, Harriet Hall, Bettina Rae, Justin Gocke] [Famille]
... ... ... [...] [...]
Agents de text-to-query avec MongoDB et LangGraph

Agrégations groupées

query = [

{ "$unwind": "$genres" },
{ "$group": { "_id": "$genres", "numMovies": { "$sum": 1 } }},
{ "$match": { "numMovies": { "$gte": 50 } } }
]
Agents de text-to-query avec MongoDB et LangGraph

Agrégations groupées

 

Genre Compte
Drame 12385
Comédie 6532
Romance 3318
Crime 2457
Thriller 2454
... ...

Étapes de pipeline

  • $match, $group, $facet, $geoNear, $lookup, $merge, $search, $sort...

Opérateurs

  • Comparaison : $eq, $gt, $gte, ...
  • Maths : $add, $multiply, $divide...
  • Tableau : $push, $reduce, ...
  • Chaîne : $toUpper, $toLower, ...
  • Temporel : $dateAdd, $dateDiff, ...
Agents de text-to-query avec MongoDB et LangGraph

Passons à la pratique !

Agents de text-to-query avec MongoDB et LangGraph

Preparing Video For Download...