Connect to Azure Cognitive Search for Data Retrieval
A LlamaIndex data loader that retrieves documents from Azure Cognitive Search indexes using service credentials and returns them as text.
Why it matters
Integrate your applications with Azure Cognitive Search to efficiently retrieve and utilize data from your indexes. This asset enables seamless data loading for further processing or analysis within AI frameworks.
Outcomes
What it gets done
Load documents from a specified Azure Cognitive Search index.
Query the search index using custom search terms and filters.
Extract relevant content fields from search results.
Integrate retrieved data into LlamaIndex or Langchain applications.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/li-reader-readers-azcognitive-search | bash Capabilities
What this skill does
Pulls structured data fields from unstructured text.
Chunks, embeds, and indexes documents for semantic retrieval.
Searches the web and retrieves relevant sources.
Writes and executes SQL or NoSQL queries on databases.
Overview
Azure Cognitive Search Loader
What it does
Retrieves documents from Azure Cognitive Search indexes
How it connects
When you need to load documents from an Azure Cognitive Search index into LlamaIndex
Source README
Azure Cognitive Search Loader
pip install llama-index-readers-azcognitive-search
The AzCognitiveSearchReader Loader returns a set of texts corresponding to documents retrieved from specific index of Azure Cognitive Search.
The user initializes the loader with credentials (service name and key) and the index name.
Usage
Here's an example usage of the AzCognitiveSearchReader.
from llama_index.readers.azcognitive_search import AzCognitiveSearchReader
reader = AzCognitiveSearchReader(
"<Azure_Cognitive_Search_NAME>",
"<Azure_Cognitive_Search_KEY>",
"<Index_name>",
)
query_sample = ""
documents = reader.load_data(
query="<search_term>",
content_field="<content_field_name>",
filter="<azure_search_filter>",
)
Usage in combination with langchain
from llama_index.core import VectorStoreIndex, download_loader
from langchain.chains.conversation.memory import ConversationBufferMemory
from langchain.agents import Tool, AgentExecutor, load_tools, initialize_agent
from llama_index.readers.azcognitive_search import AzCognitiveSearchReader
az_loader = AzCognitiveSearchReader(
COGNITIVE_SEARCH_SERVICE_NAME, COGNITIVE_SEARCH_KEY, INDEX_NAME
)
documents = az_loader.load_data(query, field_name)
index = VectorStoreIndex.from_documents(
documents, service_context=service_context
)
tools = [
Tool(
name="Azure cognitive search index",
func=lambda q: index.query(q),
description=f"Useful when you want answer questions about the text on azure cognitive search.",
),
]
memory = ConversationBufferMemory(memory_key="chat_history")
agent_chain = initialize_agent(
tools, llm, agent="zero-shot-react-description", memory=memory
)
result = agent_chain.run(input="How can I contact with my health insurance?")
This loader is designed to be used as a way to load data into LlamaIndex.
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.