weaviate/weaviate · error

could not get request metadata for provider: %s from results

Error message

could not get request metadata for provider: %s from results: %+v

What it means

Error emitted by extractGenerativeMetadata when type-asserting the results payload to the provider-specific params type fails (provider recognized, but the result object is not the expected concrete type). This indicates a module returned an unexpected result type — a programming/version inconsistency between the generative module and the replier. The failing provider and the raw results are included.

Source

Thrown at adapters/handlers/grpc/v1/generative/replier.go:207

				cohere.BilledUnits = &pb.GenerativeCohereMetadata_BilledUnits{
					InputTokens:     params.Meta.BilledUnits.InputTokens,
					OutputTokens:    params.Meta.BilledUnits.OutputTokens,
					SearchUnits:     params.Meta.BilledUnits.SearchUnits,
					Classifications: params.Meta.BilledUnits.Classifications,
				}
			}
			if params.Meta.Tokens != nil {
				cohere.Tokens = &pb.GenerativeCohereMetadata_Tokens{
					InputTokens:  params.Meta.Tokens.InputTokens,
					OutputTokens: params.Meta.Tokens.OutputTokens,
				}
			}
		}
		metadata.Kind = &pb.GenerativeMetadata_Cohere{Cohere: cohere}
	case mistralParams.Name:
		params := mistralClients.GetResponseParams(results)
		if params == nil {
			return nil, fmt.Errorf("could not get request metadata for provider: %s from results: %+v", providerName, results)
		}
		mistral := &pb.GenerativeMistralMetadata{}
		if params.Usage != nil {
			mistral.Usage = &pb.GenerativeMistralMetadata_Usage{
				PromptTokens:     convertIntPtrToInt64Ptr(params.Usage.PromptTokens),
				CompletionTokens: convertIntPtrToInt64Ptr(params.Usage.CompletionTokens),
				TotalTokens:      convertIntPtrToInt64Ptr(params.Usage.TotalTokens),
			}
		}
		metadata.Kind = &pb.GenerativeMetadata_Mistral{Mistral: mistral}
	case ollamaParams.Name:
		// Do nothing, no metadata for Ollama
	case openaiParams.Name:
		params := openaiClients.GetResponseParams(results)
		if params == nil {
			return nil, fmt.Errorf("could not get request metadata for provider: %s", providerName)
		}
		openai := &pb.GenerativeOpenAIMetadata{}

View on GitHub (pinned to 75aa4b6d11)

Solutions

  1. Check for a version mismatch between the generative module and the server
  2. Report as a bug with the provider name and result shape
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at adapters/handlers/grpc/v1/generative/replier.go:207 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of weaviate/weaviate@75aa4b6d11 (2026-09-04). Data as JSON: /api/errors/bd9be1d1622f61ca. Report an issue: GitHub.