Skip to main content

Core concepts

What is a Knowledge Box?

A Knowledge Box is a logical container where you will store data. Each piece of data stored in your Knowledge Box is a resource.

A resource is similar to a file but with more capabilities. It is usually created from a document, but it may contain a lot more than the binary information. For example: multiple fields of various types (layouts, conversations, etc), metadata or embeddings.

A field represents different types of extracted knowledge. It has been designed to store information efficiently. Currently, NucliaDB supports these field types:

  • file
  • link
  • text
  • layout
  • conversation
  • keyword set
  • date/time

A resource can contain an undefined number of fields of each type.

From the API point of view, you should be familiar with the following terms: Knowledge Box, Resource and Field.

A simple example could be a recipe: the resource title could be "Spagetti Carbonara" and it could contain a summary too. Then the resource would contain a text field explaining the recipe steps and a file field with a picture of the final dish.