defmodule ReqLLM.Provider.Generated.ValidProviders do
  @moduledoc false

  @doc """
  Returns the list of valid provider atoms.

  This module is auto-generated by the model sync task.
  Do not edit manually.
  """
  @providers [
    :alibaba,
    :alibaba_cn,
    :amazon_bedrock,
    :anthropic,
    :azure,
    :baseten,
    :cerebras,
    :chutes,
    :cloudflare_workers_ai,
    :cortecs,
    :deepinfra,
    :deepseek,
    :fastrouter,
    :fireworks_ai,
    :github_copilot,
    :github_models,
    :google,
    :google_vertex,
    :google_vertex_anthropic,
    :groq,
    :huggingface,
    :inception,
    :inference,
    :llama,
    :lmstudio,
    :lucidquery,
    :mistral,
    :modelscope,
    :moonshotai,
    :moonshotai_cn,
    :morph,
    :nvidia,
    :openai,
    :opencode,
    :openrouter,
    :perplexity,
    :requesty,
    :submodel,
    :synthetic,
    :togetherai,
    :upstage,
    :v0,
    :venice,
    :vercel,
    :wandb,
    :xai,
    :zai,
    :zai_coding_plan,
    :zhipuai,
    :zhipuai_coding_plan
  ]

  @spec list() :: [atom()]
  def list, do: @providers

  @spec member?(atom()) :: boolean()
  def member?(atom), do: atom in @providers
end
