config-llm

Use when user asks to configure LLM profiles, manage AI model settings, add/update/remove LLM configurations, or switch between different LLM providers like OpenAI, Anthropic, Google, etc.

Config LLM - LLM Profile Management

Overview

Manage LLM (Large Language Model) profiles for VibeSurf. Configure different AI providers, models, and their parameters.

When to Use

  • User wants to add a new LLM profile
  • User needs to switch default LLM
  • User wants to update LLM settings (temperature, max_tokens, etc.)
  • User needs to see available LLM providers and models
  • User wants to list or manage existing LLM profiles

API Endpoints

Base path: $VIBESURF_ENDPOINT/api/config

Profile Management

ActionMethodEndpointDescription
List ProfilesGET/api/config/llm-profiles?active_only=trueList all LLM profiles
Get ProfileGET/api/config/llm-profiles/{profile_name}Get specific profile details
Create ProfilePOST/api/config/llm-profilesCreate new LLM profile
Update ProfilePUT/api/config/llm-profiles/{profile_name}Update existing profile
Set DefaultPOST/api/config/llm-profiles/{profile_name}/set-defaultSet profile as default
Get DefaultGET/api/config/llm-profiles/default/currentGet current default profile

Provider Management

ActionMethodEndpointDescription
List ProvidersGET/api/config/llm/providersGet available LLM providers
Get ModelsGET/api/config/llm/providers/{provider_name}/modelsGet models for a provider

Provider Notes

Tip: Use GET /api/config/llm/providers to see all available providers and their supported models.

For OpenAI-compatible APIs: If using a third-party provider that offers OpenAI-compatible endpoints (like local models, DeepSeek, or other proxies), use the openai_compatible provider and set the custom base_url.

Request Examples

Create Profile

POST /api/config/llm-profiles
{
  "profile_name": "my-openai",
  "provider": "openai",
  "model": "gpt-4",
  "api_key": "sk-...",
  "temperature": 0.7,
  "max_tokens": 4096,
  "is_default": false
}

Update Profile

PUT /api/config/llm-profiles/my-openai
{
  "temperature": 0.5,
  "max_tokens": 2048
}

Profile Fields

FieldTypeRequiredDescription
profile_namestringYesUnique profile identifier
providerstringYesProvider name
modelstringYesModel name
api_keystringYesAPI key for the provider
base_urlstringNoCustom base URL
temperaturefloatNoSampling temperature (0-2)
max_tokensintNoMaximum tokens to generate
top_pfloatNoNucleus sampling
frequency_penaltyfloatNoFrequency penalty (-2 to 2)
seedintNoRandom seed
descriptionstringNoProfile description
is_defaultboolNoSet as default profile

Workflow

  1. Get available providersGET /api/config/llm/providers
  2. Choose provider and modelGET /api/config/llm/providers/{provider}/models
  3. Create profilePOST /api/config/llm-profiles
  4. Set as default (optional) → POST /api/config/llm-profiles/{name}/set-default