Documentation Index
Fetch the complete documentation index at: https://docs.neuraltrust.ai/llms.txt
Use this file to discover all available pages before exploring further.
The AzureKnowledgeBase class provides a was to access documents in Azure Knowledgebase with Azure Search functionality. The class facilitates document indexing, searching, and topic-based organization. In this implementation, Azure Search serves as the backend for indexing and querying documents, while an embedding model and an LLM client assist in document categorization and topic summarization.
Dependencies
The following external dependencies are required:
uv add "trusttest[rag-azure]"
Usage Example
import os
from dotenv import load_dotenv
from trusttest.knowledge_base.azure_search import AzureKnowledgeBase
from trusttest.probes.rag import RAGProbe, BenignQuestion
from trusttest.evaluation_scenarios import EvaluationScenario
from trusttest.evaluator_suite import EvaluatorSuite
from trusttest.evaluators import AnswerRelevanceEvaluator
from trusttest.targets.testing import DummyTarget
load_dotenv(override=True)
knowledge_base = AzureKnowledgeBase(
service_endpoint=os.getenv("AZURE_SEARCH_SERVICE_ENDPOINT"),
key=os.getenv("AZURE_SEARCH_KEY"),
index_name=os.getenv("AZURE_SEARCH_INDEX_NAME"),
fields_mapping={"content": "chunk", "id": "chunk_id"},
language="Spanish",
)
probe = RAGProbe(
target=DummyTarget(),
knowledge_base=knowledge_base,
num_questions=2,
question_types=[BenignQuestion.SIMPLE],
)
scenario = EvaluationScenario(
name="RAG Functional",
evaluator_suite=EvaluatorSuite(evaluators=[AnswerRelevanceEvaluator()], criteria="any_fail"),
)
test_set = probe.get_test_set()
results = scenario.evaluate(test_set)
results.display_summary()