jaczad commited on
Commit
f441d5d
1 Parent(s): 8e0cbbd

Zaktuallinowane dane

Browse files
Files changed (2) hide show
  1. search.py +0 -59
  2. vector_map.pkl +2 -2
search.py DELETED
@@ -1,59 +0,0 @@
1
- import pickle
2
- import numpy as np
3
- from sentence_transformers import SentenceTransformer
4
- from scipy.spatial.distance import cosine
5
- import gradio as gr
6
- from openai import OpenAI
7
- client=OpenAI()
8
- model = SentenceTransformer("quanthome/paraphrase-multilingual-MiniLM-L12-v2")
9
- # Funkcja do znajdowania najbardziej podobnych tekstów
10
- def find_similar(text, vector_map, model, top_n=5):
11
- query_embedding = model.encode([text])[0]
12
- similarities = []
13
-
14
- for key, embedding in vector_map.items():
15
- similarity = 1 - cosine(query_embedding, embedding) # 1 - cosine distance gives similarity
16
- similarities.append((key, similarity))
17
-
18
- # Sortowanie po podobieństwie malejąco
19
- similarities = sorted(similarities, key=lambda x: x[1], reverse=True)
20
-
21
- return similarities[:top_n]
22
-
23
-
24
- # Odczytanie słownika z pliku
25
- with open('vector_map.pkl', 'rb') as f:
26
- vector_map = pickle.load(f)
27
-
28
- # Przykładowe wyszukiwanie
29
- def szukaj(query_text):
30
- top_n_results = find_similar(query_text, vector_map, model, top_n=5)
31
- context=''
32
- for text, similarity in top_n_results:
33
- context=context+text
34
- jaczat=client.chat.completions.create(
35
- model='gpt-4o',
36
- temperature=0.2,
37
- max_tokens=512,
38
- messages=[
39
- {'role': 'system',
40
- 'content': 'Nazywasz się Jacek i jesteś ekspertem cyfrowej dostępności. Odpowiadasz konkretnie i krótko na pytania na podstawie kontekstu podanego przez użytkownika.'},
41
- {'role': 'user',
42
- 'content': query_text+context}
43
- ]
44
- )
45
- return jaczat.choices[0].message.content
46
- demo=gr.Interface(
47
- fn=szukaj,
48
- inputs=gr.Text(label='Pytanie'),
49
- outputs=gr.Markdown(),
50
- theme=gr.themes.Glass(font='OpenSans'),
51
- title='JaCzat',
52
- description='Tu możesz zapytać o wszystko dotyczące cyfrowej dostępności, w tym przede wszystkim WCAG. Jeżeli odpowiedź jest Twoim zdaniem błędna lub niesatysfakcjonująca, kliknij na flagę "Źle". A jeżeli odpowiedź jest prawidłowa - kliknij "Dobrze". To pomoże mi rozwijać pomocnika na przyszłość. Nie zbieram żadnych danych osobowych i proszę Cię, żeby ich tu nie wpisywać. Potem będę miał problem z ich usuwaniem.',
53
- submit_btn='Zapytaj',
54
- clear_btn='Wyczyść',
55
- allow_flagging='manual',
56
- show_progress='minimal',
57
- flagging_dir='jaczat.csv',
58
- flagging_options=['Dobrze', 'Źle']
59
- ).launch(inbrowser=True, show_api=False)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vector_map.pkl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c57a9c7e165ba8ac5d56b32239a5d035a6f94c0ce9f552c9ba5f9aba297566de
3
- size 277841
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:291c2affe2916453e8b0ddb08f965c1174b1501636ab13ed69a662472600acec
3
+ size 298437