Spaces:
Configuration error

yonkasoft commited on
Commit
53f8a7d
·
verified ·
1 Parent(s): 9887605

Update model.py

Browse files
Files changed (1) hide show
  1. model.py +35 -5
model.py CHANGED
@@ -1,21 +1,51 @@
1
  #endpointe ait model
2
  import requests
3
  from config import HUGGINGFACE_API_URL, HUGGINGFACE_API_KEY
4
- from database import get_reference_data,connect_to_mongodb,insert_data_into_input_db
 
5
 
 
 
 
 
6
 
7
  #reference mongodb den çekilen veriler
 
 
 
 
 
 
8
 
9
- #input mongodb üzerindne çekilen veriler(kullanıcıdan alınan bilgilerin lamba üzerinden alınması gerekiyor, lamba fonksiyonu için dockerfile in gelişitirilmnesi atılması gerekiyor )
 
10
 
11
- #enpointin tanımlanması ve model entegresi
 
 
 
 
 
 
 
 
12
 
13
  #alınan verilerin karşılaştırılmasının yapılması (title,keywords,text)
 
 
 
 
 
 
 
 
 
 
14
 
15
  #benzerlik oranı belirlee (örneğin 0.5 in üzerinde yakaldığı benzerlikteki textler ve keywordler için yakalama)
16
 
17
 
18
- def get_huggingface_prediction(input_data): #input_data'yı main.py ile entegre etmeliyim
19
  headers = {
20
  "Authorization": f"Bearer {HUGGINGFACE_API_KEY}"
21
  }
@@ -24,7 +54,7 @@ def get_huggingface_prediction(input_data): #input_data'yı main.py ile entegre
24
  }
25
 
26
  response = requests.post(HUGGINGFACE_API_URL, headers=headers, json=payload)
27
- return response.json()
28
 
29
 
30
 
 
1
  #endpointe ait model
2
  import requests
3
  from config import HUGGINGFACE_API_URL, HUGGINGFACE_API_KEY
4
+ from sentence_transformers import SentenceTransformer, util
5
+ from app.database import get_reference_data,connect_to_mongodb,insert_data_into_input_db
6
 
7
+ #input mongodb üzerindne çekilen veriler(kullanıcıdan alınan bilgilerin lamba üzerinden alınması gerekiyor, lamba fonksiyonu için dockerfile in gelişitirilmnesi atılması gerekiyor )
8
+ #sentenceTransformer modeli
9
+ #endpointin de eklenmesi gerekir.
10
+ model = SentenceTransformer('paraphrase-MiniLM-L6-v2')
11
 
12
  #reference mongodb den çekilen veriler
13
+ def process_user_input(user_input):
14
+ """
15
+ Kullanıcıdan gelen input verileriyle referans verilerini karşılaştırır ve en benzer metinleri döndürür.
16
+ """
17
+ # MongoDB'den referans verileri çek
18
+ reference_data = get_reference_data()
19
 
20
+ # Kullanıcıdan gelen veriler için dynamo
21
+ insert_data_into_input_db(user_input)
22
 
23
+ # Model ile benzerlik hesaplama işlemi yap
24
+ similarity_scores = []
25
+ for reference_item in reference_data:
26
+ score = calculate_similarity(user_input["text"], reference_item["text"])
27
+ if score > 0.5: # Benzerlik eşiği
28
+ similarity_scores.append({
29
+ "reference_text": reference_item["text"],
30
+ "score": score
31
+ })
32
 
33
  #alınan verilerin karşılaştırılmasının yapılması (title,keywords,text)
34
+ """burada öncelikle refenence database ile input database in çekilmesi gerekiyor """
35
+
36
+ def calculate_similarity(text1, text2):
37
+ """
38
+ İki metin arasındaki benzerlik oranını hesaplar.
39
+ """
40
+ embedding1 = model.encode(text1, convert_to_tensor=True)
41
+ embedding2 = model.encode(text2, convert_to_tensor=True)
42
+ similarity_score = util.pytorch_cos_sim(embedding1, embedding2)
43
+ return similarity_score.item()
44
 
45
  #benzerlik oranı belirlee (örneğin 0.5 in üzerinde yakaldığı benzerlikteki textler ve keywordler için yakalama)
46
 
47
 
48
+ """def get_huggingface_prediction(input_data): #input_data'yı main.py ile entegre etmeliyim
49
  headers = {
50
  "Authorization": f"Bearer {HUGGINGFACE_API_KEY}"
51
  }
 
54
  }
55
 
56
  response = requests.post(HUGGINGFACE_API_URL, headers=headers, json=payload)
57
+ return response.json()"""
58
 
59
 
60