def upload_to_search()

in Autogen_v0.4/rag_agent/search_helper.py [0:0]


def upload_to_search(index_name, data_file, language_suffix: str = "en"):
    
    vector_file_name = f"{data_file}_with_vectors.json"

    with open(vector_file_name, "r") as f:
        aml_index_data_with_vectors = json.loads(f.read())

    search_client = SearchClient(endpoint=azure_search_endpoint, index_name=index_name, credential=credential)

    for doc in aml_index_data_with_vectors:
        
        last_updated = datetime.fromisoformat(doc["lastupdated"]).isoformat() + "Z"
        search_doc = {
            "id": doc["id"],
            "docName": doc["doc_name"],
            "pageNumber": str(doc["page_number"]),
            f"title_{language_suffix}": doc["title"],
            f"content_{language_suffix}": doc["content"],
            f"category_{language_suffix}": json.loads(doc["category"]),
            f"tags_{language_suffix}": json.loads(doc["tags"]),
            "lastUpdated": last_updated,
            "titleVector": doc["titleVector"],
            "contentVector": doc["contentVector"],
            "categoryVector": doc["categoryVector"],
            "tagsVector": doc["tagsVector"]
        }

        result = search_client.upload_documents(documents=[search_doc])

    print(f"{len(aml_index_data_with_vectors)} Documents uploaded to Azure Search")