0Pricing
AI Agents · Leçon

Moteurs de requêtes et synthèse des réponses

Les moteurs de requêtes orchestrent la récupération et la synthèse avec des stratégies comme refine, compact et tree_summarize.

Moteurs de requêtes et synthèse des réponses est une leçon AI Agents gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage AI Agents, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours AI Agents comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Moteur de requêtes = récupération + synthèse

Un moteur de requêtes LlamaIndex comporte deux étapes :

  1. Récupération — trouver les segments pertinents
  2. Synthèse — générer une réponse à partir de ces segments

Les deux étapes sont configurables.

The Default Query Engine

query_engine = index.as_query_engine()
response = query_engine.query('What is our refund policy?')
print(response.response)         # the answer
print(response.source_nodes)     # the chunks used

Modes de réponse

Voici comment le moteur assemble la réponse finale à partir des segments récupérés :

  • refine — traiter les segments un par un en affinant la réponse (le plus précis, mais le plus lent)
  • compact — intégrer autant de segments que possible dans le contexte à chaque appel (par défaut)
  • tree_summarize — synthèse récursive
  • simple_summarize — un seul appel avec tous les segments

Setting Response Mode

query_engine = index.as_query_engine(response_mode='tree_summarize')

Configuring Retrieval

query_engine = index.as_query_engine(
    similarity_top_k=5,
    response_mode='compact'
)

Invites personnalisées

Injectez vos propres modèles d’invite :

from llama_index.core.prompts import PromptTemplate

qa_template = PromptTemplate(
    'Context:\n{context_str}\n\nQuestion: {query_str}\nAnswer:'
)
query_engine.update_prompts({'response_synthesizer:text_qa_template': qa_template})

Streaming Responses

query_engine = index.as_query_engine(streaming=True)
response = query_engine.query('Hello')
for token in response.response_gen:
    print(token, end='', flush=True)

Citations

Utilisez CitationQueryEngine pour obtenir des citations générées par le LLM :

from llama_index.core.query_engine import CitationQueryEngine

engine = CitationQueryEngine.from_args(index, similarity_top_k=4)
response = engine.query('What is our refund policy?')
print(response.response)
for i, node in enumerate(response.source_nodes):
    print(f'[{i+1}] {node.metadata}')

Post-traitements

Réordonnez ou filtrez les nœuds récupérés avant la synthèse :

from llama_index.postprocessor.cohere_rerank import CohereRerank

rerank = CohereRerank(api_key=COHERE_KEY, top_n=3)
query_engine = index.as_query_engine(
    similarity_top_k=20,           # retrieve 20
    node_postprocessors=[rerank]   # rerank to top 3
)

Metadata Filters

from llama_index.core.vector_stores import MetadataFilters, ExactMatchFilter

filters = MetadataFilters(filters=[
    ExactMatchFilter(key='department', value='engineering')
])
query_engine = index.as_query_engine(filters=filters)

Async Queries

response = await query_engine.aquery('What is our refund policy?')
print(response.response)

Moteur de conversation

Pour les conversations à plusieurs tours avec mémoire :

chat_engine = index.as_chat_engine(chat_mode='context')
response = chat_engine.chat('What is our refund policy?')
followup = chat_engine.chat('And for opened items?')

Chaînes de traitement et flux de travail

Pour les agents complexes à plusieurs étapes, les flux de travail de LlamaIndex vous offrent un flux piloté par les événements, dans le style Python — comparable, dans l’esprit, à LangGraph.

Mode de réponse

Quel mode de réponse est le plus lent, mais le plus précis ?

Récapitulatif

Configurez top_k, response_mode, les post-traitements et les filtres de métadonnées pour adapter votre moteur de requêtes. Utilisez CitationQueryEngine pour obtenir des réponses fiables.

Questions Fréquemment Posées

La leçon « Moteurs de requêtes et synthèse des réponses » est-elle gratuite ?

Oui — le texte complet de « Moteurs de requêtes et synthèse des réponses » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours AI Agents, passe à CoddyKit PRO. Le cours AI Agents comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Moteurs de requêtes et synthèse des réponses » ?

Les moteurs de requêtes orchestrent la récupération et la synthèse avec des stratégies comme refine, compact et tree_summarize. Tu pratiques AI Agents avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer AI Agents ?

Aucune expérience préalable n'est requise. AI Agents sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Moteurs de requêtes et synthèse des réponses » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon AI Agents ?

Oui. Chaque leçon AI Agents inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Chargeurs et analyseurs de documents
  2. Hiérarchie des index : vectoriel, arborescent, par mots-clés
  3. Moteurs de requêtes et synthèse des réponses
  4. Stratégie de décomposition en sous-questions
← Retour à AI Agents