Current section

Files

Jump to
dspex lib snakebridge_generated dspy streaming status_message_provider.ex
Raw

lib/snakebridge_generated/dspy/streaming/status_message_provider.ex

# Generated by SnakeBridge v0.16.0 - DO NOT EDIT MANUALLY
# Regenerate with: mix compile
# Library: dspy 3.1.2
# Python module: dspy.streaming
# Python class: StatusMessageProvider
defmodule Dspy.Streaming.StatusMessageProvider do
@moduledoc """
Provides customizable status message streaming for DSPy programs.
This class serves as a base for creating custom status message providers. Users can subclass
and override its methods to define specific status messages for different stages of program execution,
each method must return a string.
"""
def __snakebridge_python_name__, do: "dspy.streaming"
def __snakebridge_python_class__, do: "StatusMessageProvider"
def __snakebridge_library__, do: "dspy"
@opaque t :: SnakeBridge.Ref.t()
@doc """
Initialize self. See help(type(self)) for accurate signature.
## Parameters
- `args` (term())
- `kwargs` (term())
"""
@spec new(list(term()), keyword()) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()}
def new(args, opts \\ []) do
{args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts)
SnakeBridge.Runtime.call_class(__MODULE__, :__init__, [] ++ List.wrap(args), opts)
end
@doc """
Status message after a `dspy.LM` is called.
## Parameters
- `outputs` (term())
## Returns
- `nil`
"""
@spec lm_end_status_message(SnakeBridge.Ref.t(), term(), keyword()) ::
{:ok, nil} | {:error, Snakepit.Error.t()}
def lm_end_status_message(ref, outputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :lm_end_status_message, [outputs], opts)
end
@doc """
Status message before a `dspy.LM` is called.
## Parameters
- `instance` (term())
- `inputs` (%{optional(String.t()) => term()})
## Returns
- `term()`
"""
@spec lm_start_status_message(
SnakeBridge.Ref.t(),
term(),
%{optional(String.t()) => term()},
keyword()
) :: {:ok, term()} | {:error, Snakepit.Error.t()}
def lm_start_status_message(ref, instance, inputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :lm_start_status_message, [instance, inputs], opts)
end
@doc """
Status message after a `dspy.Module` or `dspy.Predict` is called.
## Parameters
- `outputs` (term())
## Returns
- `nil`
"""
@spec module_end_status_message(SnakeBridge.Ref.t(), term(), keyword()) ::
{:ok, nil} | {:error, Snakepit.Error.t()}
def module_end_status_message(ref, outputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :module_end_status_message, [outputs], opts)
end
@doc """
Status message before a `dspy.Module` or `dspy.Predict` is called.
## Parameters
- `instance` (term())
- `inputs` (%{optional(String.t()) => term()})
## Returns
- `term()`
"""
@spec module_start_status_message(
SnakeBridge.Ref.t(),
term(),
%{optional(String.t()) => term()},
keyword()
) :: {:ok, term()} | {:error, Snakepit.Error.t()}
def module_start_status_message(ref, instance, inputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :module_start_status_message, [instance, inputs], opts)
end
@doc """
Status message after a `dspy.Tool` is called.
## Parameters
- `outputs` (term())
## Returns
- `nil`
"""
@spec tool_end_status_message(SnakeBridge.Ref.t(), term(), keyword()) ::
{:ok, nil} | {:error, Snakepit.Error.t()}
def tool_end_status_message(ref, outputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :tool_end_status_message, [outputs], opts)
end
@doc """
Status message before a `dspy.Tool` is called.
## Parameters
- `instance` (term())
- `inputs` (%{optional(String.t()) => term()})
## Returns
- `term()`
"""
@spec tool_start_status_message(
SnakeBridge.Ref.t(),
term(),
%{optional(String.t()) => term()},
keyword()
) :: {:ok, term()} | {:error, Snakepit.Error.t()}
def tool_start_status_message(ref, instance, inputs, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :tool_start_status_message, [instance, inputs], opts)
end
end