Case Study

Navigate with GPT-4 and 3D Force-Directed Graph to Render Ontology Model

A stealth company that needed a web application to visualize relationships between various entities and their properties in the domain of therapeutic substances. This application would be used as a learning and decision-making tool to explore which therapeutic substances were in a specific category and could potentially warrant future investigation and investment. This was ultimately accomplished by building, designing, and deploying a three-dimensional visualization application with an attached GPT-4 chatbot that allowed stakeholders to interact with the company’s ontology model, and receive answers to questions posed specific to the company’s capacity and interest.


A company operating out of an incubator. Its goal was to apply ontology engineering and large language models to the problem of therapeutic substances to define and describe relationships and hierarchies among its own prescribed entities. Ultimately, we needed to build a robust web application to get Series A funding for a high visibility project that could be specific enough to solve the use case for the company, and extendable enough to work for different companies and their own specific ontologies and models under the Incubator’s umbrella.
The company’s area of interest was in a field new to the Incubator, and there were going to be large learning and communication gaps to fill. The challenge was to provide users with as much context about the subject matter, the problems, its history, and the path forward, but with as little mental load and as intuitively as possible. There were many concepts to define, and many areas to narrow in on and expand. How do we relay the difficulty of manufacture, potential value, or marketability for a specific therapeutic substance and ones in its class? How do we give users the correct context to the problem specific to the company’s area of interest and approach? How do we categorize and display substances with a kind of genealogical ancestry model to potentially identify or eliminate substances of interest?


We needed to provide a software engineer capable of building a robust web application quickly to visualize the company’s classification system and transform notebook data into a relational data model on the back end, and interactive graphics on the front end.
We used a 3D force-directed graph drawing library to render the company’s ontology model, and the complexities among entities, using a node, as a point representing an entity, that could have many links, and connection points to other entities. We set nodes to be entities with certain properties and ancestries that we represented with discrete node colors and sizes. Each node could have many links to other nodes, and these links could have their own properties to describe their connections. We used link length to describe a sense of technical difficulty, so that farther nodes from the origin would be more difficult to research, and node size to be value, so larger nodes have larger estimated cumulative potential worth. We also integrated a GPT-4 chatbot that was trained on a prompt defined by the client, to answer questions any stakeholder might have about the classes, categories, and approach proposed by the company.


The application was designed, developed, and deployed to production. The company successfully presented at its Series A meeting with much acclaim for the future of this application.

While developing the application, the data model had shifted to consolidate entities and properties, so creating a flexible schema in which we could generate the data for the application, regardless of model definition, was key to future-proof the application against further model shifts. Additionally, creating robust state management for the 3D graphing library used in this application was a challenge due to the complicated user interactions and the graph library being outdated to current best practices. Multiple interactions of state management were used before settling on a hybrid approach: using one state management library for direct graph interactions, and another for outside graph communication.
Already, several other stealth companies working with the same incubator have expressed deep interest in having their own version of this application with their own ontologies for their own entities of interest. Being able to both take a wide view of the landscape and narrow in on specific entities has been hugely valuable for the company, and others.