AmmarFahmy
adding all files
105b369
from typing import List, Iterator
from phi.document import Document
from phi.document.reader.s3.pdf import S3PDFReader
from phi.knowledge.s3.base import S3KnowledgeBase
class S3PDFKnowledgeBase(S3KnowledgeBase):
reader: S3PDFReader = S3PDFReader()
@property
def document_lists(self) -> Iterator[List[Document]]:
"""Iterate over PDFs in a s3 bucket and yield lists of documents.
Each object yielded by the iterator is a list of documents.
Returns:
Iterator[List[Document]]: Iterator yielding list of documents
"""
for s3_object in self.s3_objects:
if s3_object.name.endswith(".pdf"):
yield self.reader.read(s3_object=s3_object)