Weaviate · JSON Structure

Weaviate Class Structure

Weaviate Class schema

Type: object Properties: 13
Vector DatabaseAIMachine LearningSemantic SearchOpen SourceGraphQLKubernetes

Weaviate Class Structure is a JSON Structure definition published by Weaviate, describing 13 properties. It conforms to the https://json-structure.org/meta/extended/v0/# meta-schema.

Properties

class vectorConfig vectorIndexType vectorIndexConfig shardingConfig replicationConfig invertedIndexConfig multiTenancyConfig objectTtlConfig vectorizer moduleConfig description properties

Meta-schema: https://json-structure.org/meta/extended/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/extended/v0/#",
  "$id": "https://api-evangelist.github.io/weaviate/json-structure/weaviate-class-structure.json",
  "title": "Class",
  "description": "Weaviate Class schema",
  "type": "object",
  "properties": {
    "class": {
      "type": "str",
      "description": "Name of the collection (formerly 'class') (required). Multiple words should be concatenated in CamelCase, e.g. `ArticleAuthor`."
    },
    "vectorConfig": {
      "type": "map",
      "description": "Configure named vectors. Either use this field or `vectorizer`, `vectorIndexType`, and `vectorIndexConfig` fields. Available from `v1.24.0`."
    },
    "vectorIndexType": {
      "type": "str",
      "description": "Name of the vector index type to use for the collection (e.g. `hnsw` or `flat`)."
    },
    "vectorIndexConfig": {
      "type": "map",
      "description": "Vector-index config, that is specific to the type of index selected in vectorIndexType"
    },
    "shardingConfig": {
      "type": "map",
      "description": "Manage how the index should be sharded and distributed in the cluster"
    },
    "replicationConfig": {
      "type": "#ReplicationConfig"
    },
    "invertedIndexConfig": {
      "type": "#InvertedIndexConfig"
    },
    "multiTenancyConfig": {
      "type": "#MultiTenancyConfig"
    },
    "objectTtlConfig": {
      "type": "#ObjectTtlConfig"
    },
    "vectorizer": {
      "type": "str",
      "description": "Specify how the vectors for this collection should be determined. The options are either `none` - this means you have to import a vector with each object yourself - or the name of a module that provides vectorization capabilities, such as `text2vec-weaviate`. If left empty, it will use the globally configured default ([`DEFAULT_VECTORIZER_MODULE`](https://docs.weaviate.io/deploy/configuration/env-vars)) which can itself either be `none` or a specific module."
    },
    "moduleConfig": {
      "type": "map",
      "description": "Configuration specific to modules in a collection context."
    },
    "description": {
      "type": "str",
      "description": "Description of the collection for metadata purposes."
    },
    "properties": {
      "type": "array",
      "description": "Define properties of the collection."
    }
  }
}