tag:github.com,2008:https://github.com/KruxAI/ragbuilder/releases Release notes from ragbuilder 2025-05-20T03:53:01Z tag:github.com,2008:Repository/819274200/v0.1.6 2025-05-20T03:53:01Z v0.1.6 <p>Release 0.1.6</p> aravind10x tag:github.com,2008:Repository/819274200/v0.1.5 2025-01-07T09:02:25Z v0.1.5 <p>Release version 0.1.5</p> aravind10x tag:github.com,2008:Repository/819274200/v0.1.4 2024-12-31T18:11:26Z v0.1.4 <h2>What's Changed</h2> <p>New SDK that allows for module-wise optimization.</p> <p>Basic Usage:</p> <div class="highlight highlight-source-python notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="from ragbuilder import RAGBuilder # Initialize and optimize builder = RAGBuilder.from_source_with_defaults(input_source='data.pdf') results = builder.optimize() # Run a query through the complete pipeline response = results.invoke(&quot;What is HNSW?&quot;) # View optimization summary print(results.summary())"><pre><span class="pl-k">from</span> <span class="pl-s1">ragbuilder</span> <span class="pl-k">import</span> <span class="pl-v">RAGBuilder</span> <span class="pl-c"># Initialize and optimize</span> <span class="pl-s1">builder</span> <span class="pl-c1">=</span> <span class="pl-v">RAGBuilder</span>.<span class="pl-c1">from_source_with_defaults</span>(<span class="pl-s1">input_source</span><span class="pl-c1">=</span><span class="pl-s">'data.pdf'</span>) <span class="pl-s1">results</span> <span class="pl-c1">=</span> <span class="pl-s1">builder</span>.<span class="pl-c1">optimize</span>() <span class="pl-c"># Run a query through the complete pipeline</span> <span class="pl-s1">response</span> <span class="pl-c1">=</span> <span class="pl-s1">results</span>.<span class="pl-c1">invoke</span>(<span class="pl-s">"What is HNSW?"</span>) <span class="pl-c"># View optimization summary</span> <span class="pl-en">print</span>(<span class="pl-s1">results</span>.<span class="pl-c1">summary</span>())</pre></div> <p>Advanced Configuration<br> For fine-grained control, you can customize every aspect:</p> <div class="highlight highlight-source-python notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="from ragbuilder.config import ( DataIngestOptionsConfig, RetrievalOptionsConfig, GenerationOptionsConfig ) # Configure data ingestion data_ingest_config = DataIngestOptionsConfig( input_source=&quot;data.pdf&quot;, document_loaders=[ {&quot;type&quot;: &quot;pymupdf&quot;}, {&quot;type&quot;: &quot;unstructured&quot;} ], chunking_strategies=[{ &quot;type&quot;: &quot;RecursiveCharacterTextSplitter&quot;, &quot;chunker_kwargs&quot;: {&quot;separators&quot;: [&quot;\n\n&quot;, &quot;\n&quot;, &quot; &quot;, &quot;&quot;]} }], chunk_size={&quot;min&quot;: 500, &quot;max&quot;: 2000, &quot;stepsize&quot;: 500}, embedding_models=[{ &quot;type&quot;: &quot;openai&quot;, &quot;model_kwargs&quot;: {&quot;model&quot;: &quot;text-embedding-3-large&quot;} }] ) # Configure retrieval retrieval_config = RetrievalOptionsConfig( retrievers=[ { &quot;type&quot;: &quot;vector_similarity&quot;, &quot;retriever_k&quot;: [20], &quot;weight&quot;: 0.5 }, { &quot;type&quot;: &quot;bm25&quot;, &quot;retriever_k&quot;: [20], &quot;weight&quot;: 0.5 } ], rerankers=[{ &quot;type&quot;: &quot;BAAI/bge-reranker-base&quot; }], top_k=[3, 5] ) # Initialize with custom configs builder = RAGBuilder( data_ingest_config=data_ingest_config, retrieval_config=retrieval_config ) # Access individual components vectorstore = results.data_ingest.get_vectorstore() docs = results.retrieval.invoke(&quot;What is RAG?&quot;) answer = results.generation.invoke(&quot;What is RAG?&quot;)"><pre><span class="pl-k">from</span> <span class="pl-s1">ragbuilder</span>.<span class="pl-s1">config</span> <span class="pl-k">import</span> ( <span class="pl-v">DataIngestOptionsConfig</span>, <span class="pl-v">RetrievalOptionsConfig</span>, <span class="pl-v">GenerationOptionsConfig</span> ) <span class="pl-c"># Configure data ingestion</span> <span class="pl-s1">data_ingest_config</span> <span class="pl-c1">=</span> <span class="pl-en">DataIngestOptionsConfig</span>( <span class="pl-s1">input_source</span><span class="pl-c1">=</span><span class="pl-s">"data.pdf"</span>, <span class="pl-s1">document_loaders</span><span class="pl-c1">=</span>[ {<span class="pl-s">"type"</span>: <span class="pl-s">"pymupdf"</span>}, {<span class="pl-s">"type"</span>: <span class="pl-s">"unstructured"</span>} ], <span class="pl-s1">chunking_strategies</span><span class="pl-c1">=</span>[{ <span class="pl-s">"type"</span>: <span class="pl-s">"RecursiveCharacterTextSplitter"</span>, <span class="pl-s">"chunker_kwargs"</span>: {<span class="pl-s">"separators"</span>: [<span class="pl-s">"<span class="pl-cce">\n</span><span class="pl-cce">\n</span>"</span>, <span class="pl-s">"<span class="pl-cce">\n</span>"</span>, <span class="pl-s">" "</span>, <span class="pl-s">""</span>]} }], <span class="pl-s1">chunk_size</span><span class="pl-c1">=</span>{<span class="pl-s">"min"</span>: <span class="pl-c1">500</span>, <span class="pl-s">"max"</span>: <span class="pl-c1">2000</span>, <span class="pl-s">"stepsize"</span>: <span class="pl-c1">500</span>}, <span class="pl-s1">embedding_models</span><span class="pl-c1">=</span>[{ <span class="pl-s">"type"</span>: <span class="pl-s">"openai"</span>, <span class="pl-s">"model_kwargs"</span>: {<span class="pl-s">"model"</span>: <span class="pl-s">"text-embedding-3-large"</span>} }] ) <span class="pl-c"># Configure retrieval</span> <span class="pl-s1">retrieval_config</span> <span class="pl-c1">=</span> <span class="pl-en">RetrievalOptionsConfig</span>( <span class="pl-s1">retrievers</span><span class="pl-c1">=</span>[ { <span class="pl-s">"type"</span>: <span class="pl-s">"vector_similarity"</span>, <span class="pl-s">"retriever_k"</span>: [<span class="pl-c1">20</span>], <span class="pl-s">"weight"</span>: <span class="pl-c1">0.5</span> }, { <span class="pl-s">"type"</span>: <span class="pl-s">"bm25"</span>, <span class="pl-s">"retriever_k"</span>: [<span class="pl-c1">20</span>], <span class="pl-s">"weight"</span>: <span class="pl-c1">0.5</span> } ], <span class="pl-s1">rerankers</span><span class="pl-c1">=</span>[{ <span class="pl-s">"type"</span>: <span class="pl-s">"BAAI/bge-reranker-base"</span> }], <span class="pl-s1">top_k</span><span class="pl-c1">=</span>[<span class="pl-c1">3</span>, <span class="pl-c1">5</span>] ) <span class="pl-c"># Initialize with custom configs</span> <span class="pl-s1">builder</span> <span class="pl-c1">=</span> <span class="pl-en">RAGBuilder</span>( <span class="pl-s1">data_ingest_config</span><span class="pl-c1">=</span><span class="pl-s1">data_ingest_config</span>, <span class="pl-s1">retrieval_config</span><span class="pl-c1">=</span><span class="pl-s1">retrieval_config</span> ) <span class="pl-c"># Access individual components</span> <span class="pl-s1">vectorstore</span> <span class="pl-c1">=</span> <span class="pl-s1">results</span>.<span class="pl-c1">data_ingest</span>.<span class="pl-c1">get_vectorstore</span>() <span class="pl-s1">docs</span> <span class="pl-c1">=</span> <span class="pl-s1">results</span>.<span class="pl-c1">retrieval</span>.<span class="pl-c1">invoke</span>(<span class="pl-s">"What is RAG?"</span>) <span class="pl-s1">answer</span> <span class="pl-c1">=</span> <span class="pl-s1">results</span>.<span class="pl-c1">generation</span>.<span class="pl-c1">invoke</span>(<span class="pl-s">"What is RAG?"</span>)</pre></div> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/KruxAI/ragbuilder/compare/0.0.22...v0.1.4"><tt>0.0.22...v0.1.4</tt></a></p> aravind10x tag:github.com,2008:Repository/819274200/v0.1.3 2024-12-28T15:43:18Z v0.1.3 <p>Release version 0.1.3</p> aravind10x tag:github.com,2008:Repository/819274200/v0.1.1 2024-12-26T18:38:48Z v0.1.1 <p>repr fix</p> aravind10x tag:github.com,2008:Repository/819274200/v0.1.0 2024-12-16T19:47:03Z v0.1.0: End to end working v0 <ul> <li>Save retriever pipeline.retriever_chain as the optimized_retriever instead of the pipeline itself.</li> <li>Deprecated lazy_load2</li> <li>Fixed <code>study_name</code> default setting in <code>OptimizationConfig</code></li> </ul> aravind10x tag:github.com,2008:Repository/819274200/0.0.22 2024-10-25T02:37:12Z 0.0.22 <h2>What's Changed</h2> <ul> <li>Enhance <code>DataProcessor</code> Class for Error Handling, Efficiency, and Logging Improvements by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Mefisto04/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Mefisto04">@Mefisto04</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2598361090" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/72" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/72/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/72">#72</a></li> <li>Bug fixes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aravind10x/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aravind10x">@aravind10x</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2609431552" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/77" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/77/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/77">#77</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Akhsuna07/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Akhsuna07">@Akhsuna07</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2603099996" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/75" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/75/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/75">#75</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Mefisto04/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Mefisto04">@Mefisto04</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2598361090" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/72" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/72/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/72">#72</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/KruxAI/ragbuilder/compare/0.0.21...0.0.22"><tt>0.0.21...0.0.22</tt></a></p> ashwinzyx tag:github.com,2008:Repository/819274200/0.0.21 2024-10-19T12:45:22Z 0.0.21 <h2>What's Changed</h2> <ul> <li>VectorDB Support: Qdrant &amp; Weaviate by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ashwinzyx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ashwinzyx">@ashwinzyx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2598856208" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/73" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/73/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/73">#73</a></li> <li>Docker-Brew fix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ashwinzyx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ashwinzyx">@ashwinzyx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2598884901" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/74" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/74/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/74">#74</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/KruxAI/ragbuilder/compare/0.0.20...0.0.21"><tt>0.0.20...0.0.21</tt></a></p> ashwinzyx tag:github.com,2008:Repository/819274200/0.0.20 2024-10-15T08:46:49Z 0.0.20 <h2>What's Changed</h2> <ul> <li>Add chat playground by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aravind10x/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aravind10x">@aravind10x</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2582112079" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/64" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/64/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/64">#64</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eltociear/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eltociear">@eltociear</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2541026686" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/48" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/48/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/48">#48</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FarukhS52/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FarukhS52">@FarukhS52</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2577903659" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/60" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/60/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/60">#60</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Ruhi14/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Ruhi14">@Ruhi14</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2578977233" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/61" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/61/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/61">#61</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/KruxAI/ragbuilder/compare/0.0.18...0.0.20"><tt>0.0.18...0.0.20</tt></a></p> ashwinzyx tag:github.com,2008:Repository/819274200/0.0.18 2024-10-06T05:49:27Z 0.0.18 <h2>What's Changed</h2> <ul> <li>Colbert Retriever by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ashwinzyx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ashwinzyx">@ashwinzyx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2554357625" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/53" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/53/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/53">#53</a></li> <li>Change re-ranker selection to 1 at a time by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aravind10x/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aravind10x">@aravind10x</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2555486816" data-permission-text="Title is private" data-url="https://github.com/KruxAI/ragbuilder/issues/54" data-hovercard-type="pull_request" data-hovercard-url="/KruxAI/ragbuilder/pull/54/hovercard" href="https://github.com/KruxAI/ragbuilder/pull/54">#54</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/KruxAI/ragbuilder/compare/0.0.17...0.0.18"><tt>0.0.17...0.0.18</tt></a></p> aravind10x