gitextract_rgxqts__/ ├── .gitattributes ├── .github/ │ ├── renovate.json5 │ └── workflows/ │ ├── build.yml │ └── tests.yml ├── .gitignore ├── .mailmap ├── .pre-commit-config.yaml ├── .python-version ├── CITATION.cff ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── docs/ │ ├── 2024-10-16_litqa2-splits.json5 │ └── tutorials/ │ ├── querying_with_clinical_trials.md │ ├── running_on_lfrqa.ipynb │ ├── running_on_lfrqa.md │ ├── settings_tutorial.ipynb │ ├── settings_tutorial.md │ └── where_do_I_get_papers.md ├── packages/ │ ├── paper-qa-docling/ │ │ ├── LICENSE │ │ ├── README.md │ │ ├── pyproject.toml │ │ ├── src/ │ │ │ └── paperqa_docling/ │ │ │ ├── __init__.py │ │ │ ├── py.typed │ │ │ └── reader.py │ │ └── tests/ │ │ └── test_paperqa_docling.py │ ├── paper-qa-nemotron/ │ │ ├── LICENSE │ │ ├── README.md │ │ ├── pyproject.toml │ │ ├── src/ │ │ │ └── paperqa_nemotron/ │ │ │ ├── __init__.py │ │ │ ├── api.py │ │ │ ├── py.typed │ │ │ └── reader.py │ │ └── tests/ │ │ ├── cassettes/ │ │ │ ├── TestNvidiaAPI.test_detection_only[0].yaml │ │ │ ├── TestNvidiaAPI.test_detection_only[1].yaml │ │ │ ├── TestNvidiaAPI.test_markdown_bbox[0].yaml │ │ │ ├── TestNvidiaAPI.test_markdown_bbox[1].yaml │ │ │ ├── TestNvidiaAPI.test_markdown_no_bbox[0].yaml │ │ │ └── TestNvidiaAPI.test_markdown_no_bbox[1].yaml │ │ ├── conftest.py │ │ ├── test_api.py │ │ └── test_paperqa_nemotron.py │ ├── paper-qa-pymupdf/ │ │ ├── LICENSE │ │ ├── README.md │ │ ├── pyproject.toml │ │ ├── src/ │ │ │ └── paperqa_pymupdf/ │ │ │ ├── __init__.py │ │ │ ├── py.typed │ │ │ └── reader.py │ │ └── tests/ │ │ └── test_paperqa_pymupdf.py │ └── paper-qa-pypdf/ │ ├── LICENSE │ ├── README.md │ ├── pyproject.toml │ ├── src/ │ │ └── paperqa_pypdf/ │ │ ├── __init__.py │ │ ├── py.typed │ │ ├── reader.py │ │ └── utils.py │ └── tests/ │ ├── test_paperqa_pypdf.py │ └── test_utils.py ├── pyproject.toml ├── src/ │ └── paperqa/ │ ├── __init__.py │ ├── _ldp_shims.py │ ├── agents/ │ │ ├── __init__.py │ │ ├── env.py │ │ ├── helpers.py │ │ ├── main.py │ │ ├── models.py │ │ ├── search.py │ │ └── tools.py │ ├── clients/ │ │ ├── __init__.py │ │ ├── client_data/ │ │ │ └── journal_quality.csv │ │ ├── client_models.py │ │ ├── crossref.py │ │ ├── exceptions.py │ │ ├── journal_quality.py │ │ ├── openalex.py │ │ ├── retractions.py │ │ ├── semantic_scholar.py │ │ └── unpaywall.py │ ├── configs/ │ │ ├── clinical_trials.json │ │ ├── contracrow.json │ │ ├── debug.json │ │ ├── fast.json │ │ ├── high_quality.json │ │ ├── openreview.json │ │ ├── search_only_clinical_trials.json │ │ ├── tier1_limits.json │ │ ├── tier2_limits.json │ │ ├── tier3_limits.json │ │ ├── tier4_limits.json │ │ ├── tier5_limits.json │ │ └── wikicrow.json │ ├── contrib/ │ │ ├── __init__.py │ │ ├── openreview_paper_helper.py │ │ └── zotero.py │ ├── core.py │ ├── docs.py │ ├── llms.py │ ├── paths.py │ ├── prompts.py │ ├── py.typed │ ├── readers.py │ ├── settings.py │ ├── sources/ │ │ ├── __init__.py │ │ └── clinical_trials.py │ ├── types.py │ └── utils.py └── tests/ ├── __init__.py ├── cassettes/ │ ├── test_arxiv_doi_is_used_when_available.yaml │ ├── test_author_matching.yaml │ ├── test_bad_dois.yaml │ ├── test_bad_titles.yaml │ ├── test_bulk_doi_search.yaml │ ├── test_bulk_title_search.yaml │ ├── test_crossref_journalquality_fields_filtering.yaml │ ├── test_crossref_retraction_status.yaml │ ├── test_docs_lifecycle.yaml │ ├── test_does_openalex_work[not-in-openalex].yaml │ ├── test_does_openalex_work[not-oa-in-openalex].yaml │ ├── test_does_openalex_work[oa-in-openalex1].yaml │ ├── test_does_openalex_work[oa-in-openalex2].yaml │ ├── test_doi_search[paper_attributes0].yaml │ ├── test_doi_search[paper_attributes1].yaml │ ├── test_doi_search[paper_attributes2].yaml │ ├── test_doi_search[paper_attributes3].yaml │ ├── test_doi_search[paper_attributes4].yaml │ ├── test_ensure_sequential_run.yaml │ ├── test_ensure_sequential_run_early_stop.yaml │ ├── test_equations[docling].yaml │ ├── test_equations[nemotron].yaml │ ├── test_equations[pymupdf].yaml │ ├── test_get_reasoning[deepseek-reasoner].yaml │ ├── test_get_reasoning[openrouter-deepseek].yaml │ ├── test_image_enrichment_invalid_image.yaml │ ├── test_image_enrichment_normal_use.yaml │ ├── test_maybe_is_text.yaml │ ├── test_minimal_fields_filtering.yaml │ ├── test_nonduplicate_contexts.yaml │ ├── test_odd_client_requests.yaml │ ├── test_partitioning_fn_docs[False].yaml │ ├── test_partitioning_fn_docs[True].yaml │ ├── test_partly_embedded_texts[False].yaml │ ├── test_partly_embedded_texts[True].yaml │ ├── test_pdf_reader_match_doc_details.yaml │ ├── test_s2_only_fields_filtering.yaml │ ├── test_s2_title_search_empty_data.yaml │ ├── test_title_search[paper_attributes0].yaml │ ├── test_title_search[paper_attributes1].yaml │ ├── test_title_search[paper_attributes2].yaml │ ├── test_tricky_journal_quality_results[10.1016-j.bbcan.2023.188947-1].yaml │ ├── test_tricky_journal_quality_results[10.1016-j.semcdb.2016.08.024-1].yaml │ ├── test_tricky_journal_quality_results[10.1038-s41598-018-27044-6-1].yaml │ ├── test_tricky_journal_quality_results[10.1073-pnas.1205508109-3].yaml │ ├── test_tricky_journal_quality_results[10.1146-annurev.pathol.4.110807.092311-2].yaml │ └── test_tricky_journal_quality_results[10.1186-1471-2148-11-4-2].yaml ├── conftest.py ├── duplicate_media_template.md ├── stub_data/ │ ├── .DS_Store │ ├── bates.txt │ ├── dummy.docx │ ├── dummy.pptx │ ├── dummy.xlsx │ ├── dummy_jap.docx │ ├── empty.txt │ ├── flag_day.html │ ├── gravity_hill.md │ ├── obama.txt │ ├── py.typed │ ├── stub_manifest.csv │ ├── stub_manifest_nocitation.csv │ └── stub_retractions.csv ├── test_agents.py ├── test_cli.py ├── test_clients.py ├── test_clinical_trials.py ├── test_configs.py ├── test_paperqa.py └── test_utils.py