# Class LittleGhost::Providers::LMStudio

Documentation version: Edge

Canonical HTML: https://littleghostai.org/docs/LittleGhost/Providers/LMStudio.html

LMStudio connects LittleGhost to an LM Studio server through its
OpenAI-compatible API. Generation, embeddings, retries, cancellation, and
deadlines use the shared compatible transport.

    provider = LittleGhost::Providers::LMStudio.new(
      model: "google/gemma-3-4b",
      allow_insecure_http: true
    )

The default endpoint is LM Studio's local server. Pass `api_key` when the
server requires authentication. Plain HTTP remains an explicit opt-in.

## Inheritance

`LittleGhost::Providers::LMStudio < OpenAICompatible`

## Constants

### `DEFAULT_BASE_URL`

Default endpoint for LM Studio's OpenAI-compatible API.

## Class methods

<a id="method-c-new"></a>
### `.new`

```ruby
.new(api_key: DEFAULT_API_KEY, base_url: DEFAULT_BASE_URL, **arguments)
```

Configures an LM Studio client. All OpenAICompatible options apply. The
placeholder API key is suitable only when LM Studio authentication is
disabled.

## Instance methods

<a id="method-i-capabilities"></a>
### `#capabilities`

```ruby
#capabilities(metadata: {})
```

Uses refreshed LM Studio model metadata when available. Before a catalog
refresh, the compatible endpoint retains its permissive capability contract.
