This blog post describes how to build a GraphRAG agent using the Neo4j graph database and Milvus vector database. The agent combines the power of graph databases and vector search to provide accurate and relevant answers to user queries. It uses a routing mechanism to decide whether to use the vector database or the knowledge graph, and includes fallback mechanisms in case the initial retrieval is insufficient. The agent also evaluates its own answers for relevance and accuracy, and can refine its search or attempt to correct errors if necessary. By combining the strengths of graph databases and vector search, this agent provides a more nuanced understanding of the information and leads to more accurate and nuanced answers.