[Bug]: Confused about the possibility of deep retrieval in a plugins without the external system being a vector database or supports semantic search.
ragbn opened this issue · comments
Sample
msgext-multiparam-js
Description
Plugin that demonstrates how to implement complex utterances and support deep retrieval.
I understand complex utterances with multiple parameters, but how is deep retrieval possible without ingesting external data into a semantic index or using Azure Cognitive Search or external system being some form of vector database? Are we not limited by search capabilities of APIs? In your example data source is simple json object collection, how does it support deep retrieval?
Steps to reproduce
Na
Expected results
NA
Actual results
NA
Additional Info
No response
Thank you for you question @ragbn
Are we not limited by search capabilities of APIs? In your example data source is simple json object collection, how does it support deep retrieval?
The sample you refer to is designed to show how a plugin can be created to support multiple parameters (compound utterances) through the configuration of the app manifest and show how to retrieve the values passed from Copilot in the query
object when the plugin is executed. This is intentional. It is up to developers to implement the logic beyond this. In this case, "deep retrieval" does not mean RAG or Vector.
In the Northwind Inventory and Doc Search samples we show two different ways in which to implement the logic either by calling external APIs directly, or by using a RAG pattern and returning results based on that data back to Copilot for Microsoft 365 to use in it's response back to the end user.