Dsxir. DemoStrategy. KNN
(dsxir v0.2.0)
Copy Markdown
Per-call demo resolver: embed the inputs, cosine-search the index, return the top-K examples as demos for this call.
Held on %Dsxir.Program.State{demo_strategy: %KNN{}}. Compiled by
Dsxir.Optimizer.KNNFewShot. Used by Dsxir.Module.Runtime.call/4.
Summary
Functions
Resolve K nearest demos for inputs. Emits [:dsxir, :knn, :resolve] on
success; emits [:dsxir, :knn, :insufficient_entries] when fewer than k
entries are available. Raises the underlying Dsxir.Errors.LM.* on
embedder failure.
Strip credential keys from a config keyword list. Used at serialize time.
Types
@type t() :: %Dsxir.DemoStrategy.KNN{ embed_fields: :all | [atom()], embedder: {module(), keyword()}, embedder_id: String.t(), entries: [Dsxir.DemoStrategy.KNN.Entry.t()], k: pos_integer() }
Functions
@spec resolve(t(), map(), keyword()) :: [Dsxir.Example.t()]
Resolve K nearest demos for inputs. Emits [:dsxir, :knn, :resolve] on
success; emits [:dsxir, :knn, :insufficient_entries] when fewer than k
entries are available. Raises the underlying Dsxir.Errors.LM.* on
embedder failure.
Strip credential keys from a config keyword list. Used at serialize time.