Spaces:
Sleeping
Sleeping
Update utils/DocsLoader.py
Browse files- utils/DocsLoader.py +4 -4
utils/DocsLoader.py
CHANGED
|
@@ -6,10 +6,10 @@ from fastapi import HTTPException
|
|
| 6 |
# from langchain_community.document_loaders import PyPDFLoader, Docx2txtLoader
|
| 7 |
from langchain_community.document_loaders import PyMuPDFLoader, Docx2txtLoader
|
| 8 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
| 9 |
-
from langchain_text_splitters.sentence_transformers import SentenceTransformersTokenTextSplitter
|
| 10 |
from langchain.schema import Document
|
| 11 |
|
| 12 |
-
MODEL_DIR = os.path.join("/tmp", "e5-large-v2")
|
| 13 |
|
| 14 |
def load_and_chunk(url: str) -> list[Document]:
|
| 15 |
print(url)
|
|
@@ -50,6 +50,6 @@ def load_and_chunk(url: str) -> list[Document]:
|
|
| 50 |
else:
|
| 51 |
raise HTTPException(400, f"Unsupported document type: {content_type}")
|
| 52 |
|
| 53 |
-
|
| 54 |
-
splitter = SentenceTransformersTokenTextSplitter(model_name = MODEL_DIR,tokens_per_chunk=500, chunk_overlap=80)
|
| 55 |
return splitter.split_documents(docs)
|
|
|
|
| 6 |
# from langchain_community.document_loaders import PyPDFLoader, Docx2txtLoader
|
| 7 |
from langchain_community.document_loaders import PyMuPDFLoader, Docx2txtLoader
|
| 8 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
| 9 |
+
# from langchain_text_splitters.sentence_transformers import SentenceTransformersTokenTextSplitter # give better results but slow can use later for project
|
| 10 |
from langchain.schema import Document
|
| 11 |
|
| 12 |
+
# MODEL_DIR = os.path.join("/tmp", "e5-large-v2")
|
| 13 |
|
| 14 |
def load_and_chunk(url: str) -> list[Document]:
|
| 15 |
print(url)
|
|
|
|
| 50 |
else:
|
| 51 |
raise HTTPException(400, f"Unsupported document type: {content_type}")
|
| 52 |
|
| 53 |
+
splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=120,separators=["\n\n", "\n", ".", " ", ""])
|
| 54 |
+
# splitter = SentenceTransformersTokenTextSplitter(model_name = MODEL_DIR,tokens_per_chunk=500, chunk_overlap=80)
|
| 55 |
return splitter.split_documents(docs)
|