I cannot see my created class name

Hi,
I have created a class on a Weaviate cluster using:
client.schema.create(class_config)
I can see the class_config by:
print(client.show_class_config(class_name))
but when trying to see my available classes on my cluster using:
client.show_classes()
it says: ‘No classes found on cluster.’. I am not sure why I cannot see it on my cluster. Would you please help me understand the root cause?

Hi @Saeed_Rezaei,
Welcome to our community :hugs:

Do you see any error logs when creating the collection? Can you share the code of class_config?

Also, any specific reason not to use the python v4 client? It improved a lot over the v3 one.

Thanks!

Thanks @DudaNogueira :slight_smile:

No, I do not see any error logs. First of all I can see there have been stored several objects on my cluster. Also, when I run a vector search, I don’t get any error and I get some results with some scores, but when running the keyword search all the scores are zero. Having said that you can see my code below.

#external files
from preprocessing import FileIO
from weaviate_interface import WeaviateClient, WeaviateIndexer

#standards
import os
import time
import json
from typing import List
from tqdm.notebook import tqdm

from rich import print  

#load from local .env file
from dotenv import load_dotenv, find_dotenv
load_dotenv(find_dotenv(), override=True)

#read env vars from local .env file
api_key = os.environ['WEAVIATE_API_KEY']
url = os.environ['WEAVIATE_ENDPOINT']

#instantiate client
client = WeaviateClient(api_key, url)

#check if WCS instance is live and ready
client.is_live(), client.is_ready()

data_path = './data/Books-minilmL6-256.parquet'

data = FileIO().load_parquet(data_path)

from class_templates import book_class_properties
print(book_class_properties)

#create your own class name or use the example from above
class_name = 'Books_minilm_256_6'

#Review Indexing Body
class_config = {'classes': [

                      {"class": class_name,

                       "description": "Books on Parenting",

                       "vectorIndexType": "hnsw",

                       # Vector index specific settings
                       "vectorIndexConfig": {

                            "ef": 64,
                            "efConstruction": 128,
                            "maxConnections": 32,
                                            },

                       "vectorizer": "none",

                       # pre-defined property mappings
                       "properties": book_class_properties }
                      ]
               }

client.schema.create(class_config)

Also when running the following code for indexing the data:

indexer = WeaviateIndexer(client, batch_size=200, num_workers=2)
indexer.batch_index_data(data, class_name)

I get No classes found on cluster. However, when I go to dashboard, I can see objects have been created on my cluster, and the vector search seems to work perfectly fine.

Are you using any tool to connect to Weaviate?

Also, have you tried the python v4?

What is the server version you are running?

And finally, can you create an end to end code, with some sample data? Otherwise it gets hard to reproduce as there are some external code.