anz33 docs
Download

Connect your apps

Almost every AI app has a box for a "base URL" or "custom endpoint". Put the anz33 address in it and that app can reach every engine you own, chosen automatically.

The one setting

http://127.0.0.1:3300/v1

If the app also demands an API key, type anything — local is fine. anz33 does not check keys unless you have deliberately turned that on for household use.

Copy it without typing. The menu-bar or tray app has Copy Endpoint URL. Handy when an app wants it pasted into a small box on a phone-sized window.

Where the setting hides

Kind of appLook for
Chat clients and desktop AI appsSettings → Model provider → "OpenAI compatible", then Base URL
Code editors and coding assistantsAn "OpenAI compatible" or "custom endpoint" provider, plus a model name
Note-taking apps with AI featuresUsually an "AI provider" section with a URL field
Anything with a config fileA key called base_url, api_base, openai_api_base or endpoint

Two things worth knowing when an app asks for a model name:

  • auto is a valid model name. It means "you choose", and it is the right answer most of the time.
  • Any real model name from anz33 models works, and you do not have to say which engine holds it.

In your own code

Any OpenAI client library works — you are only changing the address it points at.

Python

from openai import OpenAI

client = OpenAI(base_url="http://127.0.0.1:3300/v1", api_key="local")

reply = client.chat.completions.create(
    model="auto",
    messages=[{"role": "user", "content": "Summarise this in one line: ..."}],
)
print(reply.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "http://127.0.0.1:3300/v1",
  apiKey: "local",
});

const reply = await client.chat.completions.create({
  model: "auto",
  messages: [{ role: "user", content: "Hello" }],
});

Environment variables

Many tools read these without any code change at all:

export OPENAI_BASE_URL=http://127.0.0.1:3300/v1
export OPENAI_API_KEY=local

Streaming

Streaming — words appearing as they are generated — works exactly as apps expect. Set "stream": true and anz33 passes the stream straight through from the engine.

Other machines on your network

By default anz33 answers only the computer it runs on. To let a phone or a second laptop use the same router:

anz33 serve --lan

Then point the other device at http://<this-computer's-IP>:3300/v1. Before you do, read Sharing with your household — opening the router to your network is exactly when you want profiles and keys turned on.

Checking a connection

If an app cannot see anz33, ask the router directly from the same machine:

curl http://127.0.0.1:3300/v1/models

A list of models means the router is fine and the problem is in the app's settings — most often a missing /v1 at the end of the URL, or https where it should be http.