Skip to content

feat(providers): enable dynamic model selection and flexible API versioning across all providers #18

Description

@Nithwin

Is your feature request related to a problem? Please describe.

Goal

Enable developers to use any AI model (--model <name>) and custom API endpoints/versions across all providers (gemini, ollama, groq, openai, anthropic), removing restrictions on default models or hardcoded /v1 endpoint paths.

Problem

Currently, providers default to specific hardcoded model names (e.g., gpt-4o, claude-3-5-sonnet-latest, llama-3.3-70b-versatile) and hardcode the /v1 or /openai/v1 API prefix. This limits users who want to:

  1. Use newly released models immediately without waiting for a WindMist update (e.g., o3-mini, claude-3-opus, qwen2.5:32b).
  2. Use custom or proprietary enterprise endpoints (such as Azure OpenAI or custom proxy servers that use different path structures instead of standard /v1).

Describe the solution you'd like

Proposed Solution

  1. Dynamic Model CLI Flag: Ensure the CLI supports a --model <model_name> override that overrides the default model in ~/.windmist/config.yaml.
  2. Flexible Base URL Handling: Allow base_url in config.yaml to accept exact custom API routes without forcing /v1 when a user provides a full custom path.
  3. Model Validation: Add helpful error messages or fallback logic when a provider rejects an unsupported model string.

Describe alternatives you've considered

No response

Additional Context

Additional Context

This will make WindMist completely future-proof for all upcoming open-source and proprietary LLM releases across all 5 providers.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions