feat: print API endpoints and chat UI link on server startup
This commit is contained in:
1 parent
d0c2f86f3f
commit
d8c5697f39
1 file changed
+24
-2
@@ -65,7 +65,7 @@ async fn main() -> Result<()> {
|
|||||||
let state = AppState {
|
let state = AppState {
|
||||||
engine: Arc::new(Mutex::new(engine)),
|
engine: Arc::new(Mutex::new(engine)),
|
||||||
counters: PerfCounters::new(),
|
counters: PerfCounters::new(),
|
||||||
model_name: Arc::new(model_name),
|
model_name: Arc::new(model_name.clone()),
|
||||||
server_config,
|
server_config,
|
||||||
start_time: std::time::Instant::now(),
|
start_time: std::time::Instant::now(),
|
||||||
};
|
};
|
||||||
@@ -78,7 +78,29 @@ async fn main() -> Result<()> {
|
|||||||
let router = build_router(state);
|
let router = build_router(state);
|
||||||
let listener = tokio::net::TcpListener::bind(addr).await?;
|
let listener = tokio::net::TcpListener::bind(addr).await?;
|
||||||
|
|
||||||
info!(addr = %addr, "LocalLLM server listening");
|
// ── Startup banner ───────────────────────────────────────────────────
|
||||||
|
let display_addr = if addr.ip().is_unspecified() {
|
||||||
|
format!("http://127.0.0.1:{}", addr.port())
|
||||||
|
} else {
|
||||||
|
format!("http://{}", addr)
|
||||||
|
};
|
||||||
|
println!();
|
||||||
|
println!(" ╔══════════════════════════════════════════════════╗");
|
||||||
|
println!(" ║ ForgeLM • Local LLM Runtime ║");
|
||||||
|
println!(" ╚══════════════════════════════════════════════════╝");
|
||||||
|
println!();
|
||||||
|
println!(" Model : {}", model_name);
|
||||||
|
println!();
|
||||||
|
println!(" API Endpoints:");
|
||||||
|
println!(" GET {}/health", display_addr);
|
||||||
|
println!(" GET {}/v1/models", display_addr);
|
||||||
|
println!(" POST {}/v1/chat/completions", display_addr);
|
||||||
|
println!();
|
||||||
|
println!(" Chat UI:");
|
||||||
|
println!(" file://$(pwd)/ui/chat.html");
|
||||||
|
println!(" (open ui/chat.html in your browser and set server to {})", display_addr);
|
||||||
|
println!();
|
||||||
|
|
||||||
axum::serve(listener, router).await?;
|
axum::serve(listener, router).await?;
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|||||||
Reference in new issue
Block a user