Example

Install pypdf if needed using this guide

knowledge_base.py
from phi.knowledge.pdf import PDFUrlKnowledgeBase
from phi.vectordb.pgvector import PgVector

from resources import vector_db

knowledge_base = PDFUrlKnowledgeBase(
    urls=["pdf_url"],
    # Table name: llm.pdf_documents
    vector_db=PgVector(
        table_name="pdf_documents",
        db_url=vector_db.get_db_connection_local(),
    ),
)

PDFUrlKnowledgeBase Params

ParameterTypeDefaultDescription
urlsList[str]-URLs for PDF files.
readerPDFUrlReader-A PDFUrlReader that converts the PDFs into Documents for the vector database.

AgentKnowledge Params

PDFUrlKnowledgeBase is a subclass of the AgentKnowledge class and has access to the same params

ParameterTypeDefaultDescription
readerOptional[Reader]NoneReader to read the documents
vector_dbOptional[VectorDb]NoneVector db to store the knowledge base
num_documentsint2Number of relevant documents to return on search
optimize_onOptional[int]1000Number of documents to optimize the vector db on
driverstr"knowledge"Driver for the Assistant knowledge