Getting started
Many clients interface with language models through HTTP services. Reckoning supports familiar endpoints such as /chat/completions and /embeddings.
Launch the server from the source code:
cd web
sh run.sh
Or use the Docker image:
docker run -p 8085:8080 -it \
-v ~/.deliverance:/home/reckoning/.deliverance:ro \
-e RECKONING_OPTS=" -Dspring.config.location=file:/reckoning/simple.yaml " \
ecapriolo/reckoning:0.0.9
The server starts without a model loaded.
Fetch the model
From the repository root, use the packaged reckoning.sh helper. It builds the shaded client jar when needed, then runs the client command. See the script source.
./reckoning.sh fetch edwardcapriolo Qwen3-0.6B-JQ4 \
--endpoint http://localhost:8085
Actual response:
{"status":"READY","owner":"edwardcapriolo","name":"Qwen3-0.6B-JQ4","error":null}
Load it into the server
Fetching puts the files in the cache. Use the same client to load the generation model:
./reckoning.sh serve edwardcapriolo Qwen3-0.6B-JQ4 \
--type GENERATION \
--endpoint http://localhost:8085
Send a chat completion
Once the model is loaded, send a familiar OpenAI-compatible request:
curl -s -X POST http://localhost:8085/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"model":"Qwen3-0.6B-JQ4",
"messages":[
{"role":"user","content":"Tell me one food you like."}
],
"temperature":0,
"max_tokens":32
}'
See HTTP API for request formats and supported options.