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("What is HNSW?")
# 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="data.pdf",
document_loaders=[
{"type": "pymupdf"},
{"type": "unstructured"}
],
chunking_strategies=[{
"type": "RecursiveCharacterTextSplitter",
"chunker_kwargs": {"separators": ["\n\n", "\n", " ", ""]}
}],
chunk_size={"min": 500, "max": 2000, "stepsize": 500},
embedding_models=[{
"type": "openai",
"model_kwargs": {"model": "text-embedding-3-large"}
}]
)
# Configure retrieval
retrieval_config = RetrievalOptionsConfig(
retrievers=[
{
"type": "vector_similarity",
"retriever_k": [20],
"weight": 0.5
},
{
"type": "bm25",
"retriever_k": [20],
"weight": 0.5
}
],
rerankers=[{
"type": "BAAI/bge-reranker-base"
}],
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("What is RAG?")
answer = results.generation.invoke("What is RAG?")"><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 & 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