Best for: Capturing complex multi-hop relationships, hierarchal understanding, temporal reasoning and high accuracy.Optionally define your custom ontology - You can define a custom ontology for your knowledge graph (with help from AI) so that you get
a highly dependable graph that captures all the information that is important to your agent without any unnecessary noise.
Custom/ Static Ontology
Dynamic Ontology
Use the suggest ontology endpoint to get a suggested ontology by describing the use case or agent persona, optionally
sample expected input/ ouput that the agent will be expected to perform.
Copy
# Let AI suggest an ontology based on your use casecurl -X POST https://api.intellibase.dev/api/v1/ontologies/suggest \ -H "Authorization: Bearer ib-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "usecase": "Track software engineering projects, developers, and features" }'
Use the create ontology endpoint to save the ontology into Intellibase and generate an ontology ID.
Create a project by providing a name. If you don’t provide an ontology ID during project creation,
the knowledge graph generated will not have a fixed/ static ontology and will be generated based on
the data being ingested into the engine.
Now let’s add some data to your project. We currently only support text input, we’ll soon be adding support for more input data types.
Copy
curl -X POST https://api.intellibase.dev/api/v1/projects/{project_id}/ingest \ -H "Authorization: Bearer ib-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "text": "Alice joined the engineering team in January 2024. She is working on the authentication feature, which is part of the security module. The feature is scheduled to launch in March 2024.", "source_doc_id": "doc-001", }'
Ask natural language questions to fetch the most relevant nodes, edges and chunks.
Static Mode (Fast)
Dynamic Mode (Intelligent)
The static query mode is designed for low latency and does not use AI during retrieval.
The results are still of very high quality and better than a basic vanilla vector RAG system.
Copy
curl -X POST https://api.intellibase.dev/api/v1/projects/{project_id}/query \ -H "Authorization: Bearer ib-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "query": "What features is Alice working on?", "mode": "static" }'
The dynamic query mode is designed for high accuracy with a slight trade-off in terms of latency.
It uses AI to retrive the most relevant information from the context engine.
Copy
curl -X POST https://api.intellibase.dev/api/v1/projects/{project_id}/query \ -H "Authorization: Bearer ib-your-api-key" \ -H "Content-Type: application/json" \ -d '{ "query": "What features is Alice working on?", "mode": "dynamic" }'
Response:
Copy
{ "query": "What features is Alice working on?", "strategy_used": "hybrid", "results": { "summary": "Alice is working on the authentication feature, which is part of the security module and scheduled to launch in March 2024.", "entities": [ { "type": "Person", "name": "Alice", "properties": { "role": "Engineer", "joined": "January 2024" } }, { "type": "Feature", "name": "Authentication Feature", "properties": { "module": "Security", "launch_date": "March 2024" } } ], "relationships": [ { "source": "Alice", "target": "Authentication Feature", "type": "WORKS_ON" } ], "chunks": [ { "text": "She is working on the authentication feature...", "similarity": 0.89 } ] }}