Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
|
@@ -10,6 +10,7 @@ from langchain.chains import RetrievalQA
|
|
| 10 |
import os
|
| 11 |
import urllib.request
|
| 12 |
import ssl
|
|
|
|
| 13 |
import tempfile
|
| 14 |
import mimetypes
|
| 15 |
from dotenv import load_dotenv
|
|
@@ -127,7 +128,7 @@ def embed_pdf(file, filename, collection_name, file_type):
|
|
| 127 |
context = ssl._create_unverified_context()
|
| 128 |
with urllib.request.urlopen(file, context=context) as response, open(filename, 'wb') as out_file:
|
| 129 |
data = response.read()
|
| 130 |
-
out_file.write(
|
| 131 |
file_path = filename
|
| 132 |
except Exception as e:
|
| 133 |
return {"error": f"Error downloading file from URL: {e}"}
|
|
@@ -139,7 +140,7 @@ def embed_pdf(file, filename, collection_name, file_type):
|
|
| 139 |
file_content = file
|
| 140 |
file_path = os.path.join('./', filename)
|
| 141 |
with open(file_path, 'wb') as f:
|
| 142 |
-
f.write(
|
| 143 |
else:
|
| 144 |
return {"error": "Invalid file type"}
|
| 145 |
|
|
@@ -150,18 +151,14 @@ def embed_pdf(file, filename, collection_name, file_type):
|
|
| 150 |
docs = loader.load()
|
| 151 |
|
| 152 |
# Generate embeddings and store documents in Weaviate
|
| 153 |
-
embeddings = CohereEmbeddings(model="embed-multilingual-v2.0", cohere_api_key=cohere_api_key)
|
| 154 |
for doc in docs:
|
| 155 |
-
embedding =
|
| 156 |
weaviate_document = {
|
| 157 |
"text": doc['text'],
|
| 158 |
"embedding": embedding
|
| 159 |
}
|
| 160 |
client.data_object.create(data_object=weaviate_document, class_name=collection_name)
|
| 161 |
|
| 162 |
-
# Clean up if a temporary file was created
|
| 163 |
-
if isinstance(file, bytes):
|
| 164 |
-
os.remove(file_path)
|
| 165 |
return {"message": f"Documents embedded in Weaviate collection '{collection_name}'"}
|
| 166 |
|
| 167 |
def retrieve_info(query):
|
|
|
|
| 10 |
import os
|
| 11 |
import urllib.request
|
| 12 |
import ssl
|
| 13 |
+
import bitsandbytes
|
| 14 |
import tempfile
|
| 15 |
import mimetypes
|
| 16 |
from dotenv import load_dotenv
|
|
|
|
| 128 |
context = ssl._create_unverified_context()
|
| 129 |
with urllib.request.urlopen(file, context=context) as response, open(filename, 'wb') as out_file:
|
| 130 |
data = response.read()
|
| 131 |
+
out_file.write(data)
|
| 132 |
file_path = filename
|
| 133 |
except Exception as e:
|
| 134 |
return {"error": f"Error downloading file from URL: {e}"}
|
|
|
|
| 140 |
file_content = file
|
| 141 |
file_path = os.path.join('./', filename)
|
| 142 |
with open(file_path, 'wb') as f:
|
| 143 |
+
f.write(file)
|
| 144 |
else:
|
| 145 |
return {"error": "Invalid file type"}
|
| 146 |
|
|
|
|
| 151 |
docs = loader.load()
|
| 152 |
|
| 153 |
# Generate embeddings and store documents in Weaviate
|
|
|
|
| 154 |
for doc in docs:
|
| 155 |
+
embedding = vectorstore.embedding.embed([doc['text']])
|
| 156 |
weaviate_document = {
|
| 157 |
"text": doc['text'],
|
| 158 |
"embedding": embedding
|
| 159 |
}
|
| 160 |
client.data_object.create(data_object=weaviate_document, class_name=collection_name)
|
| 161 |
|
|
|
|
|
|
|
|
|
|
| 162 |
return {"message": f"Documents embedded in Weaviate collection '{collection_name}'"}
|
| 163 |
|
| 164 |
def retrieve_info(query):
|