def create_sample_indexer()

in demo-python/code/community-integration/ragas/lib/utils.py [0:0]


def create_sample_indexer(
        search_indexer_client: SearchIndexerClient,
        index_name: str,
        skilset_name: str,
        datasource_name: str
    ):
    # Create an indexer  
    indexer_name = f"{index_name}-indexer"  
    
    indexer = SearchIndexer(  
        name=indexer_name,  
        description="Indexer to index documents and generate embeddings",  
        skillset_name=skilset_name,  
        target_index_name=index_name,  
        data_source_name=datasource_name,  
        # Map the metadata_storage_name field to the title field in the index to display the PDF title in the search results  
        field_mappings=[FieldMapping(source_field_name="metadata_storage_name", target_field_name="title")],
        schedule=IndexingSchedule(interval=timedelta(minutes=5))
    )  
    
    indexer = search_indexer_client.create_or_update_indexer(indexer)  
    
    # Run the indexer  
    search_indexer_client.run_indexer(indexer_name)
    return indexer