Files
librefang-registry/schema.toml
T
Evan 21c82e335c feat: initial model catalog with 196 models across 39 providers
Community-maintained TOML catalog for LibreFang. New models can be added
via PR without requiring a LibreFang binary release.

Includes validation script, bilingual docs, and GitHub templates.
2026-03-14 11:52:10 +09:00

32 lines
2.2 KiB
TOML

# Model Catalog Schema Reference
# ================================
# This file documents all available fields and their types.
# It is NOT a real provider file — it exists purely as documentation.
#
# Required fields are marked. All other fields are optional.
[provider]
id = "provider-id" # Required: unique provider identifier (lowercase, hyphenated)
display_name = "Provider Name" # Required: human-readable display name
api_key_env = "PROVIDER_API_KEY" # Required: environment variable name for the API key
base_url = "https://api.example.com" # Required: default API base URL
key_required = true # Required: whether an API key is needed (false for local providers)
[[models]]
id = "model-id" # Required: unique model identifier
display_name = "Human Name" # Required: human-readable display name
tier = "smart" # Required: one of "frontier", "smart", "balanced", "fast", "local"
# frontier — cutting-edge, most capable (e.g. Claude Opus, GPT-4.1)
# smart — smart, cost-effective (e.g. Claude Sonnet, Gemini 2.5 Flash)
# balanced — balanced speed/cost
# fast — fastest, cheapest for simple tasks
# local — local models (Ollama, vLLM, LM Studio)
context_window = 128000 # Required: maximum input tokens
max_output_tokens = 16384 # Required: maximum output tokens
input_cost_per_m = 2.50 # Required: USD per million input tokens (0.0 for free/local)
output_cost_per_m = 10.0 # Required: USD per million output tokens (0.0 for free/local)
supports_tools = true # Optional: tool/function calling support (default: false)
supports_vision = true # Optional: vision/image input support (default: false)
supports_streaming = true # Optional: streaming response support (default: true)
aliases = ["alias1", "alias2"] # Optional: alternative names for this model