Expose DuckLM runtime status

This commit is contained in:
2026-05-22 07:45:47 +08:00
parent ff98224eb6
commit 8452673994
8 changed files with 319 additions and 9 deletions
+7
View File
@@ -36,6 +36,13 @@ bash scripts/duck.sh restart
bash scripts/duck.sh stop
```
Use live probes when you need backend diagnostics, not just process status:
```bash
bash scripts/duck.sh status --probe
curl --noproxy '*' 'http://127.0.0.1:8000/v1/status?probe=true'
```
4. Open WebChat:
```text
+23
View File
@@ -24,6 +24,29 @@ GET /v1/experience/{id}
GET /v1/memory/search?q=...
```
`GET /v1/status` returns a fast runtime snapshot without live backend checks:
```json
{
"name": "DuckLM",
"api": {"host": "127.0.0.1", "port": 8000},
"paths": {"workspace": "./workspace", "db_path": "./data/duck.sqlite3"},
"token_budget": {"ctx_size": 65536},
"models": {
"default_provider": "llama_server",
"endpoints": ["llama_server:http://127.0.0.1:8081/v1:local-main"],
"roles": {"thinker": {"model": "local-main"}}
},
"services": {
"duck_api": {"ok": true, "probed": true},
"llama": {"ok": null, "probed": false, "roles": {}},
"vector_memory": {"ok": null, "probed": false}
}
}
```
Use `GET /v1/status?probe=true` to also call the model backend and Qdrant.
Chat requests accept optional `reasoning`:
```json