Module: Ask::LLM::Sources::ModelsDev
- Defined in:
- lib/ask/llm/sources/models_dev.rb
Constant Summary collapse
- MODELS_DEV_URL =
"https://models.dev/api.json"- MODELS_DIR =
File.("../models", __dir__)
- PROVIDER_MAP =
Map from models.dev provider keys to ask-rb provider slugs. Only providers we actually register in ask-llm-providers get a file.
{ "openai" => "openai", "anthropic" => "anthropic", "google" => "gemini", "google-vertex" => "vertex_ai", "amazon-bedrock" => "bedrock", "deepseek" => "deepseek", "mistral" => "mistral", "perplexity" => "perplexity", "xai" => "xai", "github" => "github" }.freeze
Class Method Summary collapse
-
.update! ⇒ Object
Fetch models.dev, parse into ModelInfo objects, write per-provider JSONs.
Class Method Details
.update! ⇒ Object
Fetch models.dev, parse into ModelInfo objects, write per-provider JSONs.
43 44 45 46 47 48 49 50 51 |
# File 'lib/ask/llm/sources/models_dev.rb', line 43 def update! puts "Fetching models from models.dev..." data = fetch models = parse(data) write_provider_files(models) count = models.length puts "Wrote #{count} models across #{PROVIDER_MAP.size} provider files." count end |