Gemini.Models (GeminiEx v0.0.2)
View SourceAPI for managing and querying Gemini models.
Summary
Functions
Check if a model exists and is available.
Get information about a specific model.
List available Gemini models.
List all available model names.
Get models that support a specific generation method.
Functions
Check if a model exists and is available.
Examples
iex> Gemini.Models.exists?("gemini-2.0-flash")
{:ok, true}
iex> Gemini.Models.exists?("invalid-model")
{:ok, false}
Get information about a specific model.
Parameters
model_name
- Name of the model (e.g., "gemini-2.0-flash")
Examples
iex> Gemini.Models.get("gemini-2.0-flash")
{:ok, %Model{name: "models/gemini-2.0-flash", ...}}
iex> Gemini.Models.get("invalid-model")
{:error, %Gemini.Error{type: :api_error, ...}}
List available Gemini models.
Options
:page_size
- Maximum number of models to return (default: 50):page_token
- Token for pagination
Examples
iex> Gemini.Models.list()
{:ok, %ListModelsResponse{models: [%Model{...}], next_page_token: nil}}
iex> Gemini.Models.list(page_size: 10)
{:ok, %ListModelsResponse{...}}
List all available model names.
Examples
iex> Gemini.Models.list_names()
{:ok, ["gemini-2.0-flash", "gemini-1.5-pro", "gemini-1.5-flash"]}
Get models that support a specific generation method.
Parameters
method
- Generation method (e.g., "generateContent", "streamGenerateContent")
Examples
iex> Gemini.Models.supporting_method("generateContent")
{:ok, [%Model{...}, ...]}