{"record":{"id":"cbce192a35ab970f","repo":"weaviate/weaviate","slug":"vectorize-params-w-cbce19","errorCode":null,"errorMessage":"vectorize params: %w","messagePattern":"vectorize params: %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"usecases/traverser/explorer.go","lineNumber":807,"sourceCode":"\t\t\t\t}\n\t\t\t\tif len(additionalProperties) > 0 {\n\t\t\t\t\tinnerRef.Fields[\"_additional\"] = additionalProperties\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunc (e *Explorer) CrossClassVectorSearch(ctx context.Context,\n\tparams ExploreParams,\n) ([]search.Result, error) {\n\tif err := e.validateExploreParams(params); err != nil {\n\t\treturn nil, errors.Wrap(err, \"invalid params\")\n\t}\n\n\tvector, targetVector, err := e.vectorFromExploreParams(ctx, params)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"vectorize params: %w\", enterrors.NewErrQueryVectorization(err))\n\t}\n\n\tres, err := e.searcher.CrossClassVectorSearch(ctx, vector, targetVector, params.Offset, params.Limit, nil)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"vector search: %w\", err)\n\t}\n\n\te.trackUsageExplore(res, params)\n\n\tresults := []search.Result{}\n\tfor _, item := range res {\n\t\titem.Beacon = crossref.NewLocalhost(item.ClassName, item.ID).String()\n\t\terr = e.appendResultsIfSimilarityThresholdMet(item, &results, params)\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"append results based on similarity: %w\", err)\n\t\t}\n\t}\n","sourceCodeStart":789,"sourceCodeEnd":825,"githubUrl":"https://github.com/weaviate/weaviate/blob/75aa4b6d11f8818305aafd4440b4e32794f7ca04/usecases/traverser/explorer.go#L789-L825","documentation":"CrossClassVectorSearch (the GraphQL Explore query path) vectorizes the natural-language/params input via vectorFromExploreParams; if that fails, Weaviate wraps the error as ErrQueryVectorization with this message. It means a vectorizer module failed or refused to turn the explore params into a query vector — the query never reached the vector index.","triggerScenarios":"An Explore query where the configured vectorizer errors: missing module (no vectorizer for the explore request), text2vec provider failure (bad API key, network), or invalid nearText params (e.g. empty concepts with no module to vectorize).","commonSituations":"text2vec-transformers module not enabled/started in docker-compose; OPENAI/COHERE API key invalid or quota exceeded; querying Explore with nearVector/nearText when the corresponding module is not enabled.","solutions":["Check logs for the wrapped ErrQueryVectorization cause to identify the vectorizer","Ensure the required vectorizer module is enabled (ENABLE_MODULES) and healthy","Verify provider API keys and network egress for remote vectorizers","Validate explore params (non-empty concepts, valid module params) before querying","Retry on transient provider errors with backoff"],"exampleFix":"// before\n{ Explore(nearText:{concepts:[]}) { distance certainty } }\n// after (non-empty concepts and module enabled)\n{ Explore(nearText:{concepts:[\"machine learning\"]}) { distance certainty } }","handlingStrategy":"retry","validationCode":"// ensure the module backing nearText is enabled before Explore\nconst modules = await (await fetch(`${WEAVIATE_URL}/v1/modules`)).json()\nif (!modules['text2vec-openai'] && usingNearText) {\n  throw new Error('text2vec module not enabled')\n}","typeGuard":null,"tryCatchPattern":"try {\n  const res = await weaviate.explore().withNearText({concepts})...do()\n} catch (err) {\n  if (String(err).includes('vectorize params')) {\n    if (isRateLimit(err)) return await withBackoff(() => retry())\n    throw new Error('check vectorizer module config: ' + err)\n  }\n  throw err\n}","preventionTips":["Enable the vectorizer module matching your explore params","Keep remote provider API keys valid and monitor quotas","Validate concepts are non-empty before Explore queries"],"tags":["go","weaviate","vectorization","explore"],"backgroundTag":"query-vectorization-failed","analyzedSha":"75aa4b6d11f8818305aafd4440b4e32794f7ca04","analyzedAt":"2026-09-04T14:58:20.392Z","contentChangedAt":"2026-09-04T14:58:20.392Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}