Conversation Examples
Example conversations showing how to explore biomedical knowledge graphs with ARK CLI.
These examples demonstrate the kinds of questions you can ask and how the AI agent traverses the knowledge graph to find answers. Each example shows the user query and explains what the agent does behind the scenes.
These examples use PrimeKG. The exact results depend on the knowledge graph you're querying. Different graphs may represent the same biomedical concepts with different levels of detail.
Simple Entity Lookup
Finding a gene's neighbors
Query:
What are the neighbors of the A2M gene/protein?What the agent does:
- Calls
findNodesByNamewith"A2M"to locate the gene node - Calls
getNeighborsByNodeIdon the matched node to retrieve connected entities - Calls
getNodeDetailson a subset of neighbors to get their names and types - Summarizes the results, listing diseases, other genes, biological processes, and pathways connected to A2M
Drug-Disease Relationships
Finding treatments for a disease
Query:
What drugs are used to treat Type 2 Diabetes?What the agent does:
- Calls
findNodesByNamewith"Type 2 Diabetes"to find the disease node - Calls
getNeighborsByNodeIdwith an edge type filter for drug-disease relationships - Calls
getNodeDetailson the drug nodes to retrieve their full information - Returns a list of drugs with their properties and relationship types
Understanding drug mechanisms
Query:
How does metformin work at the molecular level?What the agent does:
- Searches for the metformin drug node
- Traverses to gene/protein targets via drug-gene edges
- Explores those proteins' involvement in biological processes and pathways
- Synthesizes a multi-hop explanation: drug → protein targets → pathways → biological effects
Multi-Hop Reasoning
Finding a connecting gene
Query:
Is there a gene that connects cutaneous T-cell lymphoma and mRNA binding?What the agent does:
- Calls
findNodesByNamefor both "cutaneous T-cell lymphoma" and "mRNA binding" - Uses
searchInSurroundingson the disease node withquery: "mRNA binding"to search within 2 hops - Alternatively, calls
getNeighborsByNodeIdon both entities and looks for shared neighbors - Identifies genes that appear in both neighborhoods, establishing the connection
Exploring shared genetic factors
Query:
Which diseases share genetic risk factors with both Alzheimer's and Parkinson's?What the agent does:
- Finds both disease nodes
- Gets gene neighbors for each disease
- Identifies overlapping genes
- For each shared gene, finds other connected diseases
- Returns diseases that share genetic connections with both conditions
Using searchInSurroundings
Targeted neighborhood search
Query:
Are there any kinase-related proteins in the neighborhood of BRCA1?What the agent does:
- Finds the BRCA1 node
- Calls
searchInSurroundingswithnodeIdfor BRCA1,query: "kinase", andnodeType: "gene/protein" - The tool searches within 1-2 hops, matching node names and properties against the query
- Returns matching neighbors ranked by relevance, with edge information showing how they connect to BRCA1
Tips for Effective Queries
- Be specific with entity names. "BRCA1" works better than "breast cancer gene" for initial lookups.
- Ask the agent to explain its reasoning. This helps you understand the traversal path and verify the results.
- Use follow-up questions to drill deeper. Rather than asking overly complex single questions, build up context across turns.
- Ask about available relationship types. "What types of edges connect to this node?" helps you understand the graph structure.
- Request node properties. Properties often contain additional metadata like synonyms, external database IDs, and descriptions.