Skip to content

[BUG] Robust 2-stage recommender system pipeline #207

Open
@bschifferer

Description

@bschifferer

Bug description

The unit test of the 2-stage recommender system pipeline is shaky due to multiple reasons:

  • user_id sent to triton inference server does not exist in FEAST storage
  • FIASS cannot return k valid candidates given the user query:
    -- FIASS will return k-candidates, but filled up with -1 for not found candidates
    -- -1 cannot be processed by FEAST
    -- Issue is that FIASS has not enough item vectors to generate an index. Even 256 item_embeddings could result in less than 100 candidates

Unit test:
https://github.com/NVIDIA-Merlin/Merlin/blob/main/tests/unit/examples/test_building_deploying_multi_stage_RecSys.py

Edge cases, we should be handling without crashing the systems:

  • user_id is not available in FEAST
  • user requests more topk than items in FIASS indexed (n): topk>FIASS
  • FIASS cannot return k-th valid candidates, even topk<n
  • FIASS returns item_ids which are not available in FEAST for futher processing
  • Candidates IDs are not availble in FEAST
  • Number of candidates are less then requested topk

What should be the result in each of the cases?

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions