Using LLM Services on Cirrus¶
This guide covers how to access and use Large Language Model (LLM) services on the Cirrus HPC system, including Open WebUI access and configuring local development tools.
Table of Contents¶
Accessing LLMs via Open WebUI¶
The LLM service is accessible while on the UCAR network or VPN through Open WebUI at https://llm.k8s.ucar.edu.
Step 1: Access the Web Interface¶
- Open your web browser and navigate to https://llm.k8s.ucar.edu
- You will be presented with the Open WebUI login page
Step 2: Log In¶
Log in using the "Log in with microsoft" button.
Step 3: Select the Model¶
Once logged in, you'll see a model selector in the top-left corner of the chat interface. Select qwen3-coder-next from the list of available models. This should be chose by default.
Tips for New Users¶
- Session Management: Your chat sessions are saved between logins
- Model Switching: You can switch between different models at any time using the model selector
- Chat History: Older conversations are automatically archived after a period of inactivity
- Web search context: We currently have web search available but due to not having a paid api subscription you have to opt into it for a chat session.
Available Models¶
qwen3-coder-next- Qwen 3 Coder model optimized for code generation and programming tasks
Configuring VS Code Cline¶
You can configure Cline in VS Code to connect to the local LLM hosted at https://qwen.k8s.ucar.edu. Cline provides planning and agentic use.
Step 1: Install the Cline extension¶
- In VSCode go to the extensions manager on the left.
- Search Cline
- Install it
Step 2: Open Cline Settings¶
- Open VS Code
- Open the Command Palette (
Ctrl+Shift+PorCmd+Shift+P) - Type "Cline" and select "Cline: Open Settings"
- Or click the Cline icon in the Activity Bar and select "Settings"
Step 3: Retrieve API key from Open WubUI¶
- Log into Open WenUI with the Microsoft option
- In the top right corner select the profile icon then Settings
- On the left of the settings box choose "Account"
- Click "API Keys" to display your key
Step 4: Configure Custom Endpoint¶
Go to the cline extension on the left. It will ask you to log in but that is optional. Choose "Bring my own API key"
On the following screen setup it as follows, the API key needs to be the key retrieved in Step 3, and the base url is https://llm.k8s.ucar.edu/api
Step 5: Test the Connection¶
- Open the Cline chat interface
- Send a simple message like "Hello"
- Verify you receive a response from the model
Warning
The use of LLM agents that have permissions to read, edit, and execute commands can be dangerous. Cline has two modes, "plan" and "act" which can be toggled on the bottom of the chat window. Use plan mode to start planning your changes and get a summary of what it will do before letting the model make any changes. On the bottom of the chat window is a eay to easily access permissions that cline has without prompting for your input. Cline can and will with the correct instruction run builds, makes, tests, edits, repeat...
A few best practice items:
- Have your VSCode window only have the project files open that you need. Don't let it run on your whole home directory or other large areas.
- In your VSCode terminal do not let the session have privileged access. If your session is sudo'd to root then cline would run commands as root.
- If your CLI session has access to CIRRUS it could start executing helm commands (if that is something you are working on) and depending on your shell, kubectl, and helm config it could start running commands that affect a production deployment in CIRRUS.
Troubleshooting¶
| Issue | Solution |
|---|---|
| Connection refused | Verify you are on the UCAR network or connected to VPN |
| 404 Not Found | Verify the endpoint URL is correct |
| Timeout errors | Check your internet connection and firewall settings |
Using Claude Code with Custom Endpoint¶
Claude Code can be configured to use a custom LLM endpoint such as https://qwen.k8s.ucar.edu.
Environment Variable Configuration¶
Set the following environment variables in your shell configuration file (~/.bashrc, ~/.zshrc, etc.). The API key and auto token should literally be the value 'dummy', it does not matter what they are at this time:
# Claude Code with custom endpoint
export ANTHROPIC_BASE_URL=https://llm.k8s.ucar.edu/api
export ANTHROPIC_API_KEY=dummy
export ANTHROPIC_AUTH_TOKEN=<openwebui-token-from-above>
export ANTHROPIC_DEFAULT_OPUS_MODEL=qwen3-coder-next
export ANTHROPIC_DEFAULT_SONNET_MODEL=qwen3-coder-next
export ANTHROPIC_DEFAULT_HAIKU_MODEL=qwen3-coder-next
A Bash alias if you use claude models¶
claude-qwen() {
ANTHROPIC_BASE_URL=https://llm.k8s.ucar.edu/api \
ANTHROPIC_API_KEY=dummy \
ANTHROPIC_AUTH_TOKEN=<openwebui-token-from-above> \
ANTHROPIC_DEFAULT_OPUS_MODEL=qwen3-coder-next \
ANTHROPIC_DEFAULT_SONNET_MODEL=qwen3-coder-next \
ANTHROPIC_DEFAULT_HAIKU_MODEL=qwen3-coder-next \
claude "$@"
}
For Current Session Only¶
Alternatively, set them for your current session:
export ANTHROPIC_BASE_URL=https://llm.k8s.ucar.edu/api
export ANTHROPIC_API_KEY=dummy
export ANTHROPIC_AUTH_TOKEN=<openwebui-token-from-above>
export ANTHROPIC_DEFAULT_OPUS_MODEL=qwen3-coder-next
export ANTHROPIC_DEFAULT_SONNET_MODEL=qwen3-coder-next
export ANTHROPIC_DEFAULT_HAIKU_MODEL=qwen3-coder-next
Testing Your Configuration¶
Run Claude Code and verify it can connect to your endpoint:
You should receive a response from the qwen3-coder-next model.
Getting Help¶
For issues or questions about the LLM service:
- Contact the CIRRUS team cirrus-admin@ucar.edu


