# Try DeepSeek V4.1 Flash on Hopper

Give this URL to your coding agent: https://withhopper.com/agents/deepseek-v4.1-flash-1017.md

Hopper hosts standard **DeepSeek V4.1 Flash 1017** at an OpenAI-compatible API.
Model: `deepseek-v4.1-flash-1017`. Base URL: `https://api.withhopper.com/v1`.

**Get a key:** https://withhopper.com/console/keys

Sign up or sign in, then create an API key. New accounts start with **$5 in
credit**, shared across the account's keys and usage. Creating another key
does not add more credit. See https://docs.withhopper.com/models for current
credit terms.

## For the agent

When the user asks to try this link, use their Hopper account key, make the
small test request below, and report the result. No Hopper package is needed.
Do not change the user's existing model configuration until they ask to
integrate it.

### 1. Get a key

Reuse `HOPPER_API_KEY` if it is already set. Otherwise:

1. Ask the user to open https://withhopper.com/console/keys, sign up or sign
   in, and create a key.
2. Have them set it as `HOPPER_API_KEY` through their existing private secret
   storage or server environment. A local gitignored `.env` file with mode
   `0600` is also suitable when the project loads it.
3. Wait until the key is available in the request process, then continue.

Never ask the user to paste a key into chat, print it, commit it, or include
it in a shared URL. Preserve existing environment variables and credentials.
Use the account-key flow above; do not register an anonymous trial.

### 2. Make one test request

```bash
curl --fail-with-body --silent --show-error --max-time 60 \
  https://api.withhopper.com/v1/chat/completions \
  -H "Authorization: Bearer $HOPPER_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "deepseek-v4.1-flash-1017",
    "messages": [{"role": "user", "content": "Reply with exactly READY."}],
    "max_tokens": 32,
    "chat_template_kwargs": {"thinking": false}
  }'
```

`chat_template_kwargs.thinking=false` disables reasoning for this small test
so the output budget goes to the answer. In the OpenAI Python SDK, pass it as
`extra_body={"chat_template_kwargs": {"thinking": False}}`.

Report the returned model ID, answer, and token usage. Do not claim success
unless the request succeeds and returns text. A single test is not a speed
benchmark. On `402`, stop and explain that the account needs credit; on
`429`, honor `Retry-After`.
Never switch to a different model silently.

### 3. Use it in a project

Once requested, use the base URL and model ID above with the project's
existing OpenAI-compatible client and server-side `HOPPER_API_KEY`.
For a quick answer use `thinking=false`; enable thinking explicitly when
the task needs reasoning and allow a larger output budget.

Requests draw from the account's prepaid credit. After it runs out, the user
can top up at https://withhopper.com/console/billing. Do not start a payment
or top-up automatically.

API reference: https://docs.withhopper.com/llm
Privacy: https://withhopper.com/privacy
Terms: https://withhopper.com/terms
