financial-assistant

Форк
0
28 строк · 1.2 Кб
1
from django.http import JsonResponse
2
from . import preprocessing, namedEntities, dataLoader, ranker, retrievers
3

4
def main(request):
5
    query = request.GET.get('q')
6
    preprocessed_query = preprocessing.preprocessing(query)
7
    lemmas = preprocessed_query.split(' ')
8
    bank_id, product_id = namedEntities.determine_bank_product(lemmas)
9
    
10
    prepocessed_db_texts, filtered_indices = dataLoader.get_db_texts(bank_id, product_id)
11
    filtered_dense_vectors = dataLoader.load_dense_vectors(filtered_indices)
12
  
13
    topK_dense_vectors_ids = retrievers.DenseRetriever(preprocessed_query, filtered_dense_vectors)  
14
    topK_sparse_vectors_ids = retrievers.SparseRetriever(preprocessed_query, filtered_indices)
15
    
16
    ranked_ids = ranker.rankTexts(topK_dense_vectors_ids, topK_sparse_vectors_ids)
17
    ranked_texts = dataLoader.load_texts_by_indices(prepocessed_db_texts, ranked_ids)
18

19
    for text in ranked_texts:
20
      bank, category, title, description, link = text.split('|')
21
      response_data = {
22
        "bank": bank,
23
        "category": category,
24
        "title": title,
25
        "answer": description,
26
        "link": link
27
      }
28
      return JsonResponse(response_data)   
29

30

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.