Autonnel v0.1.0

LLM

Configure an OpenAI-compatible LLM. Optional — AI features hide gracefully when not configured.


Autonnel can use any OpenAI-compatible API for AI-powered features. LLM configuration is optional. If you do not configure it, all AI features are hidden from the admin UI and everything else continues working without change.

Configuration

Go to Settings → LLM and fill in the three fields:

Config keyDescription
llm.base_urlBase URL of the OpenAI-compatible API endpoint
llm.api_keyAPI key for the provider
llm.modelModel identifier string, e.g. gpt-4o

All three values are configured at runtime via Settings → LLM. None of them have an environment variable fallback — they must be set through the admin UI.

If any one of the three keys is missing, AI features are treated as disabled.

Provider compatibility

Autonnel calls the standard OpenAI chat completions endpoint (POST /chat/completions). Any provider that exposes an OpenAI-compatible API works.

OpenAI

Base URL:  https://api.openai.com/v1
Model:     gpt-4o  or  gpt-4o-mini

Anthropic (via OpenAI-compatible proxy)

Base URL:  https://api.anthropic.com/v1
Model:     claude-sonnet-4-6  or  claude-opus-4-7

Anthropic’s native API uses a different request format. Use Anthropic’s OpenAI-compatible proxy endpoint, or an intermediate proxy that translates the format.

Groq

Base URL:  https://api.groq.com/openai/v1
Model:     llama-3.3-70b-versatile  (or any Groq-hosted model)

Together AI

Base URL:  https://api.together.xyz/v1
Model:     meta-llama/Llama-3-70b-chat-hf  (or similar)

Local Ollama

Base URL:  http://localhost:11434/v1
Model:     llama3  (or any model you have pulled)

Ollama must be started with OLLAMA_HOST=0.0.0.0 if Autonnel runs in a container or on a different host. Pass any non-empty string as the API key — Ollama ignores it but the field is required.

What the LLM is used for

When configured, the LLM is called by the following features:

  • AI page generation — generate a full Puck page layout from a text description.
  • Component prop translation — translate Puck component text fields into other languages for i18n pages.
  • Conversion analysis cron — periodically analyze funnel event data and post a natural-language summary to your configured notification channels (email, Slack, webhook).
  • Behavior analysis cron — analyze visitor behavior patterns and surface anomalies.

Disabling or removing the LLM config stops all of the above. It does not affect payment processing, order management, funnel routing, ads postback, or any other core feature.

Graceful degradation

If any of llm.base_url, llm.api_key, or llm.model is not configured:

  • The “Generate with AI” button does not appear in the page editor.
  • The component translation action is hidden.
  • The conversion analysis and behavior analysis cron jobs skip their LLM call and do not send notifications.

There are no error messages shown to storefront visitors. The degradation is silent and confined to the admin UI.

Cost considerations

Each deployment uses its own API key. You pay your provider directly; Autonnel does not proxy or aggregate billing.

The conversion analysis cron runs at a frequency you set in Settings → Notifications (default: every 2 hours, minimum: every 30 minutes). Each run sends one LLM request containing a summary of recent funnel events.

At the 30-minute cadence with a verbose model like gpt-4o, this can accumulate significant cost over time. Start with a 2–4 hour cadence and a cost-efficient model (gpt-4o-mini, llama-3.3-70b-versatile on Groq) and tune from there.

Page generation calls are on-demand and typically cost less than conversion analysis runs.

Caveats

  • Do not paste production API keys into shared development environments. If multiple developers share one Autonnel instance, they share the same deployment’s LLM key.
  • In a multi-deployment SaaS setup, each deployment manages its own LLM key. There is no shared key across deployments.
  • The llm.model value is passed verbatim to the provider. If you enter a model name that the provider does not recognize, API calls will fail with a 404 or 400 error. The admin UI does not validate model names against a list.
  • Switching providers mid-flight (e.g., from OpenAI to Groq) takes effect immediately on the next LLM call. In-flight generation requests that already started use the previous configuration.
  • Notifications — configure how conversion analysis results are delivered
  • Configuration — runtime configuration structure and read order