aiagents4pharma 1.42.0__tar.gz → 1.43.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/PKG-INFO +3 -1
  2. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/README.md +2 -0
  3. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/paper_download_agent.py +7 -4
  4. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/main_agent/default.yaml +52 -0
  5. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/paper_download_agent/default.yaml +19 -0
  6. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/pdf_agent/default.yaml +19 -0
  7. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/s2_agent/default.yaml +44 -0
  8. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/zotero_agent/default.yaml +19 -0
  9. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/config.yaml +1 -3
  10. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/paper_download/default.yaml +124 -0
  11. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_arxiv_downloader.py +478 -0
  12. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_base_paper_downloader.py +620 -0
  13. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_biorxiv_downloader.py +697 -0
  14. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_medrxiv_downloader.py +534 -0
  15. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_paper_download_agent.py +22 -12
  16. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_paper_downloader.py +545 -0
  17. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tests/test_pubmed_downloader.py +1067 -0
  18. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/paper_download/__init__.py +2 -4
  19. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/paper_downloader.py +457 -0
  20. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/__init__.py +20 -0
  21. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/arxiv_downloader.py +209 -0
  22. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/base_paper_downloader.py +343 -0
  23. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/biorxiv_downloader.py +321 -0
  24. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/medrxiv_downloader.py +198 -0
  25. aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/tools/paper_download/utils/pubmed_downloader.py +337 -0
  26. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/query_dataframe.py +97 -45
  27. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/retrieve_semantic_scholar_paper_id.py +47 -29
  28. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma.egg-info/PKG-INFO +3 -1
  29. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma.egg-info/SOURCES.txt +15 -12
  30. aiagents4pharma-1.43.0/release_version.txt +1 -0
  31. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/main_agent/default.yaml +0 -98
  32. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/paper_download_agent/default.yaml +0 -5
  33. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/pdf_agent/default.yaml +0 -5
  34. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/s2_agent/default.yaml +0 -9
  35. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/zotero_agent/default.yaml +0 -9
  36. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_arxiv_paper/default.yaml +0 -4
  37. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_biorxiv_paper/default.yaml +0 -2
  38. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_medrxiv_paper/default.yaml +0 -2
  39. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/single_paper_recommendation/__init__.py +0 -3
  40. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/zotero_read/__init__.py +0 -3
  41. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tests/test_paper_download_biorxiv.py +0 -151
  42. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tests/test_paper_download_medrxiv.py +0 -151
  43. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tests/test_paper_download_tools.py +0 -249
  44. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tools/paper_download/download_arxiv_input.py +0 -177
  45. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tools/paper_download/download_biorxiv_input.py +0 -114
  46. aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/tools/paper_download/download_medrxiv_input.py +0 -114
  47. aiagents4pharma-1.42.0/release_version.txt +0 -1
  48. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/LICENSE +0 -0
  49. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/__init__.py +0 -0
  50. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/__init__.py +0 -0
  51. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/agents/__init__.py +0 -0
  52. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/agents/main_agent.py +0 -0
  53. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/configs/__init__.py +0 -0
  54. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/configs/agents/__init__.py +0 -0
  55. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/configs/agents/main_agent/default.yaml +0 -0
  56. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/configs/config.yaml +0 -0
  57. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/states/__init__.py +0 -0
  58. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/states/state_talk2aiagents4pharma.py +0 -0
  59. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/tests/__init__.py +0 -0
  60. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2aiagents4pharma/tests/test_main_agent.py +0 -0
  61. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/__init__.py +0 -0
  62. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/agents/__init__.py +0 -0
  63. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/agents/t2b_agent.py +0 -0
  64. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/api/__init__.py +0 -0
  65. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/api/kegg.py +0 -0
  66. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/api/ols.py +0 -0
  67. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/api/uniprot.py +0 -0
  68. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/__init__.py +0 -0
  69. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/agents/__init__.py +0 -0
  70. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/__init__.py +0 -0
  71. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/default.yaml +0 -0
  72. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/config.yaml +0 -0
  73. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/__init__.py +0 -0
  74. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/ask_question/__init__.py +0 -0
  75. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/ask_question/default.yaml +0 -0
  76. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/custom_plotter/__init__.py +0 -0
  77. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/custom_plotter/default.yaml +0 -0
  78. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/get_annotation/__init__.py +0 -0
  79. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/configs/tools/get_annotation/default.yaml +0 -0
  80. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/models/__init__.py +0 -0
  81. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/models/basico_model.py +0 -0
  82. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/models/sys_bio_model.py +0 -0
  83. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/states/__init__.py +0 -0
  84. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/states/state_talk2biomodels.py +0 -0
  85. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/__init__.py +0 -0
  86. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_api.py +0 -0
  87. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_ask_question.py +0 -0
  88. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_basico_model.py +0 -0
  89. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_get_annotation.py +0 -0
  90. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_getmodelinfo.py +0 -0
  91. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_integration.py +0 -0
  92. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_load_biomodel.py +0 -0
  93. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_param_scan.py +0 -0
  94. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_query_article.py +0 -0
  95. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_search_models.py +0 -0
  96. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_simulate_model.py +0 -0
  97. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_steady_state.py +0 -0
  98. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py +0 -0
  99. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/__init__.py +0 -0
  100. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/ask_question.py +0 -0
  101. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/custom_plotter.py +0 -0
  102. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/get_annotation.py +0 -0
  103. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/get_modelinfo.py +0 -0
  104. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/load_arguments.py +0 -0
  105. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/load_biomodel.py +0 -0
  106. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/parameter_scan.py +0 -0
  107. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/query_article.py +0 -0
  108. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/search_models.py +0 -0
  109. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/simulate_model.py +0 -0
  110. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/steady_state.py +0 -0
  111. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2biomodels/tools/utils.py +0 -0
  112. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/__init__.py +0 -0
  113. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/agents/__init__.py +0 -0
  114. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/agents/scp_agent.py +0 -0
  115. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/states/__init__.py +0 -0
  116. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/states/state_talk2cells.py +0 -0
  117. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/tests/scp_agent/test_scp_agent.py +0 -0
  118. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/tools/__init__.py +0 -0
  119. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/tools/scp_agent/__init__.py +0 -0
  120. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/tools/scp_agent/display_studies.py +0 -0
  121. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2cells/tools/scp_agent/search_studies.py +0 -0
  122. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/__init__.py +0 -0
  123. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/agents/__init__.py +0 -0
  124. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/agents/t2kg_agent.py +0 -0
  125. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/__init__.py +0 -0
  126. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/agents/t2kg_agent/__init__.py +0 -0
  127. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/agents/t2kg_agent/default.yaml +0 -0
  128. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/app/__init__.py +0 -0
  129. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/__init__.py +0 -0
  130. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/default.yaml +0 -0
  131. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/config.yaml +0 -0
  132. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/__init__.py +0 -0
  133. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/graphrag_reasoning/__init__.py +0 -0
  134. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/graphrag_reasoning/default.yaml +0 -0
  135. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/__init__.py +0 -0
  136. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/default.yaml +0 -0
  137. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_extraction/__init__.py +0 -0
  138. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_extraction/default.yaml +0 -0
  139. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_summarization/__init__.py +0 -0
  140. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_summarization/default.yaml +0 -0
  141. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/ols_terms/default.yaml +0 -0
  142. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/reactome_pathways/default.yaml +0 -0
  143. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/uniprot_proteins/default.yaml +0 -0
  144. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/configs/utils/pubchem_utils/default.yaml +0 -0
  145. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/datasets/__init__.py +0 -0
  146. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/datasets/biobridge_primekg.py +0 -0
  147. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/datasets/dataset.py +0 -0
  148. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/datasets/primekg.py +0 -0
  149. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/datasets/starkqa_primekg.py +0 -0
  150. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/milvus_data_dump.py +0 -0
  151. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/states/__init__.py +0 -0
  152. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/states/state_talk2knowledgegraphs.py +0 -0
  153. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/__init__.py +0 -0
  154. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_agents_t2kg_agent.py +0 -0
  155. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_biobridge_primekg.py +0 -0
  156. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_dataset.py +0 -0
  157. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_primekg.py +0 -0
  158. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_starkqa_primekg.py +0 -0
  159. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_tools_graphrag_reasoning.py +0 -0
  160. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_tools_milvus_multimodal_subgraph_extraction.py +0 -0
  161. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_tools_multimodal_subgraph_extraction.py +0 -0
  162. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_tools_subgraph_extraction.py +0 -0
  163. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_tools_subgraph_summarization.py +0 -0
  164. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_embeddings.py +0 -0
  165. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_huggingface.py +0 -0
  166. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_nim_molmim.py +0 -0
  167. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_ollama.py +0 -0
  168. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_sentencetransformer.py +0 -0
  169. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_enrichments.py +0 -0
  170. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_ollama.py +0 -0
  171. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_ols.py +0 -0
  172. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_pubchem.py +0 -0
  173. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_reactome.py +0 -0
  174. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_uniprot.py +0 -0
  175. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_extractions_milvus_multimodal_pcst.py +0 -0
  176. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_kg_utils.py +0 -0
  177. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tests/test_utils_pubchem_utils.py +0 -0
  178. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/__init__.py +0 -0
  179. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/graphrag_reasoning.py +0 -0
  180. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/load_arguments.py +0 -0
  181. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/milvus_multimodal_subgraph_extraction.py +0 -0
  182. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/multimodal_subgraph_extraction.py +0 -0
  183. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/subgraph_extraction.py +0 -0
  184. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/tools/subgraph_summarization.py +0 -0
  185. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/__init__.py +0 -0
  186. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/__init__.py +0 -0
  187. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/embeddings.py +0 -0
  188. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/huggingface.py +0 -0
  189. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/nim_molmim.py +0 -0
  190. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/ollama.py +0 -0
  191. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/embeddings/sentence_transformer.py +0 -0
  192. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/__init__.py +0 -0
  193. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/enrichments.py +0 -0
  194. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/ollama.py +0 -0
  195. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/ols_terms.py +0 -0
  196. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/pubchem_strings.py +0 -0
  197. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/reactome_pathways.py +0 -0
  198. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/enrichments/uniprot_proteins.py +0 -0
  199. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/extractions/__init__.py +0 -0
  200. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/extractions/milvus_multimodal_pcst.py +0 -0
  201. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/extractions/multimodal_pcst.py +0 -0
  202. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/extractions/pcst.py +0 -0
  203. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/kg_utils.py +0 -0
  204. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2knowledgegraphs/utils/pubchem_utils.py +0 -0
  205. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/__init__.py +0 -0
  206. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/__init__.py +0 -0
  207. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/main_agent.py +0 -0
  208. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/pdf_agent.py +0 -0
  209. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/s2_agent.py +0 -0
  210. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/agents/zotero_agent.py +0 -0
  211. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/__init__.py +0 -0
  212. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/__init__.py +0 -0
  213. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/__init__.py +0 -0
  214. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/main_agent/__init__.py +0 -0
  215. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/paper_download_agent/__init__.py +0 -0
  216. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/pdf_agent/__init__.py +0 -0
  217. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/s2_agent/__init__.py +0 -0
  218. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/agents/talk2scholars/zotero_agent/__init__.py +0 -0
  219. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/app/__init__.py +0 -0
  220. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/app/frontend/__init__.py +0 -0
  221. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/app/frontend/default.yaml +0 -0
  222. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/__init__.py +0 -0
  223. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_arxiv_paper → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/multi_paper_recommendation}/__init__.py +0 -0
  224. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/multi_paper_recommendation/default.yaml +0 -0
  225. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_biorxiv_paper → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/paper_download}/__init__.py +0 -0
  226. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/download_medrxiv_paper → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/question_and_answer}/__init__.py +0 -0
  227. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/question_and_answer/default.yaml +0 -0
  228. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/multi_paper_recommendation → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/retrieve_semantic_scholar_paper_id}/__init__.py +0 -0
  229. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/retrieve_semantic_scholar_paper_id/default.yaml +0 -0
  230. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/question_and_answer → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/search}/__init__.py +0 -0
  231. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/search/default.yaml +0 -0
  232. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/retrieve_semantic_scholar_paper_id → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/single_paper_recommendation}/__init__.py +0 -0
  233. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/single_paper_recommendation/default.yaml +0 -0
  234. {aiagents4pharma-1.42.0/aiagents4pharma/talk2scholars/configs/tools/search → aiagents4pharma-1.43.0/aiagents4pharma/talk2scholars/configs/tools/zotero_read}/__init__.py +0 -0
  235. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/zotero_read/default.yaml +0 -0
  236. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/zotero_write/__inti__.py +0 -0
  237. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/configs/tools/zotero_write/default.yaml +0 -0
  238. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/state/__init__.py +0 -0
  239. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/state/state_talk2scholars.py +0 -0
  240. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/__init__.py +0 -0
  241. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_main_agent.py +0 -0
  242. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_nvidia_nim_reranker.py +0 -0
  243. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_agent.py +0 -0
  244. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_answer_formatter.py +0 -0
  245. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_batch_processor.py +0 -0
  246. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_collection_manager.py +0 -0
  247. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_document_processor.py +0 -0
  248. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_generate_answer.py +0 -0
  249. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_gpu_detection.py +0 -0
  250. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_paper_loader.py +0 -0
  251. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_rag_pipeline.py +0 -0
  252. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_retrieve_chunks.py +0 -0
  253. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_singleton_manager.py +0 -0
  254. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_vector_normalization.py +0 -0
  255. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_pdf_vector_store.py +0 -0
  256. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_question_and_answer_tool.py +0 -0
  257. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_read_helper_utils.py +0 -0
  258. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_agent.py +0 -0
  259. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_display_dataframe.py +0 -0
  260. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_multi.py +0 -0
  261. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_query_dataframe.py +0 -0
  262. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_retrieve.py +0 -0
  263. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_search.py +0 -0
  264. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_single.py +0 -0
  265. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_s2_utils_ext_ids.py +0 -0
  266. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_state.py +0 -0
  267. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_tool_helper_utils.py +0 -0
  268. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_agent.py +0 -0
  269. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_human_in_the_loop.py +0 -0
  270. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_path.py +0 -0
  271. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_pdf_downloader_utils.py +0 -0
  272. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_read.py +0 -0
  273. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tests/test_zotero_write.py +0 -0
  274. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/__init__.py +0 -0
  275. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/__init__.py +0 -0
  276. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/question_and_answer.py +0 -0
  277. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/__init__.py +0 -0
  278. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/answer_formatter.py +0 -0
  279. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/batch_processor.py +0 -0
  280. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/collection_manager.py +0 -0
  281. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/document_processor.py +0 -0
  282. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/generate_answer.py +0 -0
  283. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/get_vectorstore.py +0 -0
  284. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/gpu_detection.py +0 -0
  285. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/nvidia_nim_reranker.py +0 -0
  286. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/paper_loader.py +0 -0
  287. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/rag_pipeline.py +0 -0
  288. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/retrieve_chunks.py +0 -0
  289. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/singleton_manager.py +0 -0
  290. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/tool_helper.py +0 -0
  291. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/vector_normalization.py +0 -0
  292. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/pdf/utils/vector_store.py +0 -0
  293. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/__init__.py +0 -0
  294. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/display_dataframe.py +0 -0
  295. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/multi_paper_rec.py +0 -0
  296. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/search.py +0 -0
  297. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/single_paper_rec.py +0 -0
  298. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/utils/__init__.py +0 -0
  299. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/utils/multi_helper.py +0 -0
  300. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/utils/search_helper.py +0 -0
  301. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/s2/utils/single_helper.py +0 -0
  302. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/__init__.py +0 -0
  303. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/__init__.py +0 -0
  304. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/read_helper.py +0 -0
  305. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/review_helper.py +0 -0
  306. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/write_helper.py +0 -0
  307. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/zotero_path.py +0 -0
  308. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/utils/zotero_pdf_downloader.py +0 -0
  309. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/zotero_read.py +0 -0
  310. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/zotero_review.py +0 -0
  311. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma/talk2scholars/tools/zotero/zotero_write.py +0 -0
  312. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma.egg-info/dependency_links.txt +0 -0
  313. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma.egg-info/requires.txt +0 -0
  314. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/aiagents4pharma.egg-info/top_level.txt +0 -0
  315. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/pyproject.toml +0 -0
  316. {aiagents4pharma-1.42.0 → aiagents4pharma-1.43.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiagents4pharma
3
- Version: 1.42.0
3
+ Version: 1.43.0
4
4
  Summary: AI Agents for drug discovery, drug development, and other pharmaceutical R&D.
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -72,6 +72,7 @@ Dynamic: license-file
72
72
  <!-- Project Info -->
73
73
 
74
74
  ![RELEASE](https://img.shields.io/github/v/release/VirtualPatientEngine/AIAgents4Pharma?label=RELEASE)
75
+ ![Docker Compose Release Version](https://img.shields.io/github/v/release/VirtualPatientEngine/AIAgents4Pharma?label=Docker%20Compose%20Version)
75
76
  ![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2FVirtualPatientEngine%2FAIAgents4Pharma%2Frefs%2Fheads%2Fmain%2Fpyproject.toml)
76
77
 
77
78
  <!-- Deployment Workflows -->
@@ -79,6 +80,7 @@ Dynamic: license-file
79
80
  [![Pages Deployment](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/pages/pages-build-deployment)
80
81
  [![MkDocs Deploy](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/mkdocs-deploy.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/mkdocs-deploy.yml)
81
82
  [![Docker Build & Push](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_build.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_build.yml)
83
+ [![Docker Compose Release](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_compose_release.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_compose_release.yml)
82
84
 
83
85
  <!-- Tests -->
84
86
 
@@ -3,6 +3,7 @@
3
3
  <!-- Project Info -->
4
4
 
5
5
  ![RELEASE](https://img.shields.io/github/v/release/VirtualPatientEngine/AIAgents4Pharma?label=RELEASE)
6
+ ![Docker Compose Release Version](https://img.shields.io/github/v/release/VirtualPatientEngine/AIAgents4Pharma?label=Docker%20Compose%20Version)
6
7
  ![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2FVirtualPatientEngine%2FAIAgents4Pharma%2Frefs%2Fheads%2Fmain%2Fpyproject.toml)
7
8
 
8
9
  <!-- Deployment Workflows -->
@@ -10,6 +11,7 @@
10
11
  [![Pages Deployment](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/pages/pages-build-deployment)
11
12
  [![MkDocs Deploy](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/mkdocs-deploy.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/mkdocs-deploy.yml)
12
13
  [![Docker Build & Push](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_build.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_build.yml)
14
+ [![Docker Compose Release](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_compose_release.yml/badge.svg)](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/docker_compose_release.yml)
13
15
 
14
16
  <!-- Tests -->
15
17
 
@@ -13,9 +13,8 @@ from langgraph.prebuilt.chat_agent_executor import create_react_agent
13
13
  from langgraph.prebuilt.tool_node import ToolNode
14
14
  from langgraph.checkpoint.memory import MemorySaver
15
15
  from ..state.state_talk2scholars import Talk2Scholars
16
- from ..tools.paper_download.download_arxiv_input import download_arxiv_paper
17
- from ..tools.paper_download.download_medrxiv_input import download_medrxiv_paper
18
- from ..tools.paper_download.download_biorxiv_input import download_biorxiv_paper
16
+ from ..tools.paper_download.paper_downloader import download_papers
17
+
19
18
 
20
19
  # Initialize logger
21
20
  logging.basicConfig(level=logging.INFO)
@@ -52,7 +51,11 @@ def get_app(uniq_id, llm_model: BaseChatModel):
52
51
  cfg = cfg.agents.talk2scholars.paper_download_agent
53
52
 
54
53
  # Define tools properly
55
- tools = ToolNode([download_arxiv_paper, download_medrxiv_paper, download_biorxiv_paper])
54
+ tools = ToolNode(
55
+ [
56
+ download_papers,
57
+ ]
58
+ )
56
59
 
57
60
  # Define the model
58
61
  logger.info("Using OpenAI model %s", llm_model)
@@ -0,0 +1,52 @@
1
+ _target_: agents.main_agent.get_app
2
+ temperature: 0
3
+ system_prompt: |
4
+ You are the **Main Supervisor Agent**.
5
+
6
+ You coordinate and delegate tasks to four specialized sub-agents:
7
+
8
+ 1. **s2_agent** – Use this to search for or recommend academic papers.
9
+ 2. **zotero_agent** – Use this to read from or write to the user's Zotero account.
10
+ - This agent can also save papers to the Zotero library, but only with the user's explicit approval.
11
+ 3. **pdf_agent** – Use this to answer questions or perform tasks on downloaded, uploaded, or Zotero-based papers or PDFs.
12
+ - This includes summarization, explanation, and answering content-based questions.
13
+ 4. **paper_download_agent** – Use this to download PDFs.
14
+
15
+ **IMPORTANT – Paper Download Rules:**
16
+ - Before downloading any paper, **always** ask the user whether they want to:
17
+ - Download from the **last displayed table**, or
18
+ - Provide a specific paper ID or a list of paper IDs (e.g., PMID, PMCID, DOI, arXiv ID).
19
+ - If the user provides a paper ID:
20
+ - Call the `paper_download_agent` directly with that ID.
21
+ - If the user does **not** provide a paper ID:
22
+ - Inform them that no ID was provided.
23
+ - Use the `query_dataframe` tool from the `s2_agent` to extract paper IDs from the last displayed table.
24
+ - Pass the extracted IDs to the `paper_download_agent` to download the papers.
25
+ - Notify the user once the download process starts or completes.
26
+
27
+ **IMPORTANT – Q&A Disambiguation (Pause Before Acting):**
28
+ - When the user asks a question like “Tell me more about X”, “What does the first article say?”, or similar:
29
+ 1) **Pause and ask**:
30
+ “Do you want me to answer using the **PDF content** (full text), or using the **last displayed table** (metadata only)?”
31
+ - Accept synonyms: *PDF, full text, paper text* → **PDF content**.
32
+ - Accept synonyms: *last displayed table, table above, results table, search results* → **metadata/table**.
33
+ 2) **If user chooses PDF content**:
34
+ - If the PDF is already available (downloaded or in Zotero), call `pdf_agent` with the user’s question and the target paper(s).
35
+ - If the PDF is **not** available:
36
+ - Ask whether to download it now.
37
+ - If yes: follow the **Paper Download Rules** (extract IDs via `s2_agent.query_dataframe` when needed) and then call `pdf_agent`.
38
+ 3) **If user chooses metadata/table**:
39
+ - Use `s2_agent`’s `query_dataframe` tool to answer from the last displayed table (e.g., authors, venue, year, abstract snippet if present in metadata).
40
+ - Do **not** call `pdf_agent` in this path.
41
+ 4) **If the user’s choice is unclear**:
42
+ - Ask the disambiguation question again **once**. If still unclear, default to **metadata/table** and state that you can switch to PDF-level analysis on request.
43
+ 5) **If no last displayed table exists** and the user chooses metadata/table:
44
+ - Inform the user that no results table is available and offer to run a search with `s2_agent`.
45
+ 6) **Targeting a specific row (e.g., “first article”)**:
46
+ - When using metadata/table, map ordinals to rows (1-based). For example, “first article” → `row_number=1` with `query_dataframe` where applicable.
47
+
48
+ **Scope Reminders:**
49
+ - Use `s2_agent` for search/recommendations and for `query_dataframe` over the last displayed table (metadata-level only).
50
+ - Use `pdf_agent` strictly for PDF-level questions (summaries, methods, results, quotes).
51
+ - Use `paper_download_agent` only for downloading PDFs.
52
+ - Use `zotero_agent` only for reading/writing the user’s Zotero library (saving requires explicit user approval).
@@ -0,0 +1,19 @@
1
+ _target_: agents.paper_download_agent.get_app
2
+ paper_download_agent: |
3
+ You are the Paper Download Agent.
4
+
5
+ You are responsible for downloading PDFs of papers using their IDs. You will be provided with IDs from another agent.
6
+ If no IDs are provided, you may ask the user to supply them. You have four different tools available for downloading.
7
+ If one tool fails, try the remaining tools in sequence. If all four attempts fail, inform the user that the download
8
+ could not be completed.
9
+
10
+ **Cross-Service Download Policy:**
11
+ - Preferred service order (unless the user specifies otherwise): arxiv → biorxiv → medrxiv → pubmed.
12
+ - If a download returns no PDFs or fails for the chosen service:
13
+ 1) Try the next service in order with the same identifiers (converted as needed).
14
+ 2) Continue until one succeeds or all four fail.
15
+ - Infer service from identifier patterns when possible:
16
+ - arXiv ID: matches /^\d{4}\.\d{4,5}(v\d+)?$/ → arxiv
17
+ - DOI (starts with “10.”) → biorxiv/medrxiv (decide by metadata or try both)
18
+ - PMID (digits only, usually 7–9+) → pubmed
19
+ - Report a concise per-service outcome summary (successes/failures).
@@ -0,0 +1,19 @@
1
+ _target_: agents.pdf_agent.get_app
2
+ pdf_agent: |
3
+ You are the **PDF Agent**.
4
+
5
+ **Primary Role:**
6
+ Perform question-and-answer tasks on the **full text** of papers, articles, or PDFs that are already available
7
+ (downloaded locally, uploaded by the user, or stored in the user's Zotero library).
8
+
9
+ **Capabilities:**
10
+ - Answer questions based on the PDF’s content.
11
+ - Summarize entire papers or specific sections (e.g., abstract, methods, results).
12
+ - Explain complex concepts or findings from the paper.
13
+ - Extract specific information (e.g., datasets used, key results, limitations).
14
+ - Compare multiple PDFs if more than one is provided.
15
+
16
+ **Examples:**
17
+ - “Summarize the introduction of this paper.”
18
+ - “What methods did they use in the third article?”
19
+ - “Compare the results of paper A and paper B.”
@@ -0,0 +1,44 @@
1
+ _target_: agents.s2_agent.get_app
2
+ s2_agent: |
3
+ You are the **S2 Agent**.
4
+
5
+ **Primary Role:**
6
+ - Search for academic papers.
7
+ - Provide recommendations **only when explicitly requested** by the user.
8
+ - Display results using the `display_dataframe` tool.
9
+
10
+ **Additional Capability – Metadata Queries:**
11
+ - You can query the last displayed results table using the `query_dataframe` tool to filter, sort, or extract metadata (including paper IDs).
12
+ - Use this tool only for **metadata-level** questions (not full PDF content).
13
+
14
+ **One-Shot ID Extraction Mode (contract):**
15
+ - Trigger: The supervisor’s message starts with `[ONE-SHOT-ID-EXTRACTION]`.
16
+ - Behavior in this mode:
17
+ 1) Call **only** `query_dataframe` (e.g., with `{"extract_ids": true, "row_number": <n>}` if a specific row is requested).
18
+ 2) Reply in the **strict schema** below and then **STOP** (no further tool calls, no recommendations):
19
+ ---
20
+ IDS: <comma-separated-ids>
21
+ SOURCE: last_displayed_table
22
+ END
23
+ ---
24
+ 3) Do **not** call any other S2 tools (e.g., `retrieve_semantic_scholar_paper_id`, `get_single_paper_recommendations`, `get_multi_paper_recommendations`) in this mode.
25
+ 4) If no last displayed table exists, reply:
26
+ `IDS: NONE`
27
+ `SOURCE: none (no results table available)`
28
+ `END`
29
+ and stop.
30
+
31
+ **Tool-Selection Policy (default mode):**
32
+ - **Search**: When the user asks to find papers by title/keywords, call `search_tool`, then `display_dataframe`, then **stop**.
33
+ - **Metadata Q&A**: For questions about the last displayed table (e.g., “details for the first article”, “list all paper IDs”, “which papers mention X”), call `query_dataframe` and **stop**.
34
+ - **Recommendations**:
35
+ - Call `get_multi_paper_recommendations` only if the user explicitly asks for recommendations/similar/related papers across multiple seeds.
36
+ - Call `get_single_paper_recommendations` only if the user explicitly asks for recommendations based on a single seed paper.
37
+ - Do not infer a recommendation request from generic queries or the mere presence of paper IDs.
38
+ - At most **one** recommendation-tool call per user request.
39
+ - **Title→ID lookup**: Only call `retrieve_semantic_scholar_paper_id` when the user provides a paper title string and asks for its identifier.
40
+
41
+ **Turn Completion Rules:**
42
+ - After `search_tool` + `display_dataframe`, **end your turn** unless the user immediately requests another action.
43
+ - After any `query_dataframe` response (IDs or other metadata), **end your turn** unless the user explicitly requests recommendations next.
44
+ - Never initiate downloads or PDF Q&A; those are handled by other agents.
@@ -0,0 +1,19 @@
1
+ _target_: agents.zotero_agent.get_app
2
+ zotero_agent: |
3
+ You are the **Zotero Agent**.
4
+
5
+ **Primary Role:**
6
+ - Read from the user's Zotero library (list items, retrieve metadata, check existing entries).
7
+ - Write to the user's Zotero library (save new papers, update existing records) — only with explicit user approval.
8
+ - Display Zotero query results using "display_dataframe" tool.
9
+
10
+ **Rules & Boundaries:**
11
+ - Never save papers to Zotero without **explicit human approval**. If approval is denied, do not retry unless the user changes their decision.
12
+ - Do not search for papers on the web — that is the `s2_agent`’s role.
13
+ - Do not perform PDF content analysis — that is the `pdf_agent`’s role.
14
+ - Do not download PDFs directly — that is the `paper_download_agent`’s role.
15
+
16
+ **Examples:**
17
+ - “Show me all papers I saved last month.”
18
+ - “Check if I already have this paper in Zotero.”
19
+ - “Save this paper to Zotero” → Ask for explicit approval before saving.
@@ -7,9 +7,7 @@ defaults:
7
7
  - app/frontend: default
8
8
  - agents/talk2scholars/pdf_agent: default
9
9
  - tools/search: default
10
- - tools/download_arxiv_paper: default
11
- - tools/download_biorxiv_paper: default
12
- - tools/download_medrxiv_paper: default
10
+ - tools/paper_download: default
13
11
  - tools/single_paper_recommendation: default
14
12
  - tools/multi_paper_recommendation: default
15
13
  - tools/retrieve_semantic_scholar_paper_id: default
@@ -0,0 +1,124 @@
1
+ # Unified Paper Download Configuration
2
+ # Single configuration file for all paper download services
3
+
4
+ # Common settings shared across all services
5
+ defaults:
6
+ - _self_
7
+
8
+ common:
9
+ # Request Configuration
10
+ request_timeout: 15
11
+ chunk_size: 8192
12
+
13
+ # Web Request Configuration
14
+ user_agent: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
15
+
16
+ # Retry and Rate Limiting (for future use)
17
+ max_retries: 3
18
+ retry_delay: 2 # seconds
19
+ batch_size: 10 # number of papers to process before delay
20
+ batch_delay: 5 # seconds between batches
21
+
22
+ # Debug Configuration
23
+ enable_detailed_logging: true
24
+
25
+ # Service-specific configurations
26
+ services:
27
+ arxiv:
28
+ # Primary API
29
+ api_url: "http://export.arxiv.org/api/query"
30
+
31
+ # PDF Download
32
+ pdf_base_url: "https://arxiv.org/pdf"
33
+
34
+ # XML namespace configuration
35
+ xml_namespace:
36
+ atom: "http://www.w3.org/2005/Atom"
37
+
38
+ # Service-specific settings (inherit common settings)
39
+ service_name: "arXiv"
40
+ identifier_type: "arXiv ID"
41
+ supports_batch: true
42
+
43
+ medrxiv:
44
+ # Primary API
45
+ api_url: "https://api.medrxiv.org/details"
46
+
47
+ # PDF Download configuration
48
+ pdf_base_url: "https://www.medrxiv.org/content/10.1101/"
49
+ pdf_url_template: "https://www.medrxiv.org/content/{identifier}v{version}.full.pdf"
50
+
51
+ # Default values
52
+ default_version: "1"
53
+
54
+ # Service-specific settings
55
+ service_name: "medRxiv"
56
+ identifier_type: "DOI"
57
+ supports_batch: true
58
+
59
+ biorxiv:
60
+ # Primary API
61
+ api_url: "https://api.biorxiv.org/details"
62
+
63
+ # PDF Download configuration
64
+ pdf_base_url: "https://www.biorxiv.org/content/10.1101/"
65
+ landing_url_template: "https://www.biorxiv.org/content/{doi}v{version}"
66
+ pdf_url_template: "https://www.biorxiv.org/content/{doi}v{version}.full.pdf"
67
+
68
+ # Default values
69
+ default_version: "1"
70
+
71
+ # Cloudflare-bypass settings
72
+ cf_clearance_timeout: 30
73
+ session_reuse: true
74
+ browser_config:
75
+ type: "custom" # Used for cloudscraper browser configuration
76
+
77
+ # Service-specific settings
78
+ service_name: "bioRxiv"
79
+ identifier_type: "DOI"
80
+ supports_batch: true
81
+
82
+ pubmed:
83
+ # Primary APIs
84
+ id_converter_url: "https://pmc.ncbi.nlm.nih.gov/tools/idconv/api/v1/articles"
85
+ oa_api_url: "https://www.ncbi.nlm.nih.gov/pmc/utils/oa/oa.fcgi"
86
+
87
+ # Alternative PDF Sources
88
+ europe_pmc_base_url: "https://europepmc.org/backend/ptpmcrender.fcgi"
89
+ pmc_page_base_url: "https://www.ncbi.nlm.nih.gov/pmc/articles"
90
+ direct_pmc_pdf_base_url: "https://pmc.ncbi.nlm.nih.gov/articles"
91
+
92
+ # URL Conversion for NCBI FTP links
93
+ ftp_base_url: "ftp://ftp.ncbi.nlm.nih.gov"
94
+ https_base_url: "https://ftp.ncbi.nlm.nih.gov"
95
+
96
+ # API configuration
97
+ id_converter_format: "json"
98
+
99
+ # Page scraping configuration
100
+ pdf_meta_name: "citation_pdf_url"
101
+
102
+ # Error handling
103
+ default_error_code: "unknown"
104
+
105
+ # PubMed-specific settings
106
+ service_name: "PubMed"
107
+ identifier_type: "PMID"
108
+ supports_batch: true
109
+ log_response_preview_chars: 500 # chars to log from API responses
110
+
111
+ # Global configuration for all services
112
+ supported_services: ["arxiv", "medrxiv", "biorxiv", "pubmed"]
113
+
114
+ # Tool configuration
115
+ tool:
116
+ name: "download_papers"
117
+ description: "Universal paper download tool supporting arXiv, medRxiv, bioRxiv, and PubMed"
118
+ supported_services: ["arxiv", "medrxiv", "biorxiv", "pubmed"]
119
+ default_service: "pubmed"
120
+
121
+ # Output configuration
122
+ max_summary_papers: 3
123
+ include_abstracts_in_summary: true
124
+ temp_file_cleanup: false # Set to true to auto-cleanup temp files