Before you start
What happened
With most other inference engines ( llama.cpp, tabbyapi, ninfer, ds4, colibri, ik_llama.cpp, and vllm) a GET request to /health will return an error status such as 404 or 503 if the model is not yet loaded and 200 only when ready, which is a behavior other tools such as llama-swap rely on a non-successful error code to deterimine the health of the engine.
FreeToken deviates from every other implementation i could find by always returning status 200 from /health even when the model is not ready, which makes it look like a bug.
Behavior can easily be seen via running curl while model is loading:
curl -i http://127.0.0.1:1919/health
HTTP/1.1 200 OK
date: Tue, 22 Sep 2026 16:45:43 GMT
server: uvicorn
content-length: 190
content-type: application/json
{"status":"loading","phase":"weights","progress":{"done_bytes":10032828408,"total_bytes":10816852472},"model":"Qwen3.8-Flash-Next-NVFP4","instance_id":"c66344f3-b496-4dcb-a359-90c502ecb3f9"}
note: status is "loading" but status is "200 OK", where instead something like 503 would be expected instead.
I believe we should set the error code in the /health response until model is actually loaded.
How did you install FreeToken
Built from source
FreeToken version
cab110e
OS
Fedora
OS details
44
GPU and driver
RTX 5090 615.71.09
CPU and system RAM
i7-12600k DDR4
Checkpoint
nvidia/Qwen3.8-Flash-Next-NVFP4
Command
ft serve --model models/Qwen3.8-Flash-Next-NVFP4
Full log
Anything else
No response
Before you start
mainwhen building from source.What happened
With most other inference engines ( llama.cpp, tabbyapi, ninfer, ds4, colibri, ik_llama.cpp, and vllm) a GET request to /health will return an error status such as 404 or 503 if the model is not yet loaded and 200 only when ready, which is a behavior other tools such as llama-swap rely on a non-successful error code to deterimine the health of the engine.
FreeToken deviates from every other implementation i could find by always returning status 200 from /health even when the model is not ready, which makes it look like a bug.
Behavior can easily be seen via running curl while model is loading:
note: status is "loading" but status is "200 OK", where instead something like 503 would be expected instead.
I believe we should set the error code in the /health response until model is actually loaded.
How did you install FreeToken
Built from source
FreeToken version
cab110e
OS
Fedora
OS details
44
GPU and driver
RTX 5090 615.71.09
CPU and system RAM
i7-12600k DDR4
Checkpoint
nvidia/Qwen3.8-Flash-Next-NVFP4
Command
Full log
Anything else
No response