Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -12,12 +12,17 @@ text_data = response.text
|
|
| 12 |
sentences = text_data.split('\n')
|
| 13 |
|
| 14 |
# Initialize the TF-IDF Vectorizer
|
| 15 |
-
vectorizer = TfidfVectorizer().
|
| 16 |
-
vectors = vectorizer.
|
| 17 |
|
| 18 |
def get_response(user_query):
|
| 19 |
-
|
|
|
|
|
|
|
|
|
|
| 20 |
similarities = cosine_similarity(user_vector, vectors)
|
|
|
|
|
|
|
| 21 |
closest_index = similarities.argmax()
|
| 22 |
return sentences[closest_index]
|
| 23 |
|
|
@@ -45,4 +50,4 @@ if user_input:
|
|
| 45 |
# Display the chat history
|
| 46 |
for message in st.session_state.messages:
|
| 47 |
with st.chat_message(message["role"]):
|
| 48 |
-
st.write(message["content"])
|
|
|
|
| 12 |
sentences = text_data.split('\n')
|
| 13 |
|
| 14 |
# Initialize the TF-IDF Vectorizer
|
| 15 |
+
vectorizer = TfidfVectorizer().fit(sentences)
|
| 16 |
+
vectors = vectorizer.transform(sentences) # Don't convert to array, keep it sparse
|
| 17 |
|
| 18 |
def get_response(user_query):
|
| 19 |
+
# Transform user query and keep the result sparse
|
| 20 |
+
user_vector = vectorizer.transform([user_query])
|
| 21 |
+
|
| 22 |
+
# Compute cosine similarity directly with sparse matrices
|
| 23 |
similarities = cosine_similarity(user_vector, vectors)
|
| 24 |
+
|
| 25 |
+
# Find the index of the most similar sentence
|
| 26 |
closest_index = similarities.argmax()
|
| 27 |
return sentences[closest_index]
|
| 28 |
|
|
|
|
| 50 |
# Display the chat history
|
| 51 |
for message in st.session_state.messages:
|
| 52 |
with st.chat_message(message["role"]):
|
| 53 |
+
st.write(message["content"])
|