GitHub

Query Operations

Execute natural language queries with automatic domain detection, pipeline routing, and vector fallback. The query endpoints interface with MainOrchestrator to process queries through the three-pipeline architecture.

POST

/api/v1/query

Execute a natural language query with automatic domain detection and intelligent pipeline routing (Knowledge Graph, Text-to-SQL, or Vector Search).

Query Processing Flow

API Request → MainOrchestrator → Intent Classification → Pipeline Routing → Knowledge Graph / Text-to-SQL / Vector Search → Answer Generation

Request Parameters

ParameterTypeRequiredDescription
querystringYesThe natural language question to answer
user_idstringNoUser identifier for personalized responses
max_resultsintegerNoMaximum results (1-100, default: 10)
validate_answerbooleanNoEnable answer validation (default: true)
include_citationsbooleanNoInclude source citations (default: true)
kg_namesstring[]NoSpecific KGs to search (default: auto-detect)

Response Fields

FieldTypeDescription
answerstringGenerated answer to the query
pipeline_usedstringPipeline that processed the query: knowledge_graph, text_to_sql, or vector_search
citationsarraySource attributions with relevance scores
processing_time_msnumberQuery processing time in milliseconds
confidencenumberAnswer confidence score (0-1)
metadataobjectAdditional context about query processing
POST

/api/v1/query/unified

Advanced unified query interface with explicit mode control and comprehensive features. Supports auto-routing, manual pipeline selection, vector bypass, and enhanced re-ranking.

Query Modes

ModeDescriptionBest For
autoAutomatic pipeline selection via intent detectionGeneral queries when pipeline isn't obvious
kg_ragKnowledge Graph RAG with reasoningComplex questions requiring entity relationships
vectorFast vector similarity searchBulk document retrieval, semantic search
sqlText-to-SQL for structured queriesData retrieval, counting, filtering operations
hybridCombines multiple pipelinesComplex queries benefiting from multiple approaches

Request Parameters

ParameterTypeRequiredDescription
querystringYesThe natural language question
modestringNoQuery execution mode: auto, kg_rag, vector, sql, hybrid (default: auto)
enable_rerankingbooleanNoEnable LLM re-ranking (default: true)
reranker_methodstringNoRe-ranking method: listwise, pointwise, pairwise (default: listwise)
use_vector_bypassbooleanNoUse vector bypass for faster retrieval (default: false)
max_resultsintegerNoMaximum results (1-100, default: 10)
sql_max_resultsintegerNoMax SQL results (1-1000, default: 100)
kg_namesstring[]NoSpecific KGs to search
response_formatstringNoResponse format: standard, detailed, compact (default: standard)

Response Fields

FieldTypeDescription
querystringOriginal query
modestringMode used for processing
pipelinestringPipeline that processed the query
answerstringGenerated answer (KG-RAG queries)
generated_sqlstringGenerated SQL query (SQL mode)
resultsarrayQuery results (SQL mode)
vector_resultsarrayRetrieved documents (vector mode)
citationsarraySource citations with scores
processing_time_msnumberTotal processing time
routing_decisionstringExplanation for pipeline routing

Smart Routing

In auto mode, the system analyzes query intent using keywords and patterns. SQL-related terms trigger Text-to-SQL, bulk retrieval terms use vector search, and complex reasoning queries route to KG-RAG.
POST

/api/v1/query/vector-bypass

Fast vector similarity search bypassing the full RAG pipeline. Ideal for bulk document retrieval and scenarios where you need rapid results without answer generation.

Request Parameters

ParameterTypeRequiredDescription
querystringYesSearch query for semantic retrieval
top_kintegerNoNumber of results to return (1-100, default: 20)
include_rerankingbooleanNoApply LLM re-ranking to results (default: true)
reranker_methodstringNoRe-ranking method: listwise or pointwise (default: listwise)
kg_namesstring[]NoSpecific KGs to search
include_search_detailsbooleanNoInclude detailed search metadata (default: false)

Performance

Vector bypass is 3-5x faster than full RAG since it skips answer generation. Best for previews, bulk retrieval, or when you'll post-process results externally.
POST

/api/v1/query-sql

Convert natural language questions to SQL queries and execute them against the knowledge graph database. Ideal for structured data retrieval and analytical queries.

Request Parameters

ParameterTypeRequiredDescription
querystringYesNatural language query to convert to SQL
max_resultsintegerNoMaximum SQL results (1-1000, default: 100)
include_explanationbooleanNoInclude SQL generation explanation (default: true)
include_execution_planbooleanNoInclude SQL execution plan (default: false)
validate_querybooleanNoValidate SQL before execution (default: true)
query_typestringNoType hint: auto, select, aggregate, join, subquery (default: auto)
table_hintsstring[]NoSuggested tables to query

SQL Safety

All generated SQL queries are validated before execution. Only SELECT statements are permitted - no data modification operations.

Choosing the Right Endpoint

EndpointSpeedBest ForReturns
/queryMediumGeneral Q&A with automatic routingAnswer + Citations
/query/unifiedVariableAdvanced queries with mode controlMode-specific response
/query/vector-bypassFastBulk document retrievalRanked documents
/query-sqlVery FastStructured data queries, counts, filtersSQL results