AutoRAG 0.1.12__tar.gz → 0.2.1__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 (447) hide show
  1. {autorag-0.1.12 → autorag-0.2.1}/.github/workflows/test.yml +0 -3
  2. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/PKG-INFO +21 -6
  3. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/SOURCES.txt +10 -3
  4. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/requires.txt +6 -0
  5. {autorag-0.1.12 → autorag-0.2.1}/PKG-INFO +21 -6
  6. {autorag-0.1.12 → autorag-0.2.1}/README.md +14 -5
  7. autorag-0.2.1/autorag/VERSION +1 -0
  8. {autorag-0.1.12 → autorag-0.2.1}/autorag/__init__.py +2 -0
  9. {autorag-0.1.12 → autorag-0.2.1}/autorag/cli.py +8 -0
  10. autorag-0.2.1/autorag/dashboard.py +132 -0
  11. autorag-0.2.1/autorag/evaluate/retrieval.py +67 -0
  12. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/run.py +3 -2
  13. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passageaugmenter/run.py +3 -2
  14. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/__init__.py +1 -0
  15. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/base.py +9 -0
  16. autorag-0.2.1/autorag/nodes/passagecompressor/longllmlingua.py +87 -0
  17. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/run.py +12 -14
  18. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/run.py +3 -2
  19. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/run.py +3 -2
  20. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/promptmaker/run.py +8 -5
  21. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/queryexpansion/__init__.py +1 -0
  22. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/queryexpansion/base.py +21 -19
  23. autorag-0.2.1/autorag/nodes/queryexpansion/hyde.py +31 -0
  24. autorag-0.2.1/autorag/nodes/queryexpansion/multi_query_expansion.py +52 -0
  25. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/queryexpansion/query_decompose.py +23 -25
  26. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/queryexpansion/run.py +7 -5
  27. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/run.py +3 -2
  28. {autorag-0.1.12 → autorag-0.2.1}/autorag/strategy.py +50 -7
  29. {autorag-0.1.12 → autorag-0.2.1}/autorag/support.py +2 -0
  30. {autorag-0.1.12 → autorag-0.2.1}/autorag/utils/util.py +65 -0
  31. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.evaluate.metric.rst +0 -8
  32. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.passagecompressor.rst +8 -0
  33. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.queryexpansion.rst +8 -0
  34. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.rst +8 -0
  35. {autorag-0.1.12 → autorag-0.2.1}/docs/source/index.rst +1 -0
  36. autorag-0.2.1/docs/source/nodes/passage_compressor/longllmlingua.md +25 -0
  37. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_compressor/passage_compressor.md +1 -0
  38. autorag-0.2.1/docs/source/nodes/query_expansion/hyde.md +27 -0
  39. autorag-0.2.1/docs/source/nodes/query_expansion/multi_query_expansion.md +30 -0
  40. autorag-0.2.1/docs/source/nodes/query_expansion/query_decompose.md +26 -0
  41. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/query_expansion/query_expansion.md +1 -0
  42. autorag-0.2.1/docs/source/optimization/strategies.md +71 -0
  43. {autorag-0.1.12 → autorag-0.2.1}/docs/source/tutorial.md +9 -0
  44. {autorag-0.1.12 → autorag-0.2.1}/requirements.txt +8 -0
  45. {autorag-0.1.12 → autorag-0.2.1}/sample_config/full.yaml +10 -2
  46. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/test_retrieval_evaluate.py +39 -30
  47. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/generator/test_run_generator_node.py +1 -0
  48. autorag-0.2.1/tests/autorag/nodes/passagecompressor/test_longllmlingua.py +29 -0
  49. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagecompressor/test_run_passage_compressor_node.py +6 -6
  50. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/promptmaker/test_prompt_maker_run.py +1 -1
  51. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/queryexpansion/test_hyde.py +9 -6
  52. autorag-0.2.1/tests/autorag/nodes/queryexpansion/test_multi_query_expansion.py +27 -0
  53. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/queryexpansion/test_query_decompose.py +9 -6
  54. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/queryexpansion/test_query_expansion_run.py +39 -10
  55. autorag-0.2.1/tests/autorag/test_dashboard.py +32 -0
  56. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/test_evaluator.py +0 -2
  57. autorag-0.2.1/tests/autorag/test_strategy.py +79 -0
  58. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/utils/test_util.py +62 -1
  59. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/full.yaml +4 -2
  60. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/config.yaml +4 -9
  61. {autorag-0.1.12/tests/resources/result_project/2 → autorag-0.2.1/tests/resources/result_project/1}/config.yaml +8 -11
  62. {autorag-0.1.12/tests/resources/result_project/1 → autorag-0.2.1/tests/resources/result_project/2}/config.yaml +2 -5
  63. autorag-0.1.12/autorag/VERSION +0 -1
  64. autorag-0.1.12/autorag/evaluate/metric/retrieval_no_gt.py +0 -37
  65. autorag-0.1.12/autorag/evaluate/retrieval.py +0 -70
  66. autorag-0.1.12/autorag/nodes/queryexpansion/hyde.py +0 -40
  67. autorag-0.1.12/docs/source/nodes/query_expansion/hyde.md +0 -22
  68. autorag-0.1.12/docs/source/nodes/query_expansion/query_decompose.md +0 -22
  69. autorag-0.1.12/tests/autorag/evaluate/metric/test_retrieval_no_gt_metric.py +0 -26
  70. autorag-0.1.12/tests/autorag/test_strategy.py +0 -55
  71. {autorag-0.1.12 → autorag-0.2.1}/.github/dependabot.yml +0 -0
  72. {autorag-0.1.12 → autorag-0.2.1}/.github/workflows/publish.yml +0 -0
  73. {autorag-0.1.12 → autorag-0.2.1}/.github/workflows/sphinx.yml +0 -0
  74. {autorag-0.1.12 → autorag-0.2.1}/.gitignore +0 -0
  75. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/dependency_links.txt +0 -0
  76. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/entry_points.txt +0 -0
  77. {autorag-0.1.12 → autorag-0.2.1}/AutoRAG.egg-info/top_level.txt +0 -0
  78. {autorag-0.1.12 → autorag-0.2.1}/CODE_OF_CONDUCT.md +0 -0
  79. {autorag-0.1.12 → autorag-0.2.1}/CONTRIBUTING.md +0 -0
  80. {autorag-0.1.12 → autorag-0.2.1}/LICENSE +0 -0
  81. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/__init__.py +0 -0
  82. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/corpus/__init__.py +0 -0
  83. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/corpus/langchain.py +0 -0
  84. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/corpus/llama_index.py +0 -0
  85. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/__init__.py +0 -0
  86. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/base.py +0 -0
  87. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/llama_index.py +0 -0
  88. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/llama_index_default_prompt.txt +0 -0
  89. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/ragas.py +0 -0
  90. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/qacreation/simple.py +0 -0
  91. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/utils/__init__.py +0 -0
  92. {autorag-0.1.12 → autorag-0.2.1}/autorag/data/utils/util.py +0 -0
  93. {autorag-0.1.12 → autorag-0.2.1}/autorag/deploy.py +0 -0
  94. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/__init__.py +0 -0
  95. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/generation.py +0 -0
  96. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/__init__.py +0 -0
  97. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/g_eval_prompts/coh_detailed.txt +0 -0
  98. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/g_eval_prompts/con_detailed.txt +0 -0
  99. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/g_eval_prompts/flu_detailed.txt +0 -0
  100. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/g_eval_prompts/rel_detailed.txt +0 -0
  101. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/generation.py +0 -0
  102. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/retrieval.py +0 -0
  103. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/retrieval_contents.py +0 -0
  104. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/metric/util.py +0 -0
  105. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/retrieval_contents.py +0 -0
  106. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluate/util.py +0 -0
  107. {autorag-0.1.12 → autorag-0.2.1}/autorag/evaluator.py +0 -0
  108. {autorag-0.1.12 → autorag-0.2.1}/autorag/node_line.py +0 -0
  109. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/__init__.py +0 -0
  110. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/__init__.py +0 -0
  111. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/base.py +0 -0
  112. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/llama_index_llm.py +0 -0
  113. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/openai_llm.py +0 -0
  114. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/generator/vllm.py +0 -0
  115. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passageaugmenter/__init__.py +0 -0
  116. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passageaugmenter/base.py +0 -0
  117. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passageaugmenter/pass_passage_augmenter.py +0 -0
  118. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passageaugmenter/prev_next_augmenter.py +0 -0
  119. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/pass_compressor.py +0 -0
  120. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/refine.py +0 -0
  121. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagecompressor/tree_summarize.py +0 -0
  122. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/__init__.py +0 -0
  123. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/base.py +0 -0
  124. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/pass_passage_filter.py +0 -0
  125. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/percentile_cutoff.py +0 -0
  126. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/recency.py +0 -0
  127. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/similarity_percentile_cutoff.py +0 -0
  128. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/similarity_threshold_cutoff.py +0 -0
  129. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagefilter/threshold_cutoff.py +0 -0
  130. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/__init__.py +0 -0
  131. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/base.py +0 -0
  132. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/cohere.py +0 -0
  133. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/colbert.py +0 -0
  134. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/flag_embedding.py +0 -0
  135. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/flag_embedding_llm.py +0 -0
  136. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/jina.py +0 -0
  137. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/koreranker.py +0 -0
  138. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/monot5.py +0 -0
  139. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/pass_reranker.py +0 -0
  140. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/rankgpt.py +0 -0
  141. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/sentence_transformer.py +0 -0
  142. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/tart/__init__.py +0 -0
  143. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/tart/modeling_enc_t5.py +0 -0
  144. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/tart/tart.py +0 -0
  145. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/tart/tokenization_enc_t5.py +0 -0
  146. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/time_reranker.py +0 -0
  147. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/passagereranker/upr.py +0 -0
  148. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/promptmaker/__init__.py +0 -0
  149. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/promptmaker/base.py +0 -0
  150. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/promptmaker/fstring.py +0 -0
  151. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/promptmaker/long_context_reorder.py +0 -0
  152. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/queryexpansion/pass_query_expansion.py +0 -0
  153. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/__init__.py +0 -0
  154. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/base.py +0 -0
  155. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/bm25.py +0 -0
  156. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/hybrid_cc.py +0 -0
  157. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/hybrid_dbsf.py +0 -0
  158. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/hybrid_rrf.py +0 -0
  159. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/hybrid_rsf.py +0 -0
  160. {autorag-0.1.12 → autorag-0.2.1}/autorag/nodes/retrieval/vectordb.py +0 -0
  161. {autorag-0.1.12 → autorag-0.2.1}/autorag/schema/__init__.py +0 -0
  162. {autorag-0.1.12 → autorag-0.2.1}/autorag/schema/module.py +0 -0
  163. {autorag-0.1.12 → autorag-0.2.1}/autorag/schema/node.py +0 -0
  164. {autorag-0.1.12 → autorag-0.2.1}/autorag/utils/__init__.py +0 -0
  165. {autorag-0.1.12 → autorag-0.2.1}/autorag/utils/preprocess.py +0 -0
  166. {autorag-0.1.12 → autorag-0.2.1}/autorag/web.py +0 -0
  167. {autorag-0.1.12 → autorag-0.2.1}/docs/Makefile +0 -0
  168. {autorag-0.1.12 → autorag-0.2.1}/docs/make.bat +0 -0
  169. {autorag-0.1.12 → autorag-0.2.1}/docs/requirements.txt +0 -0
  170. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/data_creation.png +0 -0
  171. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/data_folder.png +0 -0
  172. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/dcg.png +0 -0
  173. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/f1_score.png +0 -0
  174. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/map.png +0 -0
  175. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/mrr.png +0 -0
  176. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/ndcg.png +0 -0
  177. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/ndcg_formula.png +0 -0
  178. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/node_folder.png +0 -0
  179. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/node_line_folder.png +0 -0
  180. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/node_line_summary.png +0 -0
  181. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/node_lines.png +0 -0
  182. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/node_summary.png +0 -0
  183. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/project_folder_example.png +0 -0
  184. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/project_folders.png +0 -0
  185. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/resources_folder.png +0 -0
  186. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/RAG_paradigms.png +0 -0
  187. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/advanced_RAG.png +0 -0
  188. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/cycle.png +0 -0
  189. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/merger.png +0 -0
  190. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/node_line_modular.png +0 -0
  191. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/roadmap/policy.png +0 -0
  192. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/samsung_sundae.jpeg +0 -0
  193. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/trial_folder.png +0 -0
  194. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/trial_json.png +0 -0
  195. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/trial_summary.png +0 -0
  196. {autorag-0.1.12 → autorag-0.2.1}/docs/source/_static/web_interface.png +0 -0
  197. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.data.corpus.rst +0 -0
  198. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.data.qacreation.rst +0 -0
  199. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.data.rst +0 -0
  200. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.data.utils.rst +0 -0
  201. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.evaluate.rst +0 -0
  202. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.generator.rst +0 -0
  203. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.passageaugmenter.rst +0 -0
  204. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.passagefilter.rst +0 -0
  205. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.passagereranker.rst +0 -0
  206. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.passagereranker.tart.rst +0 -0
  207. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.promptmaker.rst +0 -0
  208. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.retrieval.rst +0 -0
  209. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.nodes.rst +0 -0
  210. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.schema.rst +0 -0
  211. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/autorag.utils.rst +0 -0
  212. {autorag-0.1.12 → autorag-0.2.1}/docs/source/api_spec/modules.rst +0 -0
  213. {autorag-0.1.12 → autorag-0.2.1}/docs/source/conf.py +0 -0
  214. {autorag-0.1.12 → autorag-0.2.1}/docs/source/data_creation/data_format.md +0 -0
  215. {autorag-0.1.12 → autorag-0.2.1}/docs/source/data_creation/ragas.md +0 -0
  216. {autorag-0.1.12 → autorag-0.2.1}/docs/source/data_creation/tutorial.md +0 -0
  217. {autorag-0.1.12 → autorag-0.2.1}/docs/source/deploy/api_endpoint.md +0 -0
  218. {autorag-0.1.12 → autorag-0.2.1}/docs/source/deploy/web.md +0 -0
  219. {autorag-0.1.12 → autorag-0.2.1}/docs/source/evaluate_metrics/generation.md +0 -0
  220. {autorag-0.1.12 → autorag-0.2.1}/docs/source/evaluate_metrics/retrieval.md +0 -0
  221. {autorag-0.1.12 → autorag-0.2.1}/docs/source/evaluate_metrics/retrieval_contents.md +0 -0
  222. {autorag-0.1.12 → autorag-0.2.1}/docs/source/install.md +0 -0
  223. {autorag-0.1.12 → autorag-0.2.1}/docs/source/local_model.md +0 -0
  224. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/generator/generator.md +0 -0
  225. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/generator/llama_index_llm.md +0 -0
  226. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/generator/openai_llm.md +0 -0
  227. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/generator/vllm.md +0 -0
  228. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/index.md +0 -0
  229. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_augmenter/passage_augmenter.md +0 -0
  230. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_augmenter/prev_next_augmenter.md +0 -0
  231. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_compressor/refine.md +0 -0
  232. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_compressor/tree_summarize.md +0 -0
  233. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/passage_filter.md +0 -0
  234. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/percentile_cutoff.md +0 -0
  235. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/recency_filter.md +0 -0
  236. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/similarity_percentile_cutoff.md +0 -0
  237. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/similarity_threshold_cutoff.md +0 -0
  238. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_filter/threshold_cutoff.md +0 -0
  239. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/cohere.md +0 -0
  240. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/colbert.md +0 -0
  241. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/flag_embedding_llm_reranker.md +0 -0
  242. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/flag_embedding_reranker.md +0 -0
  243. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/jina_reranker.md +0 -0
  244. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/koreranker.md +0 -0
  245. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/monot5.md +0 -0
  246. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/passage_reranker.md +0 -0
  247. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/rankgpt.md +0 -0
  248. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/sentence_transformer_reranker.md +0 -0
  249. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/tart.md +0 -0
  250. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/time_reranker.md +0 -0
  251. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/passage_reranker/upr.md +0 -0
  252. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/prompt_maker/fstring.md +0 -0
  253. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/prompt_maker/long_context_reorder.md +0 -0
  254. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/prompt_maker/prompt_maker.md +0 -0
  255. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/bm25.md +0 -0
  256. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/hybrid_cc.md +0 -0
  257. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/hybrid_dbsf.md +0 -0
  258. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/hybrid_rrf.md +0 -0
  259. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/hybrid_rsf.md +0 -0
  260. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/retrieval.md +0 -0
  261. {autorag-0.1.12 → autorag-0.2.1}/docs/source/nodes/retrieval/vectordb.md +0 -0
  262. {autorag-0.1.12 → autorag-0.2.1}/docs/source/optimization/custom_config.md +0 -0
  263. {autorag-0.1.12 → autorag-0.2.1}/docs/source/optimization/folder_structure.md +0 -0
  264. {autorag-0.1.12 → autorag-0.2.1}/docs/source/optimization/optimization.md +0 -0
  265. {autorag-0.1.12 → autorag-0.2.1}/docs/source/optimization/sample_full_config.yaml +0 -0
  266. {autorag-0.1.12 → autorag-0.2.1}/docs/source/roadmap/modular_rag.md +0 -0
  267. {autorag-0.1.12 → autorag-0.2.1}/docs/source/structure.md +0 -0
  268. {autorag-0.1.12 → autorag-0.2.1}/docs/source/troubleshooting.md +0 -0
  269. {autorag-0.1.12 → autorag-0.2.1}/pyproject.toml +0 -0
  270. {autorag-0.1.12 → autorag-0.2.1}/sample_config/compact_local.yaml +0 -0
  271. {autorag-0.1.12 → autorag-0.2.1}/sample_config/compact_openai.yaml +0 -0
  272. {autorag-0.1.12 → autorag-0.2.1}/sample_config/config_korean.yaml +0 -0
  273. {autorag-0.1.12 → autorag-0.2.1}/sample_config/extracted_sample.yaml +0 -0
  274. {autorag-0.1.12 → autorag-0.2.1}/sample_config/simple_local.yaml +0 -0
  275. {autorag-0.1.12 → autorag-0.2.1}/sample_config/simple_openai.yaml +0 -0
  276. {autorag-0.1.12 → autorag-0.2.1}/sample_dataset/README.md +0 -0
  277. {autorag-0.1.12 → autorag-0.2.1}/sample_dataset/eli5/load_eli5_dataset.py +0 -0
  278. {autorag-0.1.12 → autorag-0.2.1}/sample_dataset/msmarco/load_msmarco_dataset.py +0 -0
  279. {autorag-0.1.12 → autorag-0.2.1}/sample_dataset/triviaqa/load_triviaqa_dataset.py +0 -0
  280. {autorag-0.1.12 → autorag-0.2.1}/setup.cfg +0 -0
  281. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/corpus/test_base.py +0 -0
  282. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/corpus/test_langchain.py +0 -0
  283. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/corpus/test_llama_index_corpus.py +0 -0
  284. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/qacreation/test_base_qacreation.py +0 -0
  285. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/qacreation/test_llama_index_qacreation.py +0 -0
  286. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/qacreation/test_ragas_qa_creation.py +0 -0
  287. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/data/qacreation/test_simple.py +0 -0
  288. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/metric/test_generation_metric.py +0 -0
  289. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/metric/test_retrieval_contents_metric.py +0 -0
  290. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/metric/test_retrieval_metric.py +0 -0
  291. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/test_evaluate_util.py +0 -0
  292. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/test_generation_evaluate.py +0 -0
  293. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/evaluate/test_retrieval_contents_evaluate.py +0 -0
  294. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/generator/test_generator_base.py +0 -0
  295. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/generator/test_llama_index_llm.py +0 -0
  296. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/generator/test_openai.py +0 -0
  297. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/generator/test_vllm.py +0 -0
  298. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passageaugmenter/test_base_passage_augmenter.py +0 -0
  299. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passageaugmenter/test_pass_passage_augmenter.py +0 -0
  300. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passageaugmenter/test_prev_next_augmenter.py +0 -0
  301. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passageaugmenter/test_run_passage_augmenter.py +0 -0
  302. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagecompressor/test_base_passage_compressor.py +0 -0
  303. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagecompressor/test_pass_compressor.py +0 -0
  304. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagecompressor/test_refine.py +0 -0
  305. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagecompressor/test_tree_summarize.py +0 -0
  306. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_pass_passage_filter.py +0 -0
  307. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_passage_filter_base.py +0 -0
  308. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_passage_filter_run.py +0 -0
  309. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_percentile_cutoff.py +0 -0
  310. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_recency_filter.py +0 -0
  311. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_similarity_percentile_cutoff.py +0 -0
  312. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_similarity_threshold_cutoff.py +0 -0
  313. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagefilter/test_threshold_cutoff.py +0 -0
  314. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_cohere_reranker.py +0 -0
  315. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_colbert_reranker.py +0 -0
  316. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_flag_embedding.py +0 -0
  317. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_flag_embedding_llm.py +0 -0
  318. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_jina_reranker.py +0 -0
  319. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_koreranker.py +0 -0
  320. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_monot5.py +0 -0
  321. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_pass_reranker.py +0 -0
  322. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_passage_reranker_base.py +0 -0
  323. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_passage_reranker_run.py +0 -0
  324. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_rankgpt.py +0 -0
  325. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_sentence_transformer.py +0 -0
  326. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_tart.py +0 -0
  327. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_time_reranker.py +0 -0
  328. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/passagereranker/test_upr.py +0 -0
  329. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/promptmaker/test_fstring.py +0 -0
  330. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/promptmaker/test_long_context_reorder.py +0 -0
  331. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/promptmaker/test_prompt_maker_base.py +0 -0
  332. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/queryexpansion/test_pass_query_expansion.py +0 -0
  333. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/queryexpansion/test_query_expansion_base.py +0 -0
  334. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_bm25.py +0 -0
  335. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_hybrid_base.py +0 -0
  336. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_hybrid_cc.py +0 -0
  337. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_hybrid_dbsf.py +0 -0
  338. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_hybrid_rrf.py +0 -0
  339. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_hybrid_rsf.py +0 -0
  340. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_retrieval_base.py +0 -0
  341. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_run_retrieval_node.py +0 -0
  342. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/nodes/retrieval/test_vectordb.py +0 -0
  343. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/schema/test_module_schema.py +0 -0
  344. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/schema/test_node_schema.py +0 -0
  345. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/test_cli.py +0 -0
  346. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/test_deploy.py +0 -0
  347. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/test_support.py +0 -0
  348. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/test_web.py +0 -0
  349. {autorag-0.1.12 → autorag-0.2.1}/tests/autorag/utils/test_preprocess.py +0 -0
  350. {autorag-0.1.12 → autorag-0.2.1}/tests/conftest.py +0 -0
  351. {autorag-0.1.12 → autorag-0.2.1}/tests/delete_tests.py +0 -0
  352. {autorag-0.1.12 → autorag-0.2.1}/tests/mock.py +0 -0
  353. {autorag-0.1.12 → autorag-0.2.1}/tests/requirements.txt +0 -0
  354. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/README.md +0 -0
  355. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/corpus_data_sample.parquet +0 -0
  356. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/data_creation/raw_dir/sample1.txt +0 -0
  357. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/data_creation/raw_dir/sample2.txt +0 -0
  358. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/data_creation/raw_dir/sample3.txt +0 -0
  359. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/qa_data_sample.parquet +0 -0
  360. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/qa_gen_prompts/prompt1.txt +0 -0
  361. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/qa_gen_prompts/prompt2.txt +0 -0
  362. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/qa_gen_prompts/prompt3.txt +0 -0
  363. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/qa_test_data_sample.parquet +0 -0
  364. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/0.parquet +0 -0
  365. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/1.parquet +0 -0
  366. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/2.parquet +0 -0
  367. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/3.parquet +0 -0
  368. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/4.parquet +0 -0
  369. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/5.parquet +0 -0
  370. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/best_5.parquet +0 -0
  371. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/generator/summary.csv +0 -0
  372. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/0.parquet +0 -0
  373. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/1.parquet +0 -0
  374. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/best_0.parquet +0 -0
  375. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/summary.csv +0 -0
  376. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/post_retrieve_node_line/summary.csv +0 -0
  377. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
  378. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
  379. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
  380. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
  381. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
  382. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/pre_retrieve_node_line/summary.csv +0 -0
  383. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_compressor/0.parquet +0 -0
  384. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_compressor/best_0.parquet +0 -0
  385. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_compressor/summary.csv +0 -0
  386. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/0.parquet +0 -0
  387. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/1.parquet +0 -0
  388. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
  389. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/summary.csv +0 -0
  390. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/retrieval/0.parquet +0 -0
  391. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/retrieval/1.parquet +0 -0
  392. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/retrieval/best_0.parquet +0 -0
  393. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/retrieval/summary.csv +0 -0
  394. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/retrieve_node_line/summary.csv +0 -0
  395. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/0/summary.csv +0 -0
  396. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
  397. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
  398. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
  399. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
  400. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
  401. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/pre_retrieve_node_line/summary.csv +0 -0
  402. {autorag-0.1.12/tests/resources/result_project/1/retrieve_node_line/passage_compressor → autorag-0.2.1/tests/resources/result_project/1/retrieve_node_line/passage_filter}/0.parquet +0 -0
  403. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/0.parquet +0 -0
  404. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/1.parquet +0 -0
  405. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
  406. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/summary.csv +0 -0
  407. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/retrieval/0.parquet +0 -0
  408. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/retrieval/1.parquet +0 -0
  409. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/retrieval/best_0.parquet +0 -0
  410. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/1/retrieve_node_line/retrieval/summary.csv +0 -0
  411. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/post_retrieve_node_line/prompt_maker/0.parquet +0 -0
  412. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
  413. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
  414. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
  415. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
  416. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
  417. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/pre_retrieve_node_line/summary.csv +0 -0
  418. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_compressor/0.parquet +0 -0
  419. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_compressor/best_0.parquet +0 -0
  420. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_compressor/summary.csv +0 -0
  421. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/0.parquet +0 -0
  422. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/1.parquet +0 -0
  423. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
  424. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/summary.csv +0 -0
  425. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/retrieval/0.parquet +0 -0
  426. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/retrieval/1.parquet +0 -0
  427. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/retrieval/best_0.parquet +0 -0
  428. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/retrieval/summary.csv +0 -0
  429. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/2/retrieve_node_line/summary.csv +0 -0
  430. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/3/config.yaml +0 -0
  431. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/best.yaml +0 -0
  432. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/data/corpus.parquet +0 -0
  433. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/data/qa.parquet +0 -0
  434. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/bm25_porter_stemmer.pkl +0 -0
  435. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/data_level0.bin +0 -0
  436. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/header.bin +0 -0
  437. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/length.bin +0 -0
  438. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/link_lists.bin +0 -0
  439. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/resources/chroma/chroma.sqlite3 +0 -0
  440. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/result_project/trial.json +0 -0
  441. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/sample_contents_nqa.csv +0 -0
  442. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/sample_project/data/corpus.parquet +0 -0
  443. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/sample_project/data/qa.parquet +0 -0
  444. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/sample_project/resources/bm25_gpt2.pkl +0 -0
  445. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/sample_project/resources/bm25_porter_stemmer.pkl +0 -0
  446. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/simple.yaml +0 -0
  447. {autorag-0.1.12 → autorag-0.2.1}/tests/resources/test_bm25_retrieval.pkl +0 -0
@@ -7,9 +7,6 @@ on:
7
7
  pull_request:
8
8
  branches:
9
9
  - main
10
- pull_request_target:
11
- branches:
12
- - main
13
10
 
14
11
  env:
15
12
  OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: AutoRAG
3
- Version: 0.1.12
3
+ Version: 0.2.1
4
4
  Summary: Automatically Evaluate RAG pipelines with your own data. Find optimal structure for new RAG product.
5
5
  Author-email: Marker-Inc <vkehfdl1@gmail.com>
6
6
  License: Apache License
@@ -250,6 +250,7 @@ Requires-Dist: FlagEmbedding
250
250
  Requires-Dist: ragas
251
251
  Requires-Dist: ray
252
252
  Requires-Dist: kiwipiepy
253
+ Requires-Dist: llmlingua
253
254
  Requires-Dist: llama-index>=0.10.1
254
255
  Requires-Dist: llama-index-core>=0.10.1
255
256
  Requires-Dist: llama-index-embeddings-openai
@@ -260,6 +261,11 @@ Requires-Dist: llama-index-llms-openai-like
260
261
  Requires-Dist: llama-index-retrievers-bm25
261
262
  Requires-Dist: streamlit
262
263
  Requires-Dist: langchain-core>=0.1.6
264
+ Requires-Dist: panel
265
+ Requires-Dist: seaborn
266
+ Requires-Dist: ipykernel
267
+ Requires-Dist: ipywidgets
268
+ Requires-Dist: ipywidgets_bokeh
263
269
 
264
270
  # AutoRAG
265
271
 
@@ -295,7 +301,8 @@ You can see on [YouTube](https://youtu.be/2ojK8xjyXAU?feature=shared)
295
301
  - [1. Prepare your evaluation data](#1-prepare-your-evaluation-data)
296
302
  - [2. Evaluate your data to various RAG modules](#2-evaluate-your-data-to-various-rag-modules)
297
303
  - [3. Use a found optimal RAG pipeline](#3-use-a-found-optimal-rag-pipeline)
298
- - [4. Share your RAG pipeline](#4-share-your-rag-pipeline)
304
+ - [4. Run Dashboard to see the result](#4-run-dashboard)
305
+ - [5. Share your RAG pipeline](#5-share-your-rag-pipeline)
299
306
  - [+ Config yaml file](#-create-your-own-config-yaml-file)
300
307
  - [Supporting RAG modules](#supporting-nodes--modules)
301
308
  - [Roadmap](#roadmap)
@@ -425,7 +432,15 @@ You can run api server with CLI command.
425
432
  autorag run_api --config_path your/path/to/pipeline.yaml --host 0.0.0.0 --port 8000
426
433
  ```
427
434
 
428
- ### 4. Share your RAG pipeline
435
+ ### 4. Run Dashboard
436
+
437
+ You can run dashboard to easily see the result.
438
+
439
+ ```bash
440
+ autorag dashboard --trial_dir /your/path/to/trial_dir
441
+ ```
442
+
443
+ ### 5. Share your RAG pipeline
429
444
 
430
445
  You can use your RAG pipeline from extracted pipeline yaml file.
431
446
  This extracted pipeline is great for sharing your RAG pipeline to others.
@@ -515,12 +530,12 @@ at [here](https://edai.notion.site/Supporting-metrics-867d71caefd7401c9264dd91ba
515
530
  # 🛣Roadmap
516
531
 
517
532
  - [ ] Policy Module for modular RAG pipeline
518
- - [ ] Visualize evaluation result
533
+ - [x] Visualize evaluation result
519
534
  - [ ] Visualize config yaml file
520
- - [ ] More RAG modules support
535
+ - [x] More RAG modules support
521
536
  - [x] Token usage strategy
522
537
  - [ ] Multi-modal support
523
- - [ ] More evaluation metrics
538
+ - [x] More evaluation metrics
524
539
  - [ ] Answer Filtering Module
525
540
  - [x] Restart optimization from previous trial
526
541
 
@@ -18,6 +18,7 @@ AutoRAG.egg-info/top_level.txt
18
18
  autorag/VERSION
19
19
  autorag/__init__.py
20
20
  autorag/cli.py
21
+ autorag/dashboard.py
21
22
  autorag/deploy.py
22
23
  autorag/evaluator.py
23
24
  autorag/node_line.py
@@ -45,7 +46,6 @@ autorag/evaluate/metric/__init__.py
45
46
  autorag/evaluate/metric/generation.py
46
47
  autorag/evaluate/metric/retrieval.py
47
48
  autorag/evaluate/metric/retrieval_contents.py
48
- autorag/evaluate/metric/retrieval_no_gt.py
49
49
  autorag/evaluate/metric/util.py
50
50
  autorag/evaluate/metric/g_eval_prompts/coh_detailed.txt
51
51
  autorag/evaluate/metric/g_eval_prompts/con_detailed.txt
@@ -65,6 +65,7 @@ autorag/nodes/passageaugmenter/prev_next_augmenter.py
65
65
  autorag/nodes/passageaugmenter/run.py
66
66
  autorag/nodes/passagecompressor/__init__.py
67
67
  autorag/nodes/passagecompressor/base.py
68
+ autorag/nodes/passagecompressor/longllmlingua.py
68
69
  autorag/nodes/passagecompressor/pass_compressor.py
69
70
  autorag/nodes/passagecompressor/refine.py
70
71
  autorag/nodes/passagecompressor/run.py
@@ -105,6 +106,7 @@ autorag/nodes/promptmaker/run.py
105
106
  autorag/nodes/queryexpansion/__init__.py
106
107
  autorag/nodes/queryexpansion/base.py
107
108
  autorag/nodes/queryexpansion/hyde.py
109
+ autorag/nodes/queryexpansion/multi_query_expansion.py
108
110
  autorag/nodes/queryexpansion/pass_query_expansion.py
109
111
  autorag/nodes/queryexpansion/query_decompose.py
110
112
  autorag/nodes/queryexpansion/run.py
@@ -195,6 +197,7 @@ docs/source/nodes/generator/openai_llm.md
195
197
  docs/source/nodes/generator/vllm.md
196
198
  docs/source/nodes/passage_augmenter/passage_augmenter.md
197
199
  docs/source/nodes/passage_augmenter/prev_next_augmenter.md
200
+ docs/source/nodes/passage_compressor/longllmlingua.md
198
201
  docs/source/nodes/passage_compressor/passage_compressor.md
199
202
  docs/source/nodes/passage_compressor/refine.md
200
203
  docs/source/nodes/passage_compressor/tree_summarize.md
@@ -221,6 +224,7 @@ docs/source/nodes/prompt_maker/fstring.md
221
224
  docs/source/nodes/prompt_maker/long_context_reorder.md
222
225
  docs/source/nodes/prompt_maker/prompt_maker.md
223
226
  docs/source/nodes/query_expansion/hyde.md
227
+ docs/source/nodes/query_expansion/multi_query_expansion.md
224
228
  docs/source/nodes/query_expansion/query_decompose.md
225
229
  docs/source/nodes/query_expansion/query_expansion.md
226
230
  docs/source/nodes/retrieval/bm25.md
@@ -234,6 +238,7 @@ docs/source/optimization/custom_config.md
234
238
  docs/source/optimization/folder_structure.md
235
239
  docs/source/optimization/optimization.md
236
240
  docs/source/optimization/sample_full_config.yaml
241
+ docs/source/optimization/strategies.md
237
242
  docs/source/roadmap/modular_rag.md
238
243
  sample_config/compact_local.yaml
239
244
  sample_config/compact_openai.yaml
@@ -251,6 +256,7 @@ tests/delete_tests.py
251
256
  tests/mock.py
252
257
  tests/requirements.txt
253
258
  tests/autorag/test_cli.py
259
+ tests/autorag/test_dashboard.py
254
260
  tests/autorag/test_deploy.py
255
261
  tests/autorag/test_evaluator.py
256
262
  tests/autorag/test_strategy.py
@@ -270,7 +276,6 @@ tests/autorag/evaluate/test_retrieval_evaluate.py
270
276
  tests/autorag/evaluate/metric/test_generation_metric.py
271
277
  tests/autorag/evaluate/metric/test_retrieval_contents_metric.py
272
278
  tests/autorag/evaluate/metric/test_retrieval_metric.py
273
- tests/autorag/evaluate/metric/test_retrieval_no_gt_metric.py
274
279
  tests/autorag/nodes/generator/test_generator_base.py
275
280
  tests/autorag/nodes/generator/test_llama_index_llm.py
276
281
  tests/autorag/nodes/generator/test_openai.py
@@ -281,6 +286,7 @@ tests/autorag/nodes/passageaugmenter/test_pass_passage_augmenter.py
281
286
  tests/autorag/nodes/passageaugmenter/test_prev_next_augmenter.py
282
287
  tests/autorag/nodes/passageaugmenter/test_run_passage_augmenter.py
283
288
  tests/autorag/nodes/passagecompressor/test_base_passage_compressor.py
289
+ tests/autorag/nodes/passagecompressor/test_longllmlingua.py
284
290
  tests/autorag/nodes/passagecompressor/test_pass_compressor.py
285
291
  tests/autorag/nodes/passagecompressor/test_refine.py
286
292
  tests/autorag/nodes/passagecompressor/test_run_passage_compressor_node.py
@@ -313,6 +319,7 @@ tests/autorag/nodes/promptmaker/test_long_context_reorder.py
313
319
  tests/autorag/nodes/promptmaker/test_prompt_maker_base.py
314
320
  tests/autorag/nodes/promptmaker/test_prompt_maker_run.py
315
321
  tests/autorag/nodes/queryexpansion/test_hyde.py
322
+ tests/autorag/nodes/queryexpansion/test_multi_query_expansion.py
316
323
  tests/autorag/nodes/queryexpansion/test_pass_query_expansion.py
317
324
  tests/autorag/nodes/queryexpansion/test_query_decompose.py
318
325
  tests/autorag/nodes/queryexpansion/test_query_expansion_base.py
@@ -386,7 +393,7 @@ tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/1.parque
386
393
  tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/2.parquet
387
394
  tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/best_0.parquet
388
395
  tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/summary.csv
389
- tests/resources/result_project/1/retrieve_node_line/passage_compressor/0.parquet
396
+ tests/resources/result_project/1/retrieve_node_line/passage_filter/0.parquet
390
397
  tests/resources/result_project/1/retrieve_node_line/passage_reranker/0.parquet
391
398
  tests/resources/result_project/1/retrieve_node_line/passage_reranker/1.parquet
392
399
  tests/resources/result_project/1/retrieve_node_line/passage_reranker/best_0.parquet
@@ -29,6 +29,7 @@ FlagEmbedding
29
29
  ragas
30
30
  ray
31
31
  kiwipiepy
32
+ llmlingua
32
33
  llama-index>=0.10.1
33
34
  llama-index-core>=0.10.1
34
35
  llama-index-embeddings-openai
@@ -39,3 +40,8 @@ llama-index-llms-openai-like
39
40
  llama-index-retrievers-bm25
40
41
  streamlit
41
42
  langchain-core>=0.1.6
43
+ panel
44
+ seaborn
45
+ ipykernel
46
+ ipywidgets
47
+ ipywidgets_bokeh
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: AutoRAG
3
- Version: 0.1.12
3
+ Version: 0.2.1
4
4
  Summary: Automatically Evaluate RAG pipelines with your own data. Find optimal structure for new RAG product.
5
5
  Author-email: Marker-Inc <vkehfdl1@gmail.com>
6
6
  License: Apache License
@@ -250,6 +250,7 @@ Requires-Dist: FlagEmbedding
250
250
  Requires-Dist: ragas
251
251
  Requires-Dist: ray
252
252
  Requires-Dist: kiwipiepy
253
+ Requires-Dist: llmlingua
253
254
  Requires-Dist: llama-index>=0.10.1
254
255
  Requires-Dist: llama-index-core>=0.10.1
255
256
  Requires-Dist: llama-index-embeddings-openai
@@ -260,6 +261,11 @@ Requires-Dist: llama-index-llms-openai-like
260
261
  Requires-Dist: llama-index-retrievers-bm25
261
262
  Requires-Dist: streamlit
262
263
  Requires-Dist: langchain-core>=0.1.6
264
+ Requires-Dist: panel
265
+ Requires-Dist: seaborn
266
+ Requires-Dist: ipykernel
267
+ Requires-Dist: ipywidgets
268
+ Requires-Dist: ipywidgets_bokeh
263
269
 
264
270
  # AutoRAG
265
271
 
@@ -295,7 +301,8 @@ You can see on [YouTube](https://youtu.be/2ojK8xjyXAU?feature=shared)
295
301
  - [1. Prepare your evaluation data](#1-prepare-your-evaluation-data)
296
302
  - [2. Evaluate your data to various RAG modules](#2-evaluate-your-data-to-various-rag-modules)
297
303
  - [3. Use a found optimal RAG pipeline](#3-use-a-found-optimal-rag-pipeline)
298
- - [4. Share your RAG pipeline](#4-share-your-rag-pipeline)
304
+ - [4. Run Dashboard to see the result](#4-run-dashboard)
305
+ - [5. Share your RAG pipeline](#5-share-your-rag-pipeline)
299
306
  - [+ Config yaml file](#-create-your-own-config-yaml-file)
300
307
  - [Supporting RAG modules](#supporting-nodes--modules)
301
308
  - [Roadmap](#roadmap)
@@ -425,7 +432,15 @@ You can run api server with CLI command.
425
432
  autorag run_api --config_path your/path/to/pipeline.yaml --host 0.0.0.0 --port 8000
426
433
  ```
427
434
 
428
- ### 4. Share your RAG pipeline
435
+ ### 4. Run Dashboard
436
+
437
+ You can run dashboard to easily see the result.
438
+
439
+ ```bash
440
+ autorag dashboard --trial_dir /your/path/to/trial_dir
441
+ ```
442
+
443
+ ### 5. Share your RAG pipeline
429
444
 
430
445
  You can use your RAG pipeline from extracted pipeline yaml file.
431
446
  This extracted pipeline is great for sharing your RAG pipeline to others.
@@ -515,12 +530,12 @@ at [here](https://edai.notion.site/Supporting-metrics-867d71caefd7401c9264dd91ba
515
530
  # 🛣Roadmap
516
531
 
517
532
  - [ ] Policy Module for modular RAG pipeline
518
- - [ ] Visualize evaluation result
533
+ - [x] Visualize evaluation result
519
534
  - [ ] Visualize config yaml file
520
- - [ ] More RAG modules support
535
+ - [x] More RAG modules support
521
536
  - [x] Token usage strategy
522
537
  - [ ] Multi-modal support
523
- - [ ] More evaluation metrics
538
+ - [x] More evaluation metrics
524
539
  - [ ] Answer Filtering Module
525
540
  - [x] Restart optimization from previous trial
526
541
 
@@ -32,7 +32,8 @@ You can see on [YouTube](https://youtu.be/2ojK8xjyXAU?feature=shared)
32
32
  - [1. Prepare your evaluation data](#1-prepare-your-evaluation-data)
33
33
  - [2. Evaluate your data to various RAG modules](#2-evaluate-your-data-to-various-rag-modules)
34
34
  - [3. Use a found optimal RAG pipeline](#3-use-a-found-optimal-rag-pipeline)
35
- - [4. Share your RAG pipeline](#4-share-your-rag-pipeline)
35
+ - [4. Run Dashboard to see the result](#4-run-dashboard)
36
+ - [5. Share your RAG pipeline](#5-share-your-rag-pipeline)
36
37
  - [+ Config yaml file](#-create-your-own-config-yaml-file)
37
38
  - [Supporting RAG modules](#supporting-nodes--modules)
38
39
  - [Roadmap](#roadmap)
@@ -162,7 +163,15 @@ You can run api server with CLI command.
162
163
  autorag run_api --config_path your/path/to/pipeline.yaml --host 0.0.0.0 --port 8000
163
164
  ```
164
165
 
165
- ### 4. Share your RAG pipeline
166
+ ### 4. Run Dashboard
167
+
168
+ You can run dashboard to easily see the result.
169
+
170
+ ```bash
171
+ autorag dashboard --trial_dir /your/path/to/trial_dir
172
+ ```
173
+
174
+ ### 5. Share your RAG pipeline
166
175
 
167
176
  You can use your RAG pipeline from extracted pipeline yaml file.
168
177
  This extracted pipeline is great for sharing your RAG pipeline to others.
@@ -252,12 +261,12 @@ at [here](https://edai.notion.site/Supporting-metrics-867d71caefd7401c9264dd91ba
252
261
  # 🛣Roadmap
253
262
 
254
263
  - [ ] Policy Module for modular RAG pipeline
255
- - [ ] Visualize evaluation result
264
+ - [x] Visualize evaluation result
256
265
  - [ ] Visualize config yaml file
257
- - [ ] More RAG modules support
266
+ - [x] More RAG modules support
258
267
  - [x] Token usage strategy
259
268
  - [ ] Multi-modal support
260
- - [ ] More evaluation metrics
269
+ - [x] More evaluation metrics
261
270
  - [ ] Answer Filtering Module
262
271
  - [x] Restart optimization from previous trial
263
272
 
@@ -0,0 +1 @@
1
+ 0.2.1
@@ -4,6 +4,7 @@ import os
4
4
  import sys
5
5
 
6
6
  import transformers
7
+ from llama_index.core.llms.mock import MockLLM
7
8
  from llama_index.embeddings.huggingface import HuggingFaceEmbedding
8
9
  from llama_index.embeddings.openai import OpenAIEmbedding
9
10
  from llama_index.embeddings.openai import OpenAIEmbeddingModelType
@@ -55,6 +56,7 @@ generator_models = {
55
56
  'openai': OpenAI,
56
57
  'huggingfacellm': HuggingFaceLLM,
57
58
  'openailike': OpenAILike,
59
+ 'mock': MockLLM,
58
60
  }
59
61
 
60
62
  rich_format = "[%(filename)s:%(lineno)s] >> %(message)s"
@@ -8,6 +8,7 @@ from typing import Optional
8
8
 
9
9
  import click
10
10
 
11
+ from autorag import dashboard
11
12
  from autorag.deploy import Runner
12
13
  from autorag.deploy import extract_best_config as original_extract_best_config
13
14
  from autorag.evaluator import Evaluator
@@ -70,6 +71,12 @@ def run_web(yaml_path: Optional[str], project_dir: Optional[str], trial_path: Op
70
71
  subprocess.run(['streamlit', 'run', web_py_path, '--', '--trial_path', trial_path])
71
72
 
72
73
 
74
+ @click.command()
75
+ @click.option('--trial_dir', type=click.Path(dir_okay=True, file_okay=False, exists=True), required=True)
76
+ def run_dashboard(trial_dir: str):
77
+ dashboard.run(trial_dir)
78
+
79
+
73
80
  @click.command()
74
81
  @click.option('--trial_path', type=click.Path(), help='Path to the trial directory.')
75
82
  @click.option('--output_path', type=click.Path(), help='Path to the output directory.'
@@ -94,6 +101,7 @@ def restart_evaluate(trial_path):
94
101
  cli.add_command(evaluate, 'evaluate')
95
102
  cli.add_command(run_api, 'run_api')
96
103
  cli.add_command(run_web, 'run_web')
104
+ cli.add_command(run_dashboard, 'dashboard')
97
105
  cli.add_command(extract_best_config, 'extract_best_config')
98
106
  cli.add_command(restart_evaluate, 'restart_evaluate')
99
107
 
@@ -0,0 +1,132 @@
1
+ import ast
2
+ import logging
3
+ import os
4
+ from typing import Dict, List
5
+
6
+ import matplotlib.pyplot as plt
7
+ import pandas as pd
8
+ import panel as pn
9
+ import seaborn as sns
10
+ import yaml
11
+
12
+ from autorag.utils.util import dict_to_markdown, dict_to_markdown_table
13
+
14
+ pn.extension('terminal', 'tabulator', 'mathjax', 'ipywidgets',
15
+ console_output='disable', sizing_mode="stretch_width")
16
+ logger = logging.getLogger("AutoRAG")
17
+
18
+
19
+ def find_node_dir(trial_dir: str) -> List[str]:
20
+ trial_summary_df = pd.read_csv(os.path.join(trial_dir, 'summary.csv'))
21
+ result_paths = []
22
+ for idx, row in trial_summary_df.iterrows():
23
+ node_line_name = row['node_line_name']
24
+ node_type = row['node_type']
25
+ result_paths.append(os.path.join(trial_dir, node_line_name, node_type))
26
+ return result_paths
27
+
28
+
29
+ def get_metric_values(node_summary_df: pd.DataFrame) -> Dict:
30
+ non_metric_column_names = ['filename', 'module_name', 'module_params', 'execution_time', 'average_output_token',
31
+ 'is_best']
32
+ best_row = node_summary_df.loc[node_summary_df['is_best']].drop(columns=non_metric_column_names, errors='ignore')
33
+ assert len(best_row) == 1, "The best module must be only one."
34
+ return best_row.iloc[0].to_dict()
35
+
36
+
37
+ def make_trial_summary_md(trial_dir):
38
+ markdown_text = f"""# Trial Result Summary
39
+ - Trial Directory : {trial_dir}
40
+
41
+ """
42
+ node_dirs = find_node_dir(trial_dir)
43
+ for node_dir in node_dirs:
44
+ node_summary_filepath = os.path.join(node_dir, 'summary.csv')
45
+ node_type = os.path.basename(node_dir)
46
+ node_summary_df = pd.read_csv(node_summary_filepath)
47
+ best_row = node_summary_df.loc[node_summary_df['is_best']].iloc[0]
48
+ metric_dict = get_metric_values(node_summary_df)
49
+ markdown_text += f"""---
50
+
51
+ ## {node_type} best module
52
+
53
+ ### Module Name
54
+
55
+ {best_row['module_name']}
56
+
57
+ ### Module Params
58
+
59
+ {dict_to_markdown(ast.literal_eval(best_row['module_params']), level=3)}
60
+
61
+ ### Metric Values
62
+
63
+ {dict_to_markdown_table(metric_dict, key_column_name='metric_name', value_column_name='metric_value')}
64
+
65
+ """
66
+
67
+ return markdown_text
68
+
69
+
70
+ def node_view(node_dir: str):
71
+ non_metric_column_names = ['filename', 'module_name', 'module_params', 'execution_time', 'average_output_token',
72
+ 'is_best']
73
+ summary_df = pd.read_csv(os.path.join(node_dir, 'summary.csv'))
74
+ df_widget = pn.widgets.Tabulator(summary_df, name='Summary DataFrame')
75
+ # TODO: add on click listener for pop-up of each file detail.
76
+ # https://panel.holoviz.org/reference/widgets/Tabulator.html
77
+
78
+ try:
79
+ fig, ax = plt.subplots(figsize=(10, 5))
80
+ metric_df = summary_df.drop(columns=non_metric_column_names, errors='ignore')
81
+ sns.stripplot(data=metric_df, ax=ax)
82
+ strip_plot_pane = pn.pane.Matplotlib(fig, tight=True)
83
+
84
+ fig2, ax2 = plt.subplots(figsize=(10, 5))
85
+ sns.boxplot(data=metric_df, ax=ax2)
86
+ box_plot_pane = pn.pane.Matplotlib(fig2, tight=True)
87
+ plot_pane = pn.Row(strip_plot_pane, box_plot_pane)
88
+
89
+ layout = pn.Column("## Summary distribution plot", plot_pane, "## Summary DataFrame", df_widget)
90
+ except Exception as e:
91
+ logger.error(f'Skipping make boxplot and stripplot with error {e}')
92
+ layout = pn.Column("## Summary DataFrame", df_widget)
93
+ layout.servable()
94
+ return layout
95
+
96
+
97
+ CSS = """
98
+ div.card-margin:nth-child(1) {
99
+ max-height: 300px;
100
+ }
101
+ div.card-margin:nth-child(2) {
102
+ max-height: 400px;
103
+ }
104
+ """
105
+
106
+
107
+ def yaml_to_markdown(yaml_filepath):
108
+ markdown_content = ""
109
+ with open(yaml_filepath, 'r', encoding='utf-8') as file:
110
+ try:
111
+ content = yaml.safe_load(file)
112
+ markdown_content += f"## {os.path.basename(yaml_filepath)}\n```yaml\n{yaml.dump(content, allow_unicode=True)}\n```\n\n"
113
+ except yaml.YAMLError as exc:
114
+ print(f"Error in {yaml_filepath}: {exc}")
115
+ return markdown_content
116
+
117
+
118
+ def run(trial_dir: str):
119
+ trial_summary_md = make_trial_summary_md(trial_dir=trial_dir)
120
+ trial_summary_tab = pn.pane.Markdown(trial_summary_md, sizing_mode='stretch_width')
121
+
122
+ node_views = [(str(os.path.basename(node_dir)), node_view(node_dir)) for node_dir in find_node_dir(trial_dir)]
123
+
124
+ yaml_file_markdown = yaml_to_markdown(os.path.join(trial_dir, "config.yaml"))
125
+
126
+ yaml_file = pn.pane.Markdown(yaml_file_markdown, sizing_mode='stretch_width')
127
+
128
+ tabs = pn.Tabs(('Summary', trial_summary_tab), *node_views, ('Used YAML file', yaml_file), dynamic=True)
129
+
130
+ template = pn.template.FastListTemplate(site="AutoRAG", title="Dashboard",
131
+ main=[tabs], raw_css=[CSS]).servable()
132
+ template.show()
@@ -0,0 +1,67 @@
1
+ import functools
2
+ import warnings
3
+ from typing import List, Callable, Any, Tuple, Optional, Union, Dict
4
+
5
+ import pandas as pd
6
+
7
+ from autorag.evaluate.metric import (retrieval_recall, retrieval_precision, retrieval_f1, retrieval_ndcg, retrieval_mrr,
8
+ retrieval_map)
9
+ from autorag.evaluate.util import cast_metrics
10
+
11
+ RETRIEVAL_METRIC_FUNC_DICT = {func.__name__: func for func in
12
+ [retrieval_recall, retrieval_precision, retrieval_f1, retrieval_ndcg, retrieval_mrr,
13
+ retrieval_map]}
14
+ RETRIEVAL_NO_GT_METRIC_FUNC_DICT = {func.__name__: func for func in []}
15
+
16
+
17
+ def evaluate_retrieval(retrieval_gt: List[List[List[str]]], metrics: Union[List[str], List[Dict]],
18
+ queries: Optional[List[str]] = None, generation_gt: Optional[List[List[str]]] = None):
19
+ def decorator_evaluate_retrieval(
20
+ func: Callable[[Any], Tuple[List[List[str]], List[List[str]], List[List[float]]]]):
21
+ """
22
+ Decorator for evaluating retrieval results.
23
+ You can use this decorator to any method that returns (contents, scores, ids),
24
+ which is the output of conventional retrieval modules.
25
+
26
+ :param func: Must return (contents, scores, ids)
27
+ :return: wrapper function that returns pd.DataFrame, which is the evaluation result.
28
+ """
29
+
30
+ @functools.wraps(func)
31
+ def wrapper(*args, **kwargs) -> pd.DataFrame:
32
+ contents, pred_ids, scores = func(*args, **kwargs)
33
+
34
+ metric_scores = {}
35
+ metric_names, metric_params = cast_metrics(metrics)
36
+
37
+ for metric_name, metric_param in zip(metric_names, metric_params):
38
+ if metric_name in RETRIEVAL_METRIC_FUNC_DICT:
39
+ metric_func = RETRIEVAL_METRIC_FUNC_DICT[metric_name]
40
+ metric_scores[metric_name] = metric_func(retrieval_gt=retrieval_gt, pred_ids=pred_ids,
41
+ **metric_param)
42
+ elif metric_name in RETRIEVAL_NO_GT_METRIC_FUNC_DICT:
43
+ metric_func = RETRIEVAL_NO_GT_METRIC_FUNC_DICT[metric_name]
44
+ if queries is None:
45
+ raise ValueError(f"To using {metric_name}, you have to provide queries.")
46
+ if generation_gt is None:
47
+ raise ValueError(f"To using {metric_name}, you have to provide generation ground truth.")
48
+ metric_scores[metric_name] = metric_func(queries=queries, retrieved_contents=contents,
49
+ generation_gt=generation_gt, **metric_param)
50
+ else:
51
+ warnings.warn(
52
+ f"metric {metric_name} is not in supported metrics: {RETRIEVAL_METRIC_FUNC_DICT.keys()}"
53
+ f" and {RETRIEVAL_NO_GT_METRIC_FUNC_DICT.keys()}"
54
+ f"{metric_name} will be ignored.")
55
+
56
+ metric_result_df = pd.DataFrame(metric_scores)
57
+ execution_result_df = pd.DataFrame({
58
+ 'retrieved_contents': contents,
59
+ 'retrieved_ids': pred_ids,
60
+ 'retrieve_scores': scores,
61
+ })
62
+ result_df = pd.concat([execution_result_df, metric_result_df], axis=1)
63
+ return result_df
64
+
65
+ return wrapper
66
+
67
+ return decorator_evaluate_retrieval
@@ -6,7 +6,7 @@ import pandas as pd
6
6
 
7
7
  from autorag.evaluate import evaluate_generation
8
8
  from autorag.evaluate.util import cast_metrics
9
- from autorag.strategy import measure_speed, filter_by_threshold, select_best_average
9
+ from autorag.strategy import measure_speed, filter_by_threshold, select_best
10
10
 
11
11
 
12
12
  def run_generator_node(modules: List[Callable],
@@ -72,7 +72,8 @@ def run_generator_node(modules: List[Callable],
72
72
  results, filenames = filter_by_threshold(results, average_times, strategies['speed_threshold'], filenames)
73
73
  if strategies.get('token_threshold') is not None:
74
74
  results, filenames = filter_by_threshold(results, token_usages, strategies['token_threshold'], filenames)
75
- selected_result, selected_filename = select_best_average(results, metric_names, filenames)
75
+ selected_result, selected_filename = select_best(results, metric_names, filenames,
76
+ strategies.get('strategy', 'mean'))
76
77
  best_result = pd.concat([previous_result, selected_result], axis=1)
77
78
 
78
79
  # add 'is_best' column at summary file
@@ -6,7 +6,7 @@ from typing import List, Callable, Dict
6
6
  import pandas as pd
7
7
 
8
8
  from autorag.nodes.retrieval.run import evaluate_retrieval_node
9
- from autorag.strategy import measure_speed, filter_by_threshold, select_best_average
9
+ from autorag.strategy import measure_speed, filter_by_threshold, select_best
10
10
 
11
11
  logger = logging.getLogger("AutoRAG")
12
12
 
@@ -56,7 +56,8 @@ def run_passage_augmenter_node(modules: List[Callable],
56
56
  # filter by strategies
57
57
  if strategies.get('speed_threshold') is not None:
58
58
  results, filenames = filter_by_threshold(results, average_times, strategies['speed_threshold'], filenames)
59
- selected_result, selected_filename = select_best_average(results, strategies.get('metrics'), filenames)
59
+ selected_result, selected_filename = select_best(results, strategies.get('metrics'), filenames,
60
+ strategies.get('strategy', 'mean'))
60
61
  # change metric name columns to passage_augmenter_metric_name
61
62
  selected_result = selected_result.rename(columns={
62
63
  metric_name: f'passage_augmenter_{metric_name}' for metric_name in strategies['metrics']})
@@ -1,3 +1,4 @@
1
+ from .longllmlingua import longllmlingua
1
2
  from .pass_compressor import pass_compressor
2
3
  from .refine import refine
3
4
  from .tree_summarize import tree_summarize
@@ -46,6 +46,15 @@ def passage_compressor_node(func):
46
46
  )
47
47
  del llm
48
48
  result = list(map(lambda x: [x], result))
49
+ elif func.__name__ == 'longllmlingua':
50
+ result = func(
51
+ queries=queries,
52
+ contents=retrieved_contents,
53
+ scores=retrieve_scores,
54
+ ids=retrieved_ids,
55
+ **kwargs
56
+ )
57
+ result = list(map(lambda x: [x], result))
49
58
  elif func.__name__ == 'pass_compressor':
50
59
  result = func(contents=retrieved_contents)
51
60
  else: