Skip to content

Surface oMLX configuration settings in setup flow #1

Description

@eeshansrivastava89

Context

oMLX exposes per-model configuration via its app UI and admin API:

Sampling: max tokens, temperature, top-p, top-k, min-p, repetition penalty, presence penalty

Advanced: thinking budget, force sampling

Experimental: turbo quant, kv cache, spec pre-fill, dflash, native MTP, VLM MTP

Currently, offgrid-ai's oMLX setup flow (configureManagedProfile in profile-setup.mjs) only picks a model and saves. The full glass-box setup flow (explanation cards, prompts, defaults) is only implemented for llama.cpp.

What to do

  • Use the oMLX admin API to configure per-model settings during setup, same glass-box pattern as llama.cpp
  • Surface sampling parameters with explanation cards and sensible defaults
  • Surface advanced/experimental settings with appropriate warnings
  • Investigate which settings are per-model vs. server-level via the admin API
  • Maintain parity as oMLX evolves (check omlx --version and API changes)

Design considerations

  • oMLX is a managed server — unlike llama.cpp where we build the server command, oMLX has its own settings layer
  • Need to determine which settings can be configured via the admin API (/admin/api/models/<id>/settings) vs. only through the app UI
  • Some experimental settings may not have API endpoints — handle gracefully
  • Keep the glass-box principle: every setting gets an explanation, not just a prompt

References

  • MTP enable/disable already implemented via admin API: ensureOmlxMtpSetting in process.mjs
  • llama.cpp glass-box flow: configureLocalProfile in profile-setup.mjs (17 prompts with explanation cards)
  • oMLX admin API: PUT /admin/api/models/<id>/settings

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