go-redis/redis · error
FT.HYBRID: vector Value must contain a blob at index 1
Error message
FT.HYBRID: vector Value must contain a blob at index 1
What it means
Error "FT.HYBRID: vector Value must contain a blob at index 1" thrown in go-redis/redis.
Source
Thrown at search_commands.go:3778
switch vector := v.(type) {
case *VectorFP32:
return hybridVectorBytes(vector.Val)
case *VectorFloat16:
return hybridVectorBytes(vector.Val)
case *VectorBFloat16:
return hybridVectorBytes(vector.Val)
case *VectorFloat64:
return hybridVectorBytes(vector.Val)
case *VectorInt8:
return hybridVectorBytes(vector.Val)
case *VectorUint8:
return hybridVectorBytes(vector.Val)
case *VectorValues, *VectorRef:
return nil, fmt.Errorf("FT.HYBRID: unsupported vector type %T", v)
default:
values := v.Value()
if len(values) < 2 {
return nil, fmt.Errorf("FT.HYBRID: vector Value must contain a blob at index 1")
}
return values[1], nil
}
}
func hybridVectorBytes(blob []byte) ([]byte, error) {
if len(blob) == 0 {
return nil, fmt.Errorf("FT.HYBRID: vector blob is required")
}
return blob, nil
}
// generateVectorParamName returns a parameter name that is not already present
// in params. It is used to pass vector data via the PARAMS mechanism when the
// caller does not provide a VectorParamName, since inline vector blobs are no
// longer supported by Redis.
func generateVectorParamName(params map[string]interface{}) string {
for i := 0; ; i++ {View on GitHub (pinned to 36d97525cd)
Solutions
- Structure the vector Value as [fieldName, blob] with the blob at index 1
- Check how the vector Value slice is constructed
When it happens
Trigger: Thrown at search_commands.go:3778 when the library encounters an invalid state.
Common situations: Build vector values via a typed helper so positional layout is guaranteed.
AI-assisted analysis of go-redis/redis@36d97525cd (2026-08-06).
Data as JSON: /data/errors/ee1087baa1bffe77.json.
Report an issue: GitHub.