# Generated by SnakeBridge v0.12.0 - DO NOT EDIT MANUALLY # Regenerate with: mix compile # Library: dspy 3.1.2 # Python module: dspy # Python class: BaseLM defmodule Dspy.BaseLM do def __snakebridge_python_name__, do: "dspy" def __snakebridge_python_class__, do: "BaseLM" def __snakebridge_library__, do: "dspy" @opaque t :: SnakeBridge.Ref.t() @spec new(term(), list(term()), keyword()) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()} def new(model, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_class(__MODULE__, :__init__, [model] ++ List.wrap(args), opts) end @spec _extract_citations_from_response(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _extract_citations_from_response(ref, choice, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_extract_citations_from_response, [choice], opts) end @spec _process_completion(SnakeBridge.Ref.t(), term(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _process_completion(ref, response, merged_kwargs, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_process_completion, [response, merged_kwargs], opts) end @spec _process_lm_response(SnakeBridge.Ref.t(), term(), term(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _process_lm_response(ref, response, prompt, messages, opts \\ []) do SnakeBridge.Runtime.call_method( ref, :_process_lm_response, [response, prompt, messages], opts ) end @spec _process_response(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _process_response(ref, response, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_process_response, [response], opts) end @spec acall(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, list(term())} | {:error, Snakepit.Error.t()} def acall(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :acall, [] ++ List.wrap(args), opts) end @spec aforward(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def aforward(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :aforward, [] ++ List.wrap(args), opts) end @spec copy(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def copy(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :copy, [], opts) end @spec forward(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def forward(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :forward, [] ++ List.wrap(args), opts) end @spec inspect_history(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def inspect_history(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :inspect_history, [] ++ List.wrap(args), opts) end @spec update_history(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def update_history(ref, entry, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :update_history, [entry], opts) end end