Current section

Files

Jump to
oapi_open_ai lib schemas vector_store search_request.ex
Raw

lib/schemas/vector_store/search_request.ex

defmodule OpenAi.VectorStore.SearchRequest do
@moduledoc """
Provides struct and type for a VectorStore.SearchRequest
"""
@type t :: %__MODULE__{
filters: OpenAi.Tool.Filter.Comparison.t() | OpenAi.Tool.Filter.Compound.t() | nil,
max_num_results: integer | nil,
query: String.t() | [String.t()],
ranking_options: OpenAi.VectorStore.SearchRequest.RankingOptions.t() | nil,
rewrite_query: boolean | nil
}
defstruct [:filters, :max_num_results, :query, :ranking_options, :rewrite_query]
@doc false
@spec __fields__(atom) :: keyword
def __fields__(type \\ :t)
def __fields__(:t) do
[
filters: {:union, [{OpenAi.Tool.Filter.Comparison, :t}, {OpenAi.Tool.Filter.Compound, :t}]},
max_num_results: :integer,
query: {:union, [{:string, :generic}, [string: :generic]]},
ranking_options: {OpenAi.VectorStore.SearchRequest.RankingOptions, :t},
rewrite_query: :boolean
]
end
end