Plugin
yaxuanm/qdrant v0.0.1
Problem
Hybrid Search fails on collections with named vectors (dense, sparse) created outside the plugin (e.g. custom embed scripts).
Error: Qdrant responded with HTTP 400: Wrong input: Not existing vector name error:
Root cause
- Operation inference checks
text before hybrid indicators → runs operation: "query" instead of hybrid_search
- Plain query sends unnamed
vector to /points/search — invalid when collection has only named vectors
- Sparse vector is not generated from
text in hybrid path (only dense embedding is created)
Reproduction
- Collection: named vectors
dense (3072) + sparse
- Tool: Qdrant · Hybrid Search
- Inputs:
text, using_dense: dense, using_sparse: sparse, fusion_method: rrf
- Embedding: text-embedding-3-large
Expected
hybrid_search → /points/query with prefetch using dense and sparse
Actual
query → /points/search with flat vector array (no vector name)
Fix verified locally (v0.0.2)
- Route hybrid before text→query
- Set
operation: hybrid_search on hybrid tool YAML
- Generate sparse via
fastembed (Qdrant/bm25)
- Add
fastembed dependency
Environment
- Dify 1.14.2 (self-hosted)
- Qdrant Cloud
- Plugin: yaxuanm/qdrant 0.0.1 from Marketplace
Plugin
yaxuanm/qdrant v0.0.1
Problem
Hybrid Search fails on collections with named vectors (
dense,sparse) created outside the plugin (e.g. custom embed scripts).Error: Qdrant responded with HTTP 400: Wrong input: Not existing vector name error:
Root cause
textbefore hybrid indicators → runsoperation: "query"instead ofhybrid_searchvectorto/points/search— invalid when collection has only named vectorstextin hybrid path (only dense embedding is created)Reproduction
dense(3072) +sparsetext,using_dense: dense,using_sparse: sparse,fusion_method: rrfExpected
hybrid_search→/points/querywith prefetch usingdenseandsparseActual
query→/points/searchwith flatvectorarray (no vector name)Fix verified locally (v0.0.2)
operation: hybrid_searchon hybrid tool YAMLfastembed(Qdrant/bm25)fastembeddependencyEnvironment