mirror of
https://github.com/run-llama/semtools.git
synced 2026-07-21 11:15:24 -04:00
[PR #24] [MERGED] beta workspaces for persistance/performance on large datasets #34
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/run-llama/semtools/pull/24
Author: @logan-markewich
Created: 9/13/2025
Status: ✅ Merged
Merged: 9/13/2025
Merged by: @logan-markewich
Base:
main← Head:logan/beta_workspaces📝 Commits (9)
26b637fadd beta workspace feature2d558ebadd release scripts for workspacescf63a04npm version1ff6927nits306868cfix workflows8538146updatesae1b236clippy54e6db7fix testsaacb998appease the clippy gods📊 Changes
13 files changed (+6974 additions, -595 deletions)
View changed files
📝
.github/workflows/lint.yml(+6 -0)📝
.github/workflows/release.yml(+5 -0)📝
.github/workflows/test.yml(+3 -0)📝
Cargo.lock(+5034 -565)📝
Cargo.toml(+18 -4)➕
cli/workspace.js(+19 -0)📝
package.json(+3 -2)📝
scripts/install.js(+10 -1)📝
src/bin/search.rs(+513 -23)➕
src/bin/workspace.rs(+126 -0)📝
src/lib.rs(+3 -0)➕
src/workspace/mod.rs(+286 -0)➕
src/workspace/store.rs(+948 -0)📄 Description
Fixes https://github.com/run-llama/semtools/issues/16
Adds an initial (beta for now) version of persisted workspaces.
The general idea is something like this
If a workpsace is active,
searchwill automatically back up and persist embeddings into the workspace (if the requested list of documents is larger that the workspace top-k). It does this by generating an averaged document-level embedding and storing it in the vector db.Then at search time, we can select the
doc-top-kdocuments, and do the original line-by-line embedding search from there. For large datasets, this means huge speedups in runtime because after the initial ingestion, subsequent runs will only re-embed the selecteddoc-top-kdocumentsWorkspace help:
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.