AutoRAG 0.3.24__tar.gz → 0.3.26__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.
- autorag-0.3.26/AGENTS.md +14 -0
- {autorag-0.3.24 → autorag-0.3.26}/PKG-INFO +13 -9
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/chunk/langchain_chunk.py +4 -1
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/chunk/llama_index_chunk.py +4 -3
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/base.py +2 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/clova.py +12 -2
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluator.py +3 -0
- autorag-0.3.26/autorag/nodes/generator/chat.py +65 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/llama_index_llm.py +6 -1
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/minimax_llm.py +22 -46
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/openai_llm.py +10 -20
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/vllm_api.py +10 -6
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/tart/modeling_enc_t5.py +23 -2
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/tart/tart.py +10 -1
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/util.py +1 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/schema/node.py +6 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/qdrant.py +5 -5
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/index.rst +1 -0
- autorag-0.3.26/docs/source/ty.md +30 -0
- {autorag-0.3.24 → autorag-0.3.26}/pyproject.toml +10 -9
- {autorag-0.3.24 → autorag-0.3.26}/sample_dataset/README.md +14 -2
- autorag-0.3.26/sample_dataset/clapnq/load_clapnq_dataset.py +86 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_langchain_parse.py +12 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_llama_index_llm.py +33 -2
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_minimax.py +26 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_openai.py +105 -14
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_vllm.py +72 -18
- autorag-0.3.26/tests/autorag/nodes/generator/test_vllm_api.py +56 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_cohere_reranker.py +3 -3
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/schema/test_node_schema.py +27 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_evaluator.py +33 -0
- autorag-0.3.26/tests/autorag/test_optional_extras.py +49 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_qdrant.py +34 -4
- autorag-0.3.26/tests/delete_tests.py +38 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/data_level0.bin +1 -1
- autorag-0.3.26/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/link_lists.bin +0 -0
- autorag-0.3.26/tests/sample_dataset/test_load_clapnq_dataset.py +51 -0
- autorag-0.3.26/uv.lock +10247 -0
- autorag-0.3.24/tests/delete_tests.py +0 -33
- autorag-0.3.24/uv.lock +0 -9432
- {autorag-0.3.24 → autorag-0.3.26}/.gitignore +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/.pre-commit-config.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/CNAME +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/CONTRIBUTING.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/LICENSE +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/README.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/chunker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/cli.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/dashboard.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/chunk/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/chunk/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/chunk/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/corpus/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/corpus/langchain.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/corpus/llama_index.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/llama_index.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/llama_index_default_prompt.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/ragas.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/legacy/qacreation/simple.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/langchain_parse.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/llamaparse.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/parse/table_hybrid_parse.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/evolve/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/evolve/llama_index_query_evolve.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/evolve/openai_query_evolve.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/evolve/prompt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/extract_evidence.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/filter/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/filter/dontknow.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/filter/passage_dependency.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/filter/prompt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/generation_gt/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/generation_gt/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/generation_gt/llama_index_gen_gt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/generation_gt/openai_gen_gt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/generation_gt/prompt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/query/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/query/llama_gen_query.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/query/openai_gen_query.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/query/prompt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/sample.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/qa/schema.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/utils/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/data/utils/util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/deploy/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/deploy/api.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/deploy/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/deploy/gradio.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/deploy/swagger.yml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/embedding/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/embedding/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/embedding/vllm.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/generation.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/deepeval_prompt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/g_eval_prompts/coh_detailed.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/g_eval_prompts/con_detailed.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/g_eval_prompts/flu_detailed.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/g_eval_prompts/rel_detailed.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/generation.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/retrieval.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/retrieval_contents.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/metric/util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/retrieval.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/retrieval_contents.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/evaluation/util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/node_line.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/generator/vllm.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/hybridretrieval/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/hybridretrieval/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/hybridretrieval/hybrid_cc.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/hybridretrieval/hybrid_rrf.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/hybridretrieval/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/lexicalretrieval/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/lexicalretrieval/bm25.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/lexicalretrieval/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passageaugmenter/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passageaugmenter/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passageaugmenter/pass_passage_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passageaugmenter/prev_next_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passageaugmenter/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/longllmlingua.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/pass_compressor.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/refine.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagecompressor/tree_summarize.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/pass_passage_filter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/percentile_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/recency.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/similarity_percentile_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/similarity_threshold_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagefilter/threshold_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/cohere.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/colbert.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/flag_embedding.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/flag_embedding_llm.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/flashrank.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/jina.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/koreranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/mixedbreadai.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/monot5.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/nvidia.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/openvino.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/pass_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/rankgpt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/sentence_transformer.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/tart/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/tart/tokenization_enc_t5.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/time_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/upr.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/passagereranker/voyageai.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/chat_fstring.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/fstring.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/long_context_reorder.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/promptmaker/window_replacement.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/hyde.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/multi_query_expansion.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/pass_query_expansion.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/query_decompose.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/queryexpansion/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/retrieval/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/retrieval/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/retrieval/run_util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/semanticretrieval/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/semanticretrieval/run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/nodes/semanticretrieval/vectordb.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/parser.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/schema/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/schema/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/schema/metricinput.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/schema/module.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/strategy.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/support.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/utils/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/utils/cast.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/utils/preprocess.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/utils/util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/validator.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/chroma.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/couchbase.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/milvus.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/pinecone.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/vectordb/weaviate.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/autorag/web.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/CNAME +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/Makefile +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/make.bat +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/requirements.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/CNAME +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/data_creation.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/data_creation_pipeline.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/data_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/dcg.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/f1_score.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/integration/couchbase_search_index.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/integration/nvidia_api.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/integration/nvidia_nim.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/integration/ollama_autorag.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/map.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/mrr.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/ndcg.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/ndcg_formula.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/node_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/node_line_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/node_line_summary.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/node_lines.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/node_summary.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/normal_distribution.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/project_folder_example.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/project_folders.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/qa/data_creation_schema.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/resources_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/RAG_paradigms.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/advanced_RAG.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/cycle.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/merger.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/node_line_modular.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/roadmap/policy.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/samsung_sundae.jpeg +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/score_fusion.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/trial_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/trial_json.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/trial_summary.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/web_interface.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/web_interface_gradio.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/compact_structured.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/detail_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/full_modules.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/full_structured.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/full_yaml_structure.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/gpu_modules.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/half_structured.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/non_gpu_modules.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/sample_yaml_folder.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/_static/yaml/simple_structured.png +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.chunk.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.corpus.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.legacy.corpus.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.legacy.qacreation.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.legacy.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.parse.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qa.evolve.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qa.filter.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qa.generation_gt.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qa.query.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qa.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.qacreation.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.data.utils.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.deploy.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.evaluation.metric.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.evaluation.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.generator.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.passageaugmenter.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.passagecompressor.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.passagefilter.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.passagereranker.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.passagereranker.tart.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.promptmaker.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.queryexpansion.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.retrieval.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.nodes.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.schema.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.utils.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/autorag.vectordb.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/api_spec/modules.rst +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/azure_openai.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/conf.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/chunk/chunk.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/chunk/langchain_chunk.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/chunk/llama_index_chunk.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/data_creation.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/data_format.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/legacy/legacy.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/legacy/parse.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/legacy/ragas.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/legacy/tutorial.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/parse/clova.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/parse/langchain_parse.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/parse/llama_parse.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/parse/parse.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/parse/table_hybrid_parse.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/qa_creation/answer_gen.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/qa_creation/evolve.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/qa_creation/filter.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/qa_creation/qa_creation.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/qa_creation/query_gen.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/data_creation/tutorial.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/deploy/api_endpoint.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/deploy/web.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/evaluate_metrics/generation.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/evaluate_metrics/retrieval.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/evaluate_metrics/retrieval_contents.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/install.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/llm/aws_bedrock.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/llm/huggingface_llm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/llm/llm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/llm/nvidia_nim.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/llm/ollama.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/chroma.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/couchbase.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/milvus.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/pinecone.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/qdrant.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/vectordb.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/integration/vectordb/weaviate.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/local_model.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/migration.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/generator.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/llama_index_llm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/minimax_llm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/openai_llm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/vllm.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/generator/vllm_api.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/index.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_augmenter/passage_augmenter.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_augmenter/prev_next_augmenter.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_compressor/longllmlingua.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_compressor/passage_compressor.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_compressor/refine.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_compressor/tree_summarize.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/passage_filter.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/percentile_cutoff.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/recency_filter.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/similarity_percentile_cutoff.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/similarity_threshold_cutoff.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_filter/threshold_cutoff.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/cohere.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/colbert.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/flag_embedding_llm_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/flag_embedding_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/flashrank_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/jina_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/koreranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/mixedbreadai_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/monot5.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/nvidia_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/openvino_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/passage_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/rankgpt.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/sentence_transformer_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/tart.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/time_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/upr.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/passage_reranker/voyageai_reranker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/prompt_maker/chat_fstring.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/prompt_maker/fstring.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/prompt_maker/long_context_reorder.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/prompt_maker/prompt_maker.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/prompt_maker/window_replacement.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/query_expansion/hyde.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/query_expansion/multi_query_expansion.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/query_expansion/query_decompose.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/query_expansion/query_expansion.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/retrieval/bm25.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/retrieval/hybrid_cc.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/retrieval/hybrid_rrf.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/retrieval/retrieval.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/nodes/retrieval/vectordb.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/optimization/custom_config.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/optimization/folder_structure.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/optimization/optimization.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/optimization/sample_config.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/optimization/strategies.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/roadmap/modular_rag.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/structure.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/test_your_rag.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/troubleshooting.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/docs/source/tutorial.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/chunk/chunk_full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/chunk/chunk_ko.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/chunk/simple_chunk.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/all_files_full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/file_types_full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/parse_hybird.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/parse_ko.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/parse_multimodal.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/parse_ocr.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/parse/simple_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu/compact_local.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu/compact_openai.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu/full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu/half.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu_api/compact.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu_api/full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/gpu_api/half.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/compact.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/half.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_azure_openai.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_bedrock.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_local.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_minimax.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_ollama.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/english/non_gpu/simple_openai.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/extracted_sample.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu/compact_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu/full_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu/half_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu_api/compact_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu_api/full_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/gpu_api/half_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/non_gpu/compact_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/non_gpu/full_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/non_gpu/half_korean.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_config/rag/korean/non_gpu/simple_korean.yaml +0 -0
- {autorag-0.3.24/tests → autorag-0.3.26/sample_dataset/clapnq}/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_dataset/eli5/load_eli5_dataset.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_dataset/hotpotqa/load_hotpotqa_dataset.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_dataset/msmarco/load_msmarco_dataset.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/sample_dataset/triviaqa/load_triviaqa_dataset.py +0 -0
- /autorag-0.3.24/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/link_lists.bin → /autorag-0.3.26/tests/__init__.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/chunk/test_chunk_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/chunk/test_chunk_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/chunk/test_langchain_chunk.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/chunk/test_llama_index_chunk.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/corpus/test_base_corpus_legacy.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/corpus/test_langchain.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/corpus/test_llama_index_corpus.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/qacreation/test_base_qacreation.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/qacreation/test_llama_index_qacreation.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/qacreation/test_ragas_qa_creation.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/legacy/qacreation/test_simple.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_clova.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_llamaparse.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_parse_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_parse_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/parse/test_table_hybrid_parse.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/evolve/base_test_query_evolve.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/evolve/test_llama_index_query_evolve.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/evolve/test_openai_query_evolve.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/filter/test_dontknow.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/filter/test_passage_dependency.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/generation_gt/base_test_generation_gt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/generation_gt/test_llama_index_gen_gt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/generation_gt/test_openai_gen_gt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/query/base_test_query_gen.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/query/test_llama_gen_query.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/query/test_openai_gen_query.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/test_data_creation_piepline.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/test_sample.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/data/qa/test_schema.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/embedding/test_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/metric/test_generation_metric.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/metric/test_retrieval_contents_metric.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/metric/test_retrieval_metric.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/test_evaluate_util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/test_generation_evaluate.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/test_retrieval_contents_evaluate.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/evaluate/test_retrieval_evaluate.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_generator_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/generator/test_run_generator_node.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/hybridretrieval/test_hybrid_cc.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/hybridretrieval/test_hybrid_rrf.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/hybridretrieval/test_run_hybrid_retrieval.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/lexicalretrieval/test_bm25.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/lexicalretrieval/test_run_lexical_retrieval.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passageaugmenter/test_base_passage_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passageaugmenter/test_pass_passage_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passageaugmenter/test_prev_next_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passageaugmenter/test_run_passage_augmenter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_base_passage_compressor.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_longllmlingua.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_pass_compressor.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_refine.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_run_passage_compressor_node.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagecompressor/test_tree_summarize.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_pass_passage_filter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_passage_filter_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_passage_filter_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_percentile_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_recency_filter.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_similarity_percentile_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_similarity_threshold_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagefilter/test_threshold_cutoff.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_colbert_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_flag_embedding.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_flag_embedding_llm.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_flashrank_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_jina_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_koreranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_mixedbreadai_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_monot5.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_nvidia_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_openvino_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_pass_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_passage_reranker_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_passage_reranker_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_rankgpt.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_sentence_transformer.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_tart.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_time_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_upr.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/passagereranker/test_voyageai_reranker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_chat_fstring.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_fstring.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_long_context_reorder.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_prompt_maker_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_prompt_maker_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/promptmaker/test_window_replacement.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_hyde.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_multi_query_expansion.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_pass_query_expansion.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_query_decompose.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_query_expansion_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/queryexpansion/test_query_expansion_run.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/retrieval/test_hybrid_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/retrieval/test_retrieval_base.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/semanticretrieval/test_run_semantic_retrieval.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/nodes/semanticretrieval/test_vectordb.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/schema/test_base_schema.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/schema/test_metricinput_schema.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/schema/test_module_schema.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_chunker.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_cli.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_dashboard.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_deploy.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_node_line.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_parser.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_strategy.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_support.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_validator.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/test_web.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/utils/test_preprocess.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/utils/test_util.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_base_vectordb.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_chroma.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_couchbase.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_milvus.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_pinecone.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/autorag/vectordb/test_weaviate.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/conftest.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/mock.py +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/README.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/chunk_data/sample_parsed.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/corpus_data_sample.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/data_creation/raw_dir/sample1.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/data_creation/raw_dir/sample2.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/data_creation/raw_dir/sample3.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/dataset_sample_gen_by_autorag/corpus.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/dataset_sample_gen_by_autorag/qa.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/full.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files/baseball_1.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files/csv_sample.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/baseball_1.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/csv_sample.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/html_sample.html +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/json_sample.json +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/markdown_sample.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/all_files_full/xml_sample.xml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/clova_data/result_sample.json +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/clova_data/result_table.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/clova_data/result_text.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/config/all_files.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/config/lack_full_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/config/lack_simple_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/config/perfect_full_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/config/perfect_simple_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/csv_data/csv_sample.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/eng_text/baseball_1.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/eng_text/baseball_2.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/html_data/html_sample.html +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/hybrid_data/nfl_rulebook_both.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/json_data/json_sample.json +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/korean_table/only_table/kbo_only_table.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/korean_table/table_text/kbo_table_text.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/korean_text/korean_texts_two_page.pdf +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/markdown_data/markdown_sample.md +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/parse_data/xml_data/xml_sample.xml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/qa_data_sample.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/qa_gen_prompts/prompt1.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/qa_gen_prompts/prompt2.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/qa_gen_prompts/prompt3.txt +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/qa_test_data_sample.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/config.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/generator/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/generator/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/generator/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/1.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/prompt_maker/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/post_retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/pre_retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/hybrid_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/hybrid_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/hybrid_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/lexical_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/lexical_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/lexical_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/passage_reranker/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/semantic_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/semantic_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/semantic_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/0/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/config.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/pre_retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/hybrid_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/hybrid_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/hybrid_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/lexical_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/lexical_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/lexical_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/passage_reranker/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/semantic_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/semantic_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/semantic_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/1/retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/config.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/post_retrieve_node_line/prompt_maker/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/post_retrieve_node_line/prompt_maker/1.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/post_retrieve_node_line/prompt_maker/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/post_retrieve_node_line/prompt_maker/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/1.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/2.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/query_expansion/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/pre_retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/hybrid_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/hybrid_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/hybrid_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/lexical_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/lexical_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/lexical_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/passage_reranker/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/semantic_retrieval/0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/semantic_retrieval/best_0.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/semantic_retrieval/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/2/retrieve_node_line/summary.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/3/config.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/best.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/data/corpus.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/data/qa.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/bm25_porter_stemmer.pkl +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/header.bin +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/chroma/6595d304-5270-4d9f-a267-c191366804ce/length.bin +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/chroma/chroma.sqlite3 +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/resources/vectordb.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/result_project/trial.json +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_contents_nqa.csv +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_project/data/corpus.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_project/data/qa.parquet +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_project/resources/bm25_gpt2.pkl +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_project/resources/bm25_porter_stemmer.pkl +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/sample_project/resources/vectordb.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_chunk.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_milvus.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_mock.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_mock_with_llm.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_parse.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/simple_with_llm.yaml +0 -0
- {autorag-0.3.24 → autorag-0.3.26}/tests/resources/test_bm25_retrieval.pkl +0 -0
autorag-0.3.26/AGENTS.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Legacy AutoRAG contribution guide
|
|
2
|
+
|
|
3
|
+
## Type checking
|
|
4
|
+
|
|
5
|
+
`ty` is required for legacy product code only. Do not run `ty` against
|
|
6
|
+
`legacy/tests`, and do not add test files to the `ty` command or CI scope.
|
|
7
|
+
|
|
8
|
+
Tests are validated with pytest and ruff. Test doubles often intentionally
|
|
9
|
+
implement only the runtime surface needed by a test and are therefore outside
|
|
10
|
+
the legacy product-code typing contract.
|
|
11
|
+
|
|
12
|
+
The current clean product scope is documented in
|
|
13
|
+
`legacy/docs/source/ty.md`. Extend that scope with product modules as they are
|
|
14
|
+
made clean; keep tests excluded.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: AutoRAG
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.26
|
|
4
4
|
Summary: Automatically Evaluate RAG pipelines with your own data. Find optimal structure for new RAG product.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Marker-Inc-Korea/AutoRAG
|
|
6
6
|
Author-email: Marker-Inc <vkehfdl1@gmail.com>
|
|
@@ -229,10 +229,10 @@ Requires-Dist: evaluate>=0.4.4
|
|
|
229
229
|
Requires-Dist: fastapi>=0.115.13
|
|
230
230
|
Requires-Dist: fastparquet>=2024.11.0
|
|
231
231
|
Requires-Dist: gradio>=6.15.0
|
|
232
|
-
Requires-Dist: grpcio-health-checking<1.
|
|
233
|
-
Requires-Dist: grpcio-status<1.
|
|
234
|
-
Requires-Dist: grpcio-tools<1.
|
|
235
|
-
Requires-Dist: grpcio<1.
|
|
232
|
+
Requires-Dist: grpcio-health-checking<1.85.0,>=1.66.2
|
|
233
|
+
Requires-Dist: grpcio-status<1.85.0,>=1.66.2
|
|
234
|
+
Requires-Dist: grpcio-tools<1.85.0,>=1.66.2
|
|
235
|
+
Requires-Dist: grpcio<1.85.0,>=1.66.2
|
|
236
236
|
Requires-Dist: ipykernel>=6.29.5
|
|
237
237
|
Requires-Dist: ipywidgets-bokeh>=1.6.0
|
|
238
238
|
Requires-Dist: ipywidgets>=8.1.7
|
|
@@ -251,6 +251,7 @@ Requires-Dist: llama-index-llms-openai>=0.4.7
|
|
|
251
251
|
Requires-Dist: llama-index-readers-file>=0.4.9
|
|
252
252
|
Requires-Dist: llama-index-retrievers-bm25>=0.5.2
|
|
253
253
|
Requires-Dist: llama-index>=0.12.42
|
|
254
|
+
Requires-Dist: llama-parse>=0.6.21
|
|
254
255
|
Requires-Dist: mixedbread-ai>=2.2.6
|
|
255
256
|
Requires-Dist: numpy>=2.2.6
|
|
256
257
|
Requires-Dist: openai>=2.8.0
|
|
@@ -259,7 +260,7 @@ Requires-Dist: panel>=1.7.1
|
|
|
259
260
|
Requires-Dist: pinecone[grpc]
|
|
260
261
|
Requires-Dist: pyarrow>=23.0.1
|
|
261
262
|
Requires-Dist: pydantic>=2.9.2
|
|
262
|
-
Requires-Dist: pymilvus<
|
|
263
|
+
Requires-Dist: pymilvus<4,>=2.6.0b0
|
|
263
264
|
Requires-Dist: pyngrok>=7.2.11
|
|
264
265
|
Requires-Dist: pyyaml>=6.0.2
|
|
265
266
|
Requires-Dist: qdrant-client>=1.12.1
|
|
@@ -300,7 +301,8 @@ Requires-Dist: sudachipy>=0.6.8; extra == 'all'
|
|
|
300
301
|
Requires-Dist: torch>=2.7.1; extra == 'all'
|
|
301
302
|
Requires-Dist: transformers>=4.51.3; extra == 'all'
|
|
302
303
|
Requires-Dist: unstructured[pdf]>=0.17.2; extra == 'all'
|
|
303
|
-
Requires-Dist: vllm
|
|
304
|
+
Requires-Dist: vllm<0.30.0,>=0.11.0; extra == 'all'
|
|
305
|
+
Requires-Dist: xgrammar<0.3.0,>=0.1.32; extra == 'all'
|
|
304
306
|
Provides-Extra: gpu
|
|
305
307
|
Requires-Dist: bert-score>=0.3.13; extra == 'gpu'
|
|
306
308
|
Requires-Dist: flagembedding>=1.2.11; extra == 'gpu'
|
|
@@ -314,7 +316,7 @@ Requires-Dist: sentence-transformers>=4.1.0; extra == 'gpu'
|
|
|
314
316
|
Requires-Dist: sentencepiece>=0.2.0; extra == 'gpu'
|
|
315
317
|
Requires-Dist: torch>=2.7.1; extra == 'gpu'
|
|
316
318
|
Requires-Dist: transformers>=4.51.3; extra == 'gpu'
|
|
317
|
-
Requires-Dist:
|
|
319
|
+
Requires-Dist: xgrammar<0.3.0,>=0.1.32; extra == 'gpu'
|
|
318
320
|
Provides-Extra: ja
|
|
319
321
|
Requires-Dist: sudachidict-core; extra == 'ja'
|
|
320
322
|
Requires-Dist: sudachipy>=0.6.8; extra == 'ja'
|
|
@@ -329,6 +331,8 @@ Requires-Dist: pdfplumber>=0.11.7; extra == 'parse'
|
|
|
329
331
|
Requires-Dist: pymupdf>=1.26.1; extra == 'parse'
|
|
330
332
|
Requires-Dist: pypdf2>=3.0.1; extra == 'parse'
|
|
331
333
|
Requires-Dist: unstructured[pdf]>=0.17.2; extra == 'parse'
|
|
334
|
+
Provides-Extra: vllm
|
|
335
|
+
Requires-Dist: vllm<0.30.0,>=0.11.0; extra == 'vllm'
|
|
332
336
|
Description-Content-Type: text/markdown
|
|
333
337
|
|
|
334
338
|
# AutoRAG (Legacy)
|
|
@@ -31,6 +31,7 @@ def langchain_chunk(
|
|
|
31
31
|
:param metadata_list: The list of dict of metadata from the parsed result
|
|
32
32
|
:return: tuple of lists containing the chunked doc_id, contents, path, start_idx, end_idx and metadata
|
|
33
33
|
"""
|
|
34
|
+
metadata_list = metadata_list or [{} for _ in texts]
|
|
34
35
|
results = [
|
|
35
36
|
langchain_chunk_pure(text, chunker, file_name_language, meta)
|
|
36
37
|
for text, meta in zip(texts, metadata_list)
|
|
@@ -50,7 +51,9 @@ def langchain_chunk_pure(
|
|
|
50
51
|
_metadata: Optional[Dict[str, str]] = None,
|
|
51
52
|
):
|
|
52
53
|
# chunk
|
|
53
|
-
chunk_results = chunker.create_documents(
|
|
54
|
+
chunk_results = chunker.create_documents(
|
|
55
|
+
[text], metadatas=[_metadata or {}]
|
|
56
|
+
)
|
|
54
57
|
|
|
55
58
|
# make doc_id
|
|
56
59
|
doc_id = list(str(uuid.uuid4()) for _ in range(len(chunk_results)))
|
|
@@ -37,6 +37,7 @@ def llama_index_chunk(
|
|
|
37
37
|
:param batch: The batch size for chunk texts. Default is 8
|
|
38
38
|
:return: tuple of lists containing the chunked doc_id, contents, path, start_idx, end_idx and metadata
|
|
39
39
|
"""
|
|
40
|
+
metadata_list = metadata_list or [{} for _ in texts]
|
|
40
41
|
tasks = [
|
|
41
42
|
llama_index_chunk_pure(text, chunker, file_name_language, meta)
|
|
42
43
|
for text, meta in zip(texts, metadata_list)
|
|
@@ -58,7 +59,7 @@ async def llama_index_chunk_pure(
|
|
|
58
59
|
_metadata: Optional[Dict[str, str]] = None,
|
|
59
60
|
):
|
|
60
61
|
# set document
|
|
61
|
-
document = [Document(text=text, metadata=_metadata)]
|
|
62
|
+
document = [Document(text=text, metadata=_metadata or {})]
|
|
62
63
|
|
|
63
64
|
# chunk document
|
|
64
65
|
chunk_results = await chunker.aget_nodes_from_documents(documents=document)
|
|
@@ -72,7 +73,7 @@ async def llama_index_chunk_pure(
|
|
|
72
73
|
# make contents and start_end_idx
|
|
73
74
|
if file_name_language:
|
|
74
75
|
chunked_file_names = list(map(lambda x: os.path.basename(x), path_lst))
|
|
75
|
-
chunked_texts = list(map(lambda x: x.
|
|
76
|
+
chunked_texts = list(map(lambda x: x.get_content(), chunk_results))
|
|
76
77
|
start_end_idx = list(
|
|
77
78
|
map(
|
|
78
79
|
lambda x: get_start_end_idx(text, x),
|
|
@@ -81,7 +82,7 @@ async def llama_index_chunk_pure(
|
|
|
81
82
|
)
|
|
82
83
|
contents = add_file_name(file_name_language, chunked_file_names, chunked_texts)
|
|
83
84
|
else:
|
|
84
|
-
contents = list(map(lambda x: x.
|
|
85
|
+
contents = list(map(lambda x: x.get_content(), chunk_results))
|
|
85
86
|
start_end_idx = list(map(lambda x: get_start_end_idx(text, x), contents))
|
|
86
87
|
|
|
87
88
|
metadata = list(
|
|
@@ -48,6 +48,8 @@ def parser_node(func):
|
|
|
48
48
|
)
|
|
49
49
|
|
|
50
50
|
if func.__name__ == "langchain_parse":
|
|
51
|
+
if parse_method is None:
|
|
52
|
+
raise ValueError("parse_method is required for langchain_parse")
|
|
51
53
|
parse_method = parse_method.lower()
|
|
52
54
|
if parse_method == "directory":
|
|
53
55
|
path_split_list = data_path_glob.split("/")
|
|
@@ -2,7 +2,7 @@ import base64
|
|
|
2
2
|
import itertools
|
|
3
3
|
import json
|
|
4
4
|
import os
|
|
5
|
-
from typing import List, Optional, Tuple
|
|
5
|
+
from typing import List, Optional, Tuple, TypedDict
|
|
6
6
|
|
|
7
7
|
import aiohttp
|
|
8
8
|
import fitz # PyMuPDF
|
|
@@ -11,6 +11,12 @@ from autorag.data.parse.base import parser_node
|
|
|
11
11
|
from autorag.utils.util import process_batch, get_event_loop
|
|
12
12
|
|
|
13
13
|
|
|
14
|
+
class TableCell(TypedDict):
|
|
15
|
+
text: str
|
|
16
|
+
rowSpan: int
|
|
17
|
+
colSpan: int
|
|
18
|
+
|
|
19
|
+
|
|
14
20
|
@parser_node
|
|
15
21
|
def clova_ocr(
|
|
16
22
|
data_path_list: List[str],
|
|
@@ -152,7 +158,9 @@ def json_to_html_table(json_data):
|
|
|
152
158
|
max_row = max(cell["rowIndex"] + cell["rowSpan"] for cell in json_data)
|
|
153
159
|
max_col = max(cell["columnIndex"] + cell["columnSpan"] for cell in json_data)
|
|
154
160
|
# Create a 2D array to keep track of merged cells
|
|
155
|
-
table
|
|
161
|
+
table: list[list[TableCell | None | str]] = [
|
|
162
|
+
["" for _ in range(max_col)] for _ in range(max_row)
|
|
163
|
+
]
|
|
156
164
|
# Fill the table with cell data
|
|
157
165
|
for cell in json_data:
|
|
158
166
|
row = cell["rowIndex"]
|
|
@@ -182,6 +190,8 @@ def json_to_html_table(json_data):
|
|
|
182
190
|
if cell == "":
|
|
183
191
|
html += " <td></td>\n"
|
|
184
192
|
else:
|
|
193
|
+
if not isinstance(cell, dict):
|
|
194
|
+
raise TypeError(f"Unexpected table cell value: {cell!r}")
|
|
185
195
|
row_span_attr = (
|
|
186
196
|
f' rowspan="{cell["rowSpan"]}"' if cell["rowSpan"] > 1 else ""
|
|
187
197
|
)
|
|
@@ -151,6 +151,9 @@ class Evaluator:
|
|
|
151
151
|
)
|
|
152
152
|
yaml_dict = load_yaml_config(yaml_path)
|
|
153
153
|
vectordb = yaml_dict.get("vectordb", [])
|
|
154
|
+
for vectordb_config in vectordb:
|
|
155
|
+
if "path" in vectordb_config:
|
|
156
|
+
vectordb_config["path"] = os.path.abspath(vectordb_config["path"])
|
|
154
157
|
|
|
155
158
|
vectordb_config_path = os.path.join(
|
|
156
159
|
self.project_dir, "resources", "vectordb.yaml"
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"""Helpers for truncating chat prompts without changing their message roles."""
|
|
2
|
+
|
|
3
|
+
from typing import Callable, Dict, List, Sequence, TypeVar, Union
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
Token = TypeVar("Token")
|
|
7
|
+
Encode = Callable[[str], Sequence[Token]]
|
|
8
|
+
Decode = Callable[[Sequence[Token]], str]
|
|
9
|
+
Prompt = Union[str, List[Dict]]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def messages_to_string(messages: List[Dict[str, str]]) -> str:
|
|
13
|
+
"""Render messages only for token counting, never for model input."""
|
|
14
|
+
formatted_parts = [
|
|
15
|
+
f"<|im_start|>{message['role']}\n{message['content']}<|im_end|>"
|
|
16
|
+
for message in messages
|
|
17
|
+
]
|
|
18
|
+
formatted_parts.append("<|im_start|>assistant")
|
|
19
|
+
return "\n".join(formatted_parts)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def count_message_tokens(messages: List[Dict], encode: Encode) -> int:
|
|
23
|
+
"""Count the tokenized representation of a chat prompt."""
|
|
24
|
+
return len(encode(messages_to_string(messages)))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def truncate_messages_by_token(
|
|
28
|
+
messages: List[Dict], encode: Encode, decode: Decode, max_token_size: int
|
|
29
|
+
) -> List[Dict]:
|
|
30
|
+
"""Fit a chat prompt in a token budget while preserving message structure."""
|
|
31
|
+
truncated_messages = [dict(message) for message in messages]
|
|
32
|
+
if count_message_tokens(truncated_messages, encode) <= max_token_size:
|
|
33
|
+
return truncated_messages
|
|
34
|
+
|
|
35
|
+
result = [{**message, "content": ""} for message in truncated_messages]
|
|
36
|
+
if count_message_tokens(result, encode) > max_token_size:
|
|
37
|
+
return result
|
|
38
|
+
|
|
39
|
+
for index, message in enumerate(truncated_messages):
|
|
40
|
+
content_tokens = encode(message.get("content", ""))
|
|
41
|
+
low, high = 0, len(content_tokens)
|
|
42
|
+
best_content = ""
|
|
43
|
+
while low <= high:
|
|
44
|
+
mid = (low + high) // 2
|
|
45
|
+
candidate = [dict(item) for item in result]
|
|
46
|
+
candidate[index]["content"] = decode(content_tokens[:mid])
|
|
47
|
+
if count_message_tokens(candidate, encode) <= max_token_size:
|
|
48
|
+
best_content = candidate[index]["content"]
|
|
49
|
+
low = mid + 1
|
|
50
|
+
else:
|
|
51
|
+
high = mid - 1
|
|
52
|
+
|
|
53
|
+
result[index]["content"] = best_content
|
|
54
|
+
|
|
55
|
+
return result
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def truncate_prompt_by_token(
|
|
59
|
+
prompt: Prompt, encode: Encode, decode: Decode, max_token_size: int
|
|
60
|
+
) -> Prompt:
|
|
61
|
+
"""Truncate text or chat prompts while retaining a chat prompt's roles."""
|
|
62
|
+
if isinstance(prompt, list):
|
|
63
|
+
return truncate_messages_by_token(prompt, encode, decode, max_token_size)
|
|
64
|
+
tokens = encode(prompt)
|
|
65
|
+
return decode(tokens[:max_token_size])
|
|
@@ -55,7 +55,12 @@ class LlamaIndexLLM(BaseGenerator):
|
|
|
55
55
|
"`model` or `model_name` parameter must be provided for using huggingfacellm."
|
|
56
56
|
)
|
|
57
57
|
kwargs["tokenizer_name"] = kwargs["model_name"]
|
|
58
|
-
|
|
58
|
+
llm_params = pop_params(llm_class.__init__, kwargs)
|
|
59
|
+
model_fields = getattr(llm_class, "model_fields", {})
|
|
60
|
+
for key in list(kwargs.keys()):
|
|
61
|
+
if key in model_fields:
|
|
62
|
+
llm_params[key] = kwargs.pop(key)
|
|
63
|
+
self.llm_instance: BaseLLM = llm_class(**llm_params)
|
|
59
64
|
|
|
60
65
|
def __del__(self):
|
|
61
66
|
super().__del__()
|
|
@@ -8,6 +8,11 @@ from openai import AsyncOpenAI
|
|
|
8
8
|
from tiktoken import Encoding
|
|
9
9
|
|
|
10
10
|
from autorag.nodes.generator.base import BaseGenerator
|
|
11
|
+
from autorag.nodes.generator.chat import (
|
|
12
|
+
count_message_tokens as count_message_tokens_with_encoder,
|
|
13
|
+
messages_to_string as render_messages_to_string,
|
|
14
|
+
truncate_prompt_by_token,
|
|
15
|
+
)
|
|
11
16
|
from autorag.utils.util import (
|
|
12
17
|
get_event_loop,
|
|
13
18
|
process_batch,
|
|
@@ -186,63 +191,34 @@ class MiniMaxLLM(BaseGenerator):
|
|
|
186
191
|
def truncate_by_token(
|
|
187
192
|
prompt: Union[str, List[Dict]], tokenizer: Encoding, max_token_size: int
|
|
188
193
|
) -> Union[str, List[Dict]]:
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
194
|
+
return truncate_prompt_by_token(
|
|
195
|
+
prompt,
|
|
196
|
+
lambda text: tokenizer.encode(text, allowed_special="all"),
|
|
197
|
+
tokenizer.decode,
|
|
198
|
+
max_token_size,
|
|
199
|
+
)
|
|
193
200
|
|
|
194
201
|
|
|
195
202
|
def truncate_messages_by_token(
|
|
196
203
|
messages: List[Dict], tokenizer: Encoding, max_token_size: int
|
|
197
204
|
) -> List[Dict]:
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
candidate = result + [message]
|
|
205
|
-
if count_message_tokens(candidate, tokenizer) <= max_token_size:
|
|
206
|
-
result.append(message)
|
|
207
|
-
continue
|
|
208
|
-
|
|
209
|
-
content_tokens = tokenizer.encode(
|
|
210
|
-
message.get("content", ""), allowed_special="all"
|
|
211
|
-
)
|
|
212
|
-
low, high = 0, len(content_tokens)
|
|
213
|
-
best_content = ""
|
|
214
|
-
while low <= high:
|
|
215
|
-
mid = (low + high) // 2
|
|
216
|
-
truncated_message = {
|
|
217
|
-
**message,
|
|
218
|
-
"content": tokenizer.decode(content_tokens[:mid]),
|
|
219
|
-
}
|
|
220
|
-
candidate = result + [truncated_message]
|
|
221
|
-
if count_message_tokens(candidate, tokenizer) <= max_token_size:
|
|
222
|
-
best_content = truncated_message["content"]
|
|
223
|
-
low = mid + 1
|
|
224
|
-
else:
|
|
225
|
-
high = mid - 1
|
|
226
|
-
|
|
227
|
-
if best_content or not result:
|
|
228
|
-
result.append({**message, "content": best_content})
|
|
229
|
-
break
|
|
230
|
-
|
|
231
|
-
return result
|
|
205
|
+
return truncate_prompt_by_token(
|
|
206
|
+
messages,
|
|
207
|
+
lambda text: tokenizer.encode(text, allowed_special="all"),
|
|
208
|
+
tokenizer.decode,
|
|
209
|
+
max_token_size,
|
|
210
|
+
)
|
|
232
211
|
|
|
233
212
|
|
|
234
213
|
def count_message_tokens(messages: List[Dict], tokenizer: Encoding) -> int:
|
|
235
|
-
return
|
|
214
|
+
return count_message_tokens_with_encoder(
|
|
215
|
+
messages, lambda text: tokenizer.encode(text, allowed_special="all")
|
|
216
|
+
)
|
|
236
217
|
|
|
237
218
|
|
|
238
219
|
def messages_to_string(messages: List[Dict[str, str]]) -> str:
|
|
239
|
-
"""Convert chat messages to string
|
|
240
|
-
|
|
241
|
-
f"<|im_start|>{message['role']}\n{message['content']}<|im_end|>"
|
|
242
|
-
for message in messages
|
|
243
|
-
]
|
|
244
|
-
formatted_parts.append("<|im_start|>assistant")
|
|
245
|
-
return "\n".join(formatted_parts)
|
|
220
|
+
"""Convert chat messages to a string for token counting compatibility."""
|
|
221
|
+
return render_messages_to_string(messages)
|
|
246
222
|
|
|
247
223
|
|
|
248
224
|
def strip_think_tags(text: str) -> str:
|
|
@@ -8,6 +8,7 @@ from openai import AsyncOpenAI
|
|
|
8
8
|
from tiktoken import Encoding
|
|
9
9
|
|
|
10
10
|
from autorag.nodes.generator.base import BaseGenerator
|
|
11
|
+
from autorag.nodes.generator.chat import messages_to_string, truncate_prompt_by_token
|
|
11
12
|
from autorag.utils.util import (
|
|
12
13
|
get_event_loop,
|
|
13
14
|
process_batch,
|
|
@@ -333,16 +334,9 @@ class OpenAILLM(BaseGenerator):
|
|
|
333
334
|
if not self.llm.startswith("gpt-5"):
|
|
334
335
|
raise ValueError("get_result_gpt_5 is only for gpt-5 models.")
|
|
335
336
|
messages = parse_prompt(prompt)
|
|
336
|
-
instruction = "\n\n".join(
|
|
337
|
-
[msg["content"] for msg in messages if msg["role"] == "system"]
|
|
338
|
-
)
|
|
339
|
-
user_input = "\n\n".join(
|
|
340
|
-
[msg["content"] for msg in messages if msg["role"] == "user"]
|
|
341
|
-
)
|
|
342
337
|
response = await self.client.responses.create(
|
|
343
338
|
model=self.llm,
|
|
344
|
-
|
|
345
|
-
input=user_input,
|
|
339
|
+
input=messages,
|
|
346
340
|
**kwargs,
|
|
347
341
|
)
|
|
348
342
|
answer: str = response.output_text
|
|
@@ -354,21 +348,17 @@ class OpenAILLM(BaseGenerator):
|
|
|
354
348
|
def truncate_by_token(
|
|
355
349
|
prompt: Union[str, List[Dict]], tokenizer: Encoding, max_token_size: int
|
|
356
350
|
):
|
|
357
|
-
|
|
358
|
-
prompt
|
|
359
|
-
|
|
360
|
-
|
|
351
|
+
return truncate_prompt_by_token(
|
|
352
|
+
prompt,
|
|
353
|
+
lambda text: tokenizer.encode(text, allowed_special="all"),
|
|
354
|
+
tokenizer.decode,
|
|
355
|
+
max_token_size,
|
|
356
|
+
)
|
|
361
357
|
|
|
362
358
|
|
|
363
359
|
def tiktoken_messages_to_string(messages: List[Dict[str, str]]) -> str:
|
|
364
|
-
"""Convert chat messages to string
|
|
365
|
-
|
|
366
|
-
f"<|im_start|>{message['role']}\n{message['content']}<|im_end|>"
|
|
367
|
-
for message in messages
|
|
368
|
-
]
|
|
369
|
-
formatted_parts.append("<|im_start|>assistant")
|
|
370
|
-
full_string = "\n".join(formatted_parts)
|
|
371
|
-
return full_string
|
|
360
|
+
"""Convert chat messages to a string for token counting compatibility."""
|
|
361
|
+
return messages_to_string(messages)
|
|
372
362
|
|
|
373
363
|
|
|
374
364
|
def parse_prompt(prompt: Union[str, List[Dict]]) -> List[Dict]:
|
|
@@ -7,6 +7,7 @@ import requests
|
|
|
7
7
|
from asyncio import to_thread
|
|
8
8
|
|
|
9
9
|
from autorag.nodes.generator.base import BaseGenerator
|
|
10
|
+
from autorag.nodes.generator.chat import truncate_prompt_by_token
|
|
10
11
|
from autorag.utils.util import get_event_loop, process_batch, result_to_dataframe
|
|
11
12
|
|
|
12
13
|
logger = logging.getLogger("AutoRAG")
|
|
@@ -84,15 +85,18 @@ class VllmAPI(BaseGenerator):
|
|
|
84
85
|
logprob_result = list(map(lambda x: x[2], results))
|
|
85
86
|
return answer_result, token_result, logprob_result
|
|
86
87
|
|
|
87
|
-
def truncate_by_token(
|
|
88
|
+
def truncate_by_token(
|
|
89
|
+
self, prompt: Union[str, List[Dict]]
|
|
90
|
+
) -> Union[str, List[Dict]]:
|
|
88
91
|
"""
|
|
89
92
|
Function to truncate prompts to fit within the maximum token limit.
|
|
90
93
|
"""
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
return truncate_prompt_by_token(
|
|
95
|
+
prompt,
|
|
96
|
+
lambda text: self.encoding_for_model(text)["tokens"],
|
|
97
|
+
lambda tokens: self.decoding_for_model(list(tokens))["prompt"],
|
|
98
|
+
self.max_model_len,
|
|
99
|
+
)
|
|
96
100
|
|
|
97
101
|
def call_vllm_api(self, prompt: Union[str, List[Dict]], **kwargs) -> dict:
|
|
98
102
|
"""
|
|
@@ -1,14 +1,34 @@
|
|
|
1
1
|
# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved
|
|
2
2
|
|
|
3
3
|
import copy
|
|
4
|
+
from math import ceil
|
|
4
5
|
|
|
5
6
|
from transformers.modeling_outputs import SequenceClassifierOutput
|
|
6
7
|
from transformers.models.t5.modeling_t5 import T5Config, T5PreTrainedModel, T5Stack
|
|
7
|
-
from transformers.utils.model_parallel_utils import assert_device_map, get_device_map
|
|
8
8
|
|
|
9
9
|
from autorag.utils.util import empty_cuda_cache
|
|
10
10
|
|
|
11
11
|
|
|
12
|
+
def assert_device_map(device_map, num_blocks):
|
|
13
|
+
blocks = list(range(num_blocks))
|
|
14
|
+
device_map_blocks = [block for blocks in device_map.values() for block in blocks]
|
|
15
|
+
duplicate_blocks = [block for block in device_map_blocks if device_map_blocks.count(block) > 1]
|
|
16
|
+
missing_blocks = [block for block in blocks if block not in device_map_blocks]
|
|
17
|
+
extra_blocks = [block for block in device_map_blocks if block not in blocks]
|
|
18
|
+
if duplicate_blocks or missing_blocks or extra_blocks:
|
|
19
|
+
raise ValueError("device_map must contain each encoder block exactly once")
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def get_device_map(n_layers, devices):
|
|
23
|
+
layers = list(range(n_layers))
|
|
24
|
+
layers_per_device = int(ceil(n_layers / len(devices)))
|
|
25
|
+
layers_list = [
|
|
26
|
+
layers[index : index + layers_per_device]
|
|
27
|
+
for index in range(0, n_layers, layers_per_device)
|
|
28
|
+
]
|
|
29
|
+
return dict(zip(devices, layers_list))
|
|
30
|
+
|
|
31
|
+
|
|
12
32
|
class EncT5ForSequenceClassification(T5PreTrainedModel):
|
|
13
33
|
_keys_to_ignore_on_load_missing = [
|
|
14
34
|
r"encoder\.embed_tokens\.weight",
|
|
@@ -28,7 +48,8 @@ class EncT5ForSequenceClassification(T5PreTrainedModel):
|
|
|
28
48
|
encoder_config = copy.deepcopy(config)
|
|
29
49
|
encoder_config.use_cache = False
|
|
30
50
|
encoder_config.is_encoder_decoder = False
|
|
31
|
-
self.encoder = T5Stack(encoder_config
|
|
51
|
+
self.encoder = T5Stack(encoder_config)
|
|
52
|
+
self.encoder.embed_tokens = self.shared
|
|
32
53
|
|
|
33
54
|
self.dropout = nn.Dropout(dropout)
|
|
34
55
|
self.classifier = nn.Linear(config.hidden_size, config.num_labels)
|
|
@@ -8,6 +8,7 @@ from autorag.nodes.passagereranker.tart.modeling_enc_t5 import (
|
|
|
8
8
|
EncT5ForSequenceClassification,
|
|
9
9
|
)
|
|
10
10
|
from autorag.nodes.passagereranker.tart.tokenization_enc_t5 import EncT5Tokenizer
|
|
11
|
+
from transformers import T5Config
|
|
11
12
|
from autorag.utils.util import (
|
|
12
13
|
make_batch,
|
|
13
14
|
sort_by_scores,
|
|
@@ -28,7 +29,15 @@ class Tart(BasePassageReranker):
|
|
|
28
29
|
"torch is not installed. Please install torch first to use TART reranker."
|
|
29
30
|
)
|
|
30
31
|
model_name = "facebook/tart-full-flan-t5-xl"
|
|
31
|
-
|
|
32
|
+
config_dict, _ = T5Config.get_config_dict(model_name)
|
|
33
|
+
config_dict["id2label"] = {
|
|
34
|
+
int(key): str(value) for key, value in config_dict["id2label"].items()
|
|
35
|
+
}
|
|
36
|
+
config = T5Config.from_dict(config_dict)
|
|
37
|
+
self.model = EncT5ForSequenceClassification.from_pretrained(
|
|
38
|
+
model_name,
|
|
39
|
+
config=config,
|
|
40
|
+
)
|
|
32
41
|
self.tokenizer = EncT5Tokenizer.from_pretrained(model_name)
|
|
33
42
|
self.device = "cuda" if torch.cuda.is_available() else "cpu"
|
|
34
43
|
self.model = self.model.to(self.device)
|
|
@@ -4,6 +4,7 @@ from autorag.support import get_support_modules
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
def make_generator_callable_param(generator_dict: Optional[Dict]):
|
|
7
|
+
generator_dict = generator_dict or {}
|
|
7
8
|
if "generator_module_type" not in generator_dict.keys():
|
|
8
9
|
generator_dict = {
|
|
9
10
|
"generator_module_type": "llama_index_llm",
|
|
@@ -22,6 +22,12 @@ class Node:
|
|
|
22
22
|
run_node: Callable = field(init=False)
|
|
23
23
|
|
|
24
24
|
def __post_init__(self):
|
|
25
|
+
if self.node_type == "hybrid_retrieval" and isinstance(
|
|
26
|
+
self.node_params.get("top_k"), list
|
|
27
|
+
):
|
|
28
|
+
raise ValueError(
|
|
29
|
+
"hybrid_retrieval top_k must be an integer, not a list."
|
|
30
|
+
)
|
|
25
31
|
self.run_node = get_support_nodes(self.node_type)
|
|
26
32
|
if self.run_node is None:
|
|
27
33
|
raise ValueError(f"Node type {self.node_type} is not supported.")
|
|
@@ -8,7 +8,7 @@ from qdrant_client.models import (
|
|
|
8
8
|
PointIdsList,
|
|
9
9
|
HasIdCondition,
|
|
10
10
|
Filter,
|
|
11
|
-
|
|
11
|
+
QueryRequest,
|
|
12
12
|
)
|
|
13
13
|
|
|
14
14
|
from typing import List, Tuple, Union
|
|
@@ -148,18 +148,18 @@ class Qdrant(BaseVectorStore):
|
|
|
148
148
|
|
|
149
149
|
search_queries = list(
|
|
150
150
|
map(
|
|
151
|
-
lambda x:
|
|
151
|
+
lambda x: QueryRequest(query=x, limit=top_k, with_vector=True),
|
|
152
152
|
query_embeddings,
|
|
153
153
|
)
|
|
154
154
|
)
|
|
155
155
|
|
|
156
|
-
search_result = self.client.
|
|
156
|
+
search_result = self.client.query_batch_points(
|
|
157
157
|
collection_name=self.collection_name, requests=search_queries
|
|
158
158
|
)
|
|
159
159
|
|
|
160
160
|
# Extract IDs and distances
|
|
161
|
-
ids = [[str(hit.id) for hit in result] for result in search_result]
|
|
162
|
-
scores = [[hit.score for hit in result] for result in search_result]
|
|
161
|
+
ids = [[str(hit.id) for hit in result.points] for result in search_result]
|
|
162
|
+
scores = [[hit.score for hit in result.points] for result in search_result]
|
|
163
163
|
|
|
164
164
|
return ids, scores
|
|
165
165
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Legacy AutoRAG type checking
|
|
2
|
+
|
|
3
|
+
Legacy AutoRAG uses `ty` for static type checking. The checks are intentionally
|
|
4
|
+
introduced in small product-code scopes so optional integrations and third-party
|
|
5
|
+
stub limitations do not hide errors in the core modules.
|
|
6
|
+
|
|
7
|
+
`legacy/tests` is intentionally excluded from `ty`. Tests and test doubles are
|
|
8
|
+
validated with pytest and ruff instead; they are not part of the product-code
|
|
9
|
+
typing contract.
|
|
10
|
+
|
|
11
|
+
## Reproducible commands
|
|
12
|
+
|
|
13
|
+
From `legacy/`:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
uv sync --extra ko --extra parse --extra ja
|
|
17
|
+
uv run --locked ty check autorag/data/chunk autorag/data/parse/base.py \
|
|
18
|
+
autorag/data/parse/clova.py autorag/nodes/util.py
|
|
19
|
+
uv run --locked ruff check autorag tests
|
|
20
|
+
uv run --locked pytest -q tests/autorag/data/chunk \
|
|
21
|
+
tests/autorag/data/parse/test_langchain_parse.py \
|
|
22
|
+
tests/autorag/data/parse/test_clova.py
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The focused product-code `ty` scope above is clean and runs in CI. Do not
|
|
26
|
+
replace it with `ty check autorag tests`: tests are intentionally excluded.
|
|
27
|
+
The complete product-code command, `uv run --locked ty check autorag`, remains
|
|
28
|
+
broader than this initial scope because it includes optional integrations and
|
|
29
|
+
third-party library APIs that are being migrated in subsequent issue-sized
|
|
30
|
+
changes.
|