This repository contains a sample dataset designed for learning how to develop and deploy a Curiosity Workspace instance with custom data. The dataset includes fictional but realistic data on products, parts, and customer support cases generated using a large language model (LLM). This data can be used to experiment with Curiosity's knowledge graph, natural language processing and AI-powered features.
The sample dataset consists of three primary datasets:
- Devices: A list of product names.
- Parts: A collection of parts associated with the products, including part names, manufacturer, and the products they belong to.
- Support Cases: Fictional AI-generated customer support cases related to the products and parts in the dataset, including a summary, conversation, applicable device, and resolution status.
The datasets have been generated to simulate realistic technical support data and offer a basis for testing and learning how to use the Curiosity Library to ingest and structure data on a Curiosity Workspace graph.
|-- /data/
| |-- devices.json # Product data
| |-- parts.json # Part data
| |-- support-cases.json # Support case data
|-- ...
The schema for the dataset is as follows:
public class Device
{
public string Name { get; set; }
}
public class Part
{
public string Name { get; set; }
public string Manufacturer { get; set; }
public string[] Devices { get; set; }
}
public class SupportCase
{
public string Summary { get; set; }
public string Content { get; set; }
public string Status { get; set; }
public string Device { get; set; }
public DateTimeOffset Time { get; set; }
}
One suggestion for a graph schema based on this data could be:
graph LR
%% Nodes
Device["Device"]
Part["Part"]
SupportCase["Case"]
Status["Status"]
Manufacturer["Manufacturer"]
Device -->|HasPart| Part
Device -->|HasSupportCase| SupportCase
Device -->|HasManufacturer| Manufacturer
Part -->|UsedBy| Device
Part -->|HasManufacturer| Manufacturer
SupportCase -->|ForDevice| Device
SupportCase -->|HasStatus| Status
Status -->|StatusOf| SupportCase
Manufacturer -->|ManufacturerOf| Device
Manufacturer -->|ManufacturerOf| Part
- Set up your Curiosity Workspace: Follow the Curiosity Workspace documentation to get your environment ready.
- Write a data connector: Write a sample data connector using the JSON files from the
data/
directory into your Curiosity Workspace. Explore the graph using the shell within the workspace. - Configure NLP parsing: Setup natural processing pipelines and models to capture entities and link information on the graph.
- Make the data searchable: Use Curiosity’s administrative interfaces to configure search and filtering for products, parts, and support cases.
- Create your own API endpoints: Practice implementing custom API endpoints.
- Build and deploy your own interface: Practice creating custom user interfaces, implementing custom API endpoints, and explore the graph using the shell within the workspace.
This sample dataset is provided for educational and demonstration purposes only. It is not intended for any other use.
Happy exploring with Curiosity Workspace! 🚀