# This file is auto-generated by alef — DO NOT EDIT. # alef:hash:4d091301d545aef1106200aa097a5993b89ad82c32a6d5413666f01bfa6a05bf # To regenerate: alef generate # To verify freshness: alef verify --exit-code # Issues & docs: https://github.com/kreuzberg-dev/alef defmodule LiterLlm do @moduledoc "High-level API for liter_llm." @doc "Create a new LLM client with simple scalar configuration." @spec create_client(String.t()) :: {:ok, reference()} | {:error, String.t()} def create_client(api_key) do LiterLlm.Native.create_client(api_key, nil, nil, nil, nil) end @doc "Create a new LLM client with simple scalar configuration." @spec create_client(String.t(), String.t() | nil) :: {:ok, reference()} | {:error, String.t()} def create_client(api_key, base_url) do LiterLlm.Native.create_client(api_key, base_url, nil, nil, nil) end @doc "Create a new LLM client with simple scalar configuration." @spec create_client(String.t(), String.t() | nil, non_neg_integer() | nil) :: {:ok, reference()} | {:error, String.t()} def create_client(api_key, base_url, timeout_secs) do LiterLlm.Native.create_client(api_key, base_url, timeout_secs, nil, nil) end @doc "Create a new LLM client with simple scalar configuration." @spec create_client( String.t(), String.t() | nil, non_neg_integer() | nil, non_neg_integer() | nil ) :: {:ok, reference()} | {:error, String.t()} def create_client(api_key, base_url, timeout_secs, max_retries) do LiterLlm.Native.create_client(api_key, base_url, timeout_secs, max_retries, nil) end @doc "Create a new LLM client with simple scalar configuration." @spec create_client( String.t(), String.t() | nil, non_neg_integer() | nil, non_neg_integer() | nil, String.t() | nil ) :: {:ok, reference()} | {:error, String.t()} def create_client(api_key, base_url, timeout_secs, max_retries, model_hint) do LiterLlm.Native.create_client(api_key, base_url, timeout_secs, max_retries, model_hint) end @doc "Create a new LLM client from a JSON string." @spec create_client_from_json(String.t()) :: {:ok, reference()} | {:error, String.t()} def create_client_from_json(json) do LiterLlm.Native.create_client_from_json(json) end @doc "Register a custom provider in the global runtime registry." @spec register_custom_provider(map()) :: {:ok, nil} | {:error, String.t()} def register_custom_provider(config) do LiterLlm.Native.register_custom_provider(config) end @doc "Remove a previously registered custom provider by name." @spec unregister_custom_provider(String.t()) :: {:ok, boolean()} | {:error, String.t()} def unregister_custom_provider(name) do LiterLlm.Native.unregister_custom_provider(name) end @doc "Method" @spec defaultclient_chat_async(map(), String.t() | nil) :: {:ok, String.t() | nil} | {:error, String.t()} def defaultclient_chat_async(obj, req) do LiterLlm.Native.defaultclient_chat_async(obj, req) end @doc "Method" @spec defaultclient_chat_stream_async(map(), String.t() | nil) :: {:ok, String.t()} | {:error, String.t()} def defaultclient_chat_stream_async(obj, req) do LiterLlm.Native.defaultclient_chat_stream_async(obj, req) end @doc "Method" @spec defaultclient_embed_async(map(), map()) :: {:ok, map()} | {:error, String.t()} def defaultclient_embed_async(obj, req) do LiterLlm.Native.defaultclient_embed_async(obj, req) end @doc "Method" @spec defaultclient_list_models_async(map()) :: {:ok, String.t() | nil} | {:error, String.t()} def defaultclient_list_models_async(obj) do LiterLlm.Native.defaultclient_list_models_async(obj) end @doc "Method" @spec defaultclient_image_generate_async(map(), String.t() | nil) :: {:ok, String.t() | nil} | {:error, String.t()} def defaultclient_image_generate_async(obj, req) do LiterLlm.Native.defaultclient_image_generate_async(obj, req) end @doc "Method" @spec defaultclient_transcribe_async(map(), String.t() | nil) :: {:ok, String.t() | nil} | {:error, String.t()} def defaultclient_transcribe_async(obj, req) do LiterLlm.Native.defaultclient_transcribe_async(obj, req) end @doc "Method" @spec defaultclient_moderate_async(map(), map()) :: {:ok, map()} | {:error, String.t()} def defaultclient_moderate_async(obj, req) do LiterLlm.Native.defaultclient_moderate_async(obj, req) end @doc "Method" @spec defaultclient_rerank_async(map(), map()) :: {:ok, map()} | {:error, String.t()} def defaultclient_rerank_async(obj, req) do LiterLlm.Native.defaultclient_rerank_async(obj, req) end @doc "Method" @spec defaultclient_search_async(map(), String.t() | nil) :: {:ok, map()} | {:error, String.t()} def defaultclient_search_async(obj, req) do LiterLlm.Native.defaultclient_search_async(obj, req) end end