config := index.GetIndexConfig()
// Access configuration based on index type
switch index.GetIndexType() {
case "ivf":
if config.IndexIVFModel != nil {
fmt.Printf("IVF Dimension: %d\n", config.IndexIVFModel.GetDimension())
}
case "ivfflat":
if config.IndexIVFFlatModel != nil {
fmt.Printf("IVFFlat Dimension: %d\n", config.IndexIVFFlatModel.GetDimension())
}
case "ivfpq":
if config.IndexIVFPQModel != nil {
fmt.Printf("IVFPQ Dimension: %d\n", config.IndexIVFPQModel.GetDimension())
fmt.Printf("PQ Dimension: %d\n", config.IndexIVFPQModel.GetPqDim())
fmt.Printf("PQ Bits: %d\n", config.IndexIVFPQModel.GetPqBits())
}
}