WeaviateEx.GRPC.Generative (WeaviateEx v0.7.4)
View SourceBuilds gRPC GenerativeSearch messages from WeaviateEx generative config.
This module converts the user-friendly generative config into the protobuf format expected by Weaviate's gRPC API.
Examples
# Simple single prompt
config = %{single_prompt: "Summarize this article"}
generative = Generative.build(config)
# With provider configuration
config = %{
single_prompt: "Summarize",
provider: :openai,
model: "gpt-4",
temperature: 0.7
}
generative = Generative.build_with_provider(config)
Summary
Functions
Builds a gRPC GenerativeSearch message from a simple config map.
Builds a gRPC GenerativeSearch message with provider configuration.
Extracts single generative results from a list of search results.
Parses a generative result from a gRPC search reply.
Types
@type config() :: %{ optional(:single_prompt) => String.t(), optional(:grouped_task) => String.t(), optional(:grouped_properties) => [String.t()], optional(:provider) => atom(), optional(:model) => String.t(), optional(:temperature) => float(), optional(:max_tokens) => integer(), optional(:top_p) => float(), optional(:top_k) => integer(), optional(:debug) => boolean() }
Functions
Builds a gRPC GenerativeSearch message from a simple config map.
Returns nil for nil input. This is the basic version that uses
deprecated fields for backward compatibility.
Builds a gRPC GenerativeSearch message with provider configuration.
This version uses the new Single/Grouped message structure with provider-specific queries.
Extracts single generative results from a list of search results.
@spec parse_generative_result(map()) :: generative_result()
Parses a generative result from a gRPC search reply.