- Unified synchronous generate() core with callback; both streaming and non-streaming paths run it via spawn_blocking (context: std Mutex). - build_prompt now passes tool definitions to the template (was dead) and embeds assistant tool-call history as XML matching the parser format; fixes double <tool_response> wrap and template set-scoping bug. - Tokenize with AddBos::Never (template owns <s>) to remove double BOS. - Streaming: preserve inter-word spaces (per-chunk trim removed), add [DONE] + usage chunk, emit error events, single-shot tool_calls delta. - Strict model validation (400 on unknown model); health/UI/README aligned to minicpm5-1b-fable5-v2-thinking; auth returns JSON errors; n_ctx/ n_batch/n_threads env-configurable. - Added 18 unit tests; cargo check/clippy/fmt clean. - scripts/smoke-test.sh for post-deploy verification on the VPS. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
15 lines
345 B
Rust
15 lines
345 B
Rust
//! Health check endpoint.
|
|
|
|
use axum::Json;
|
|
|
|
use crate::config::MODEL_ID;
|
|
use crate::domain::entity::HealthResponse;
|
|
|
|
pub async fn health_check() -> Json<HealthResponse> {
|
|
Json(HealthResponse {
|
|
status: "ok".into(),
|
|
// Report the exact model id served by /v1/models (no extra suffix).
|
|
model: MODEL_ID.into(),
|
|
})
|
|
}
|