Skip to content

[yaxuanm/qdrant] Hybrid Search fails on named-vector collections (dense/sparse) #2575

Description

@sharonadhitya

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

  1. Operation inference checks text before hybrid indicators → runs operation: "query" instead of hybrid_search
  2. Plain query sends unnamed vector to /points/search — invalid when collection has only named vectors
  3. 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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions