from azure.search.documents import SearchClient | |
from azure.core.credentials import AzureKeyCredential | |
from modules.config import search_client | |
def search(user_query): | |
search_results = search_client.search( | |
search_text=user_query, | |
highlight_fields="content", # Indicar o campo que deve ser realçado | |
top=3 # Limitar o número de resultados retornados | |
) | |
# Estruturar os resultados | |
contents = [] | |
sources = [] | |
for result in search_results: | |
document_name = result['metadata_storage_name'] | |
formatted_name = document_name.replace("_", " ").replace(".pdf", "").upper() | |
sources.append(formatted_name) | |
# Pegar os highlights e unificar em uma string | |
highlights = " ".join(result.get('@search.highlights', {}).get('content', [])) | |
contents.append(f"Fonte: {formatted_name}\nTrecho destacado: {highlights}") | |
# Combinar os resultados em uma única string | |
highlighted_content = "\n\n".join(contents) | |
return highlighted_content |