DeepSieve automatically handles query failures through a reflective mechanism:
- detection failure: When the retrieval of a sub-question fails, the system logs the reason for the error (e.g., the data source is not available or the retrieval result is empty).
- auto-retry: DeepSieve will try to retrieve the subproblem again, supporting up to two reflections (which can be done via the
--max_reflexion_times
(Parameter adjustment). - Logging: The reflection process is saved in a log file (e.g.
query_{i}_results.jsonl
) in which the user can view the reason for failure and retry results.
This mechanism significantly improves the robustness of the system, especially when dealing with heterogeneous data from multiple sources, and reduces query interruptions due to temporary errors.
This answer comes from the articleDeepSieve: a RAG Intelligent Information Screening Tool for Processing Complex Query SourcesThe