A media company already keeps 40 million article embeddings in Pinecone, and each Pinecone record's ID matches an articleId property on the corresponding :Article node in Neo4j, where authors, topics and citations are modelled. The team does not want to copy vectors into Neo4j. Which neo4j-graphrag approach retrieves context that includes the graph neighbourhood?
- A.
Use a PineconeNeo4jRetriever with idpropertyneo4j set to articleId and a retrieval_query that traverses to authors and topics
- B.
Create a Neo4j vector index over :Article nodes and run a VectorCypherRetriever against it, then synchronise it with Pinecone nightly
- C.
Use a HybridRetriever whose full-text index is the Pinecone index and whose vector index is the Neo4j article index
- D.
Use a Text2CypherRetriever and include the Pinecone index name in the schema so the LLM can query both stores in one step
Show answer
Answer: A
The external-store retrievers run the vector search in Pinecone, map hits to Neo4j nodes by an ID property, and accept a retrieval_query.
- A. Correct: PineconeNeo4jRetriever searches Pinecone, matches hits to nodes by articleId, and a retrieval_query adds the graph neighbourhood.
- B. Incorrect: this copies the vectors into Neo4j, which the stated constraint rules out, and adds a nightly synchronisation job.
- C. Incorrect: HybridRetriever needs a Neo4j full-text index and a Neo4j vector index; a Pinecone index can be neither.
- D. Incorrect: Text2CypherRetriever only runs generated Cypher against Neo4j; it has no way to query a Pinecone index.