Skip to content

Send a chat message ​

What it does ​

Opens the chat panel and sends a message to the active model. Messages stream in real-time and are persisted in the conversation store. You can pick an existing conversation or create a new one, type your prompt, hit Enter, and watch the response appear token by token.

Prerequisites ​

  • A running stack (the api container is healthy).
  • At least one model is loaded (check Catalog to see available models).
  • You know your active model id (shown in the model dropdown in the chat panel header).

Steps ​

1. Open the chat panel ​

Click the chat bubble icon in the PageHeader top-right corner, or press ⌘K (macOS) / Ctrl+K (Windows/Linux). The right-side panel slides in with the message list and input bar.

2. Pick a conversation ​

The panel opens to the active conversation. To switch:

  • Click the conversation dropdown (shows the current conversation name).
  • Select an existing one from the list, or click New conversation to create one.

3. Type your message ​

Click in the input bar at the bottom of the panel and type your prompt. Use Shift+Enter for multi-line input.

4. Send the message ​

Press Enter to send. The message is added to the list as a USER card, and a ASSISTANT card streams in below it.

5. Watch the stream ​

The assistant's reply appears token by token. Latency is shown when the stream completes (e.g. "1.2 s").

(Direct API) Send via curl ​

bash
curl -s -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $BIGWAVE_TOKEN" \
  -d '{
    "model": "qwen2.5:3b",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "What is 2 + 2?"}
    ],
    "stream": true
  }' \
  "http://localhost:8080/v1/chat/completions" | jq

Response streams as newline-delimited JSON with delta.content for each chunk.

Verify ​

  • Send a message with a system prompt and user turn.
  • The assistant's reply appears in the chat panel within 1-2 seconds.
  • Refresh Observability — your new inference is the top row.
  • Open the row; the Context window drawer shows the SYSTEM + USER cards.

Common issues ​

SymptomCauseFix
"Model not found"No models are loaded or active model is nullCheck Catalog to load a model, or use GET /v1/models to list what's available
Chat panel doesn't openKeyboard shortcut not working in your browserTry clicking the chat icon in PageHeader instead of using ⌘K
Message sends but no responseModel is loading (first request) or inference failedWait 10-20s for Ollama to load the GGUF; check api container logs for 5xx errors
"401 Unauthorized" on curlBearer token is missing or incorrectcat .env | grep BIGWAVE_TOKEN and paste the correct value

Dual-licensed: MIT OR Apache-2.0