gitextract_q5v704fa/ ├── .flake8 ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── EXTERNAL_ISSUE_TEMPLATE.yml │ │ ├── EXTERNAL_USER_FEATURE_REQUEST.yml │ │ ├── INTERNAL_EPIC_TEMPLATE.yml │ │ ├── INTERNAL_USER_STORY_TEMPLATE.yml │ │ └── config.yml │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── backend-core-tests.yml │ ├── conventional-pr-title.yml │ ├── release-please-core.yml │ └── stale.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .python-version ├── .readthedocs.yaml ├── .release-please-manifest.json ├── .vscode/ │ ├── extensions.json │ ├── launch.json │ └── settings.json ├── CHANGELOG.md ├── LICENSE ├── README.md ├── core/ │ ├── .flake8 │ ├── .gitignore │ ├── .python-version │ ├── CHANGELOG.md │ ├── Dockerfile.test │ ├── README.md │ ├── example_workflows/ │ │ └── talk_to_file_rag_config_workflow.yaml │ ├── pyproject.toml │ ├── quivr_core/ │ │ ├── __init__.py │ │ ├── base_config.py │ │ ├── brain/ │ │ │ ├── __init__.py │ │ │ ├── brain.py │ │ │ ├── brain_defaults.py │ │ │ ├── info.py │ │ │ └── serialization.py │ │ ├── config.py │ │ ├── files/ │ │ │ ├── __init__.py │ │ │ └── file.py │ │ ├── language/ │ │ │ ├── models.py │ │ │ └── utils.py │ │ ├── llm/ │ │ │ ├── __init__.py │ │ │ └── llm_endpoint.py │ │ ├── llm_tools/ │ │ │ ├── __init__.py │ │ │ ├── entity.py │ │ │ ├── llm_tools.py │ │ │ ├── other_tools.py │ │ │ └── web_search_tools.py │ │ ├── processor/ │ │ │ ├── __init__.py │ │ │ ├── implementations/ │ │ │ │ ├── __init__.py │ │ │ │ ├── default.py │ │ │ │ ├── megaparse_processor.py │ │ │ │ ├── simple_txt_processor.py │ │ │ │ └── tika_processor.py │ │ │ ├── processor_base.py │ │ │ ├── registry.py │ │ │ └── splitter.py │ │ ├── rag/ │ │ │ ├── __init__.py │ │ │ ├── entities/ │ │ │ │ ├── __init__.py │ │ │ │ ├── chat.py │ │ │ │ ├── config.py │ │ │ │ └── models.py │ │ │ ├── prompts.py │ │ │ ├── quivr_rag.py │ │ │ ├── quivr_rag_langgraph.py │ │ │ └── utils.py │ │ └── storage/ │ │ ├── __init__.py │ │ ├── file.py │ │ ├── local_storage.py │ │ └── storage_base.py │ ├── scripts/ │ │ ├── run_tests.sh │ │ └── run_tests_buildx.sh │ ├── tests/ │ │ ├── __init__.py │ │ ├── chunk_stream_fixture.jsonl │ │ ├── conftest.py │ │ ├── fixture_chunks.py │ │ ├── processor/ │ │ │ ├── __init__.py │ │ │ ├── community/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_markdown_processor.py │ │ │ ├── data/ │ │ │ │ └── guidelines_code.md │ │ │ ├── docx/ │ │ │ │ ├── __init__.py │ │ │ │ ├── demo.docx │ │ │ │ └── test_docx.py │ │ │ ├── epub/ │ │ │ │ ├── __init__.py │ │ │ │ ├── page-blanche.epub │ │ │ │ ├── sway.epub │ │ │ │ └── test_epub_processor.py │ │ │ ├── odt/ │ │ │ │ ├── __init__.py │ │ │ │ ├── bad_odt.odt │ │ │ │ ├── sample.odt │ │ │ │ └── test_odt.py │ │ │ ├── pdf/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_unstructured_pdf_processor.py │ │ │ ├── test_default_implementations.py │ │ │ ├── test_registry.py │ │ │ ├── test_simple_txt_processor.py │ │ │ ├── test_tika_processor.py │ │ │ └── test_txt_processor.py │ │ ├── rag_config.yaml │ │ ├── rag_config_workflow.yaml │ │ ├── test_brain.py │ │ ├── test_chat_history.py │ │ ├── test_config.py │ │ ├── test_llm_endpoint.py │ │ ├── test_quivr_file.py │ │ ├── test_quivr_rag.py │ │ └── test_utils.py │ └── tox.ini ├── docs/ │ ├── .gitignore │ ├── .python-version │ ├── README.md │ ├── docs/ │ │ ├── brain/ │ │ │ ├── brain.md │ │ │ ├── chat.md │ │ │ └── index.md │ │ ├── config/ │ │ │ ├── base_config.md │ │ │ ├── config.md │ │ │ └── index.md │ │ ├── css/ │ │ │ └── style.css │ │ ├── examples/ │ │ │ ├── chatbot.md │ │ │ ├── chatbot_voice.md │ │ │ ├── chatbot_voice_flask.md │ │ │ ├── custom_storage.md │ │ │ └── index.md │ │ ├── index.md │ │ ├── parsers/ │ │ │ ├── index.md │ │ │ ├── megaparse.md │ │ │ └── simple.md │ │ ├── quickstart.md │ │ ├── storage/ │ │ │ ├── base.md │ │ │ ├── index.md │ │ │ └── local_storage.md │ │ ├── vectorstores/ │ │ │ ├── faiss.md │ │ │ ├── index.md │ │ │ └── pgvector.md │ │ └── workflows/ │ │ ├── examples/ │ │ │ ├── basic_ingestion.md │ │ │ ├── basic_rag.md │ │ │ └── rag_with_web_search.md │ │ └── index.md │ ├── mkdocs.yml │ ├── overrides/ │ │ └── empty │ ├── pyproject.toml │ └── src/ │ └── docs/ │ └── __init__.py ├── examples/ │ ├── chatbot/ │ │ ├── .chainlit/ │ │ │ ├── config.toml │ │ │ └── translations/ │ │ │ ├── bn.json │ │ │ ├── en-US.json │ │ │ ├── gu.json │ │ │ ├── he-IL.json │ │ │ ├── hi.json │ │ │ ├── kn.json │ │ │ ├── ml.json │ │ │ ├── mr.json │ │ │ ├── ta.json │ │ │ ├── te.json │ │ │ └── zh-CN.json │ │ ├── .gitignore │ │ ├── .python-version │ │ ├── README.md │ │ ├── basic_rag_workflow.yaml │ │ ├── chainlit.md │ │ ├── main.py │ │ └── pyproject.toml │ ├── chatbot_voice/ │ │ ├── .chainlit/ │ │ │ ├── config.toml │ │ │ └── translations/ │ │ │ ├── bn.json │ │ │ ├── en-US.json │ │ │ ├── gu.json │ │ │ ├── he-IL.json │ │ │ ├── hi.json │ │ │ ├── kn.json │ │ │ ├── ml.json │ │ │ ├── mr.json │ │ │ ├── ta.json │ │ │ ├── te.json │ │ │ └── zh-CN.json │ │ ├── .gitignore │ │ ├── .python-version │ │ ├── README.md │ │ ├── basic_rag_workflow.yaml │ │ ├── chainlit.md │ │ ├── main.py │ │ └── pyproject.toml │ ├── pdf_document_from_yaml.py │ ├── pdf_parsing_tika.py │ ├── quivr-whisper/ │ │ ├── .env_example │ │ ├── .gitignore │ │ ├── .python-version │ │ ├── README.md │ │ ├── app.py │ │ ├── pyproject.toml │ │ ├── static/ │ │ │ ├── app.js │ │ │ └── styles.css │ │ └── templates/ │ │ └── index.html │ ├── save_load_brain.py │ ├── simple_question/ │ │ ├── .gitignore │ │ ├── .python-version │ │ ├── README.md │ │ ├── pyproject.toml │ │ ├── simple_question.py │ │ └── simple_question_streaming.py │ └── simple_question_megaparse.py ├── release-please-config.json └── vercel.json