"""Chunk agenda-packet PDFs, store them in ChromaDB, and summarize with an LLM. Typical use:: from chroma import AgendaStore, ingest_and_summarize_pdfs store = AgendaStore(".chroma") results = ingest_and_summarize_pdfs(["packet.pdf"], store=store) for r in results: print(r["metadata"]["file_name"], "->", r["summary"]) # later, query across everything stored hits = store.query("zoning variance", n_results=5) """ from __future__ import annotations from .answer import answer_question from .chunking import chunk_text from .llm import chat_complete, get_client, load_llm_config from .loader import ( documents_from_pdfs, load_pdf_text, ) from .pipeline import ( ingest_and_summarize_pdfs, ingest_documents, summarize_documents, ) from .report import generate_report from .store import AgendaStore from .summarize import summarize_document, summarize_text __all__ = [ "AgendaStore", "answer_question", "chat_complete", "chunk_text", "documents_from_pdfs", "generate_report", "get_client", "ingest_and_summarize_pdfs", "ingest_documents", "load_llm_config", "load_pdf_text", "summarize_document", "summarize_documents", "summarize_text", ]