V4 client Add property sets skip_vectorization to false even after explicitly mentioning to set it to true

V4 client Add property sets skip_vectorization to false even after explicitly mentioning to set it to true.

Class schema:

{
	"status_code": 1,
	"status_type": "RESPONSE_STATUS_OK",
	"status_message": "Count retrieved",
	"results": {
		"count": 0,
		"schema": {
			"invertedIndexConfig": {
				"bm25": {
					"b": 0.75,
					"k1": 1.2
				},
				"cleanupIntervalSeconds": 60,
				"indexNullState": false,
				"indexPropertyLength": false,
				"indexTimestamps": false,
				"stopwords": {
					"preset": "en"
				}
			},
			"multiTenancyConfig": {
				"enabled": false
			},
			"properties": [
				{
					"name": "data",
					"dataType": [
						"text"
					],
					"indexFilterable": true,
					"indexVector": true,
					"tokenizer": "word",
					"moduleConfig": {
						"text2vec-transformers": {
							"skip": false,
							"vectorizePropertyName": false
						}
					}
				}
			],
			"replicationConfig": {
				"factor": 1
			},
			"shardingConfig": {
				"virtualPerPhysical": 128,
				"desiredCount": 1,
				"actualCount": 1,
				"desiredVirtualCount": 128,
				"actualVirtualCount": 128,
				"key": "_id",
				"strategy": "hash",
				"function": "murmur3"
			},
			"vectorIndexConfig": {
				"cleanupIntervalSeconds": 300,
				"distanceMetric": "cosine",
				"dynamicEfMin": 100,
				"dynamicEfMax": 500,
				"dynamicEfFactor": 8,
				"ef": -1,
				"efConstruction": 128,
				"flatSearchCutoff": 40000,
				"maxConnections": 64,
				"skip": false,
				"vectorCacheMaxObjects": 1000000000000
			},
			"vectorIndexType": "hnsw",
			"vectorizer": "text2vec-transformers",
			"class": "Embedtest",
			"moduleConfig": {
				"text2vec-transformers": {
					"model": "sentence-transformers/all-MiniLM-L6-v2",
					"poolingStrategy": "masked_mean",
					"vectorizeClassName": false
				}
			}
		}
	}
}

Added a new property

collection.config.add_property(
    weaviate.classes.config.Property(
        name="test_property",
        data_type=weaviate.collections.classes.config.DataType.BOOL, 
        skip_vectorization=True
    )
)

After adding property class schema:

{
	"status_code": 1,
	"status_type": "RESPONSE_STATUS_OK",
	"status_message": "Count retrieved",
	"results": {
		"count": 0,
		"schema": {
			"invertedIndexConfig": {
				"bm25": {
					"b": 0.75,
					"k1": 1.2
				},
				"cleanupIntervalSeconds": 60,
				"indexNullState": false,
				"indexPropertyLength": false,
				"indexTimestamps": false,
				"stopwords": {
					"preset": "en"
				}
			},
			"multiTenancyConfig": {
				"enabled": false
			},
			"properties": [
				{
					"name": "data",
					"dataType": [
						"text"
					],
					"indexFilterable": true,
					"indexVector": true,
					"tokenizer": "word",
					"moduleConfig": {
						"text2vec-transformers": {
							"skip": false,
							"vectorizePropertyName": false
						}
					}
				},
				{
					"name": "test_property",
					"dataType": [
						"boolean"
					],
					"indexFilterable": true,
					"indexVector": false,
					"tokenizer": null,
					"moduleConfig": {
						"text2vec-transformers": {
							"skip": false,
							"vectorizePropertyName": false
						}
					}
				}
			],
			"replicationConfig": {
				"factor": 1
			},
			"shardingConfig": {
				"virtualPerPhysical": 128,
				"desiredCount": 1,
				"actualCount": 1,
				"desiredVirtualCount": 128,
				"actualVirtualCount": 128,
				"key": "_id",
				"strategy": "hash",
				"function": "murmur3"
			},
			"vectorIndexConfig": {
				"cleanupIntervalSeconds": 300,
				"distanceMetric": "cosine",
				"dynamicEfMin": 100,
				"dynamicEfMax": 500,
				"dynamicEfFactor": 8,
				"ef": -1,
				"efConstruction": 128,
				"flatSearchCutoff": 40000,
				"maxConnections": 64,
				"skip": false,
				"vectorCacheMaxObjects": 1000000000000
			},
			"vectorIndexType": "hnsw",
			"vectorizer": "text2vec-transformers",
			"class": "Embedtest",
			"moduleConfig": {
				"text2vec-transformers": {
					"model": "sentence-transformers/all-MiniLM-L6-v2",
					"poolingStrategy": "masked_mean",
					"vectorizeClassName": false
				}
			}
		}
	}
}

Hi! Sorry for the delay here. Missed this one :frowning:

I was able to reproduce this.

Thanks for reporting!

edit: PR here: Fix issue when adding a property on a vectorized collection by dudanogueira · Pull Request #1114 · weaviate/weaviate-python-client · GitHub