ws lug fixed + docker support
parent
1281f66518
commit
7e1e3ac38e
|
|
@ -13,9 +13,9 @@ ML_MODEL_NAME="kis-test"
|
|||
# `ML_REQUEST_TIMEOUT` for setting ML response wait time
|
||||
# ------------------------------------------------------
|
||||
# - Measures in `secs`
|
||||
# - Default value - 10
|
||||
# - Default value - 15
|
||||
# ------------------------------------------------------
|
||||
ML_REQUEST_TIMEOUT="10"
|
||||
ML_REQUEST_TIMEOUT="15"
|
||||
|
||||
|
||||
# `ML_API_LOG_LEVEL` log level selection
|
||||
|
|
|
|||
|
|
@ -17,5 +17,6 @@ COPY --from=builder /app/target/x86_64-unknown-linux-musl/release/ml-api /app/ml
|
|||
RUN apk add --no-cache ca-certificates
|
||||
|
||||
EXPOSE 5134/tcp
|
||||
EXPOSE 1560/tcp
|
||||
|
||||
ENTRYPOINT ["/app/ml-api"]
|
||||
|
|
|
|||
|
|
@ -8,13 +8,14 @@ services:
|
|||
- NOXIS_SOCKET_PATH=./noxis.sock
|
||||
- NOXIS_PROXY_PORT=7654
|
||||
- NOXIS_LOG_LEVEL=TRACE
|
||||
- ML_TARGET_URL=http://192.168.231.89:11434/api/generate
|
||||
- ML_TARGET_URL=http://192.168.249.5:11434/api/generate
|
||||
- ML_MODEL_NAME=kis-test
|
||||
- ML_REQUEST_TIMEOUT=10
|
||||
- ML_REQUEST_TIMEOUT=20
|
||||
- ML_LOG_LEVEL=TRACE
|
||||
- ML_API_PORT=5134
|
||||
ports:
|
||||
- 5134:5134
|
||||
- 5135:1560
|
||||
restart: always
|
||||
|
||||
networks:
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ pub mod rest {
|
|||
|
||||
pub mod ws {
|
||||
use axum::extract::{ws::{Message, WebSocket}, WebSocketUpgrade};
|
||||
use tracing::trace;
|
||||
use tracing::{debug, trace};
|
||||
use super::{IntoResponse, InputMetric, Config, State};
|
||||
|
||||
pub async fn model_ws_handler(
|
||||
|
|
@ -63,17 +63,22 @@ pub mod ws {
|
|||
Ok(msg) => {
|
||||
match serde_json::from_str::<Vec<InputMetric>>(msg) {
|
||||
Err(er) => {
|
||||
let _ = ws.send(
|
||||
match ws.send(
|
||||
Message::Text(
|
||||
format!("Cannot convert input message: {er}")
|
||||
.into()
|
||||
)
|
||||
).await;
|
||||
).await {
|
||||
Ok(_) => trace!("cannot convert given msg"),
|
||||
Err(er) => {let _ = ws.send(Message::Text(format!("Request was aborted: {}", er).into())).await;},
|
||||
}
|
||||
},
|
||||
Ok(req) => {
|
||||
match super::send_message_to_model(config.clone(), req).await {
|
||||
Ok(resp) => {
|
||||
let _ = ws.send(Message::Text(resp.into()));
|
||||
trace!("Successfull request to model");
|
||||
debug!("Response from the Model: {}", &resp);
|
||||
let _ = ws.send(Message::Text(resp.into())).await;
|
||||
},
|
||||
Err(er) => {
|
||||
let _ = ws.send(Message::Text(format!("Cannot get model's response: {er}").into())).await;
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ impl ApiSessionConfig {
|
|||
model_name : std::env::var("ML_MODEL_NAME")?,
|
||||
request_timeout : std::env::var("ML_REQUEST_TIMEOUT")?.parse().unwrap_or_else(|_| {
|
||||
warn!("invalid port was given, setting up default one ...");
|
||||
10
|
||||
15
|
||||
}),
|
||||
client : Client::new(),
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue