aidex

June 19, 2025 · View on GitHub

llmdex Cover

A CLI tool that provides detailed information about AI language models, helping developers choose the right model for their needs.

Note: This project is now using the models.dev Database. Thanks for making it!

Usage

List models by popular providers

npx aidex --provider openai
npx aidex --provider anthropic
npx aidex --provider google

List all multimodal models that accept images as input:

npx aidex --input image --provider openai

Compare popular reasoning‑capable chat models:

npx aidex --compare "o3,opus4"

Find all models under $1 per million cache reads grouped by provider (note the additional --model filter which is required when using --group-by):

npx aidex --model gpt --group-by provider --sort-by cache_read_cost_per_token

Options (excerpt)

FlagDescription
--input <mod>Require an input modality (text, image, audio, video). Repeat flag for multiple.
--output <mod>Filter by output modality.
--reasoningShow only models flagged as reasoning‑capable.
--tool-callShow only models that support function / tool calling.
--visionAlias for --input image (kept for backwards compatibility).
--sort-by <field>Any numeric field, e.g. input_cost_per_token, cache_read_cost_per_token, max_input_tokens.
--sort-tokenSort by maximum input tokens (descending).
--sort-costSort by input cost per token (descending).
--group-by <criteria>type, provider, mode, series (requires --model or --provider flag).
All previous flags (--model, --provider, etc.) still work.

Sortable numeric fields

The --sort-by flag accepts any numeric field returned by the API (after Aidex normalises the schema). The following fields are currently available:

  • max_input_tokens – Maximum context window size.
  • max_output_tokens – Maximum number of tokens the model can generate.
  • input_cost_per_token – Cost per input token.
  • output_cost_per_token – Cost per output token.
  • cache_read_cost_per_token – Cost per cached-read token.
  • cache_write_cost_per_token – Cost per cached-write token.

Example:

# Show the cheapest GPT-style models first
npx aidex --model gpt --sort-by input_cost_per_token

Emoji legend: 📷 image, 🔊 audio, 🎥 video, 📝 text.

Grouping Models

The --group-by option helps organise results into logical sections. It must be combined with either --model or --provider so that the search space is first narrowed before grouping.

Available grouping keys:

  • provider – AI providers (OpenAI, Anthropic, etc.)
  • type – Model capability buckets (Latest, Vision, etc.)
  • mode – Model mode (Chat, Embedding, Rerank, …)
  • series – Major model series (legacy vs latest, etc.)

Examples:

# Group every GPT-style model by provider and sort by cache-read cost
npx aidex --model gpt --group-by provider --sort-by cache_read_cost_per_token

# Show all OpenAI models grouped by type
npx aidex --provider openai --group-by type

# Combine convenience sort flags
npx aidex --mode chat --sort-cost --group-by mode

Courses

See my other projects:

  • codefetch - Turn code into Markdown for LLMs with one simple terminal command
  • instructa - Instructa Projects

Credits

unjs - for bringing us the best javascript tooling system