def _post_model_request()

in src/lindorm_mcp_server/utils.py [0:0]


def _post_model_request(host: str, username: str, password: str, model: str, data: dict, **kwargs):
    data = json.dumps(data)
    url = 'http://{}:{}/v1/ai/models/{}/infer'.format(host, 9002, model)
    headers = {
        "Content-Type": "application/json",
        "x-ld-ak": username,
        "x-ld-sk": password
    }
    connect_timeout = kwargs.get('connect_timeout', 60)
    read_timeout = kwargs.get('read_timeout', 60)
    timeout = (connect_timeout, read_timeout)

    try:
        result = requests.post(url, data=data, headers=headers, verify=False, timeout=timeout)
        result.raise_for_status()
        return 0, result.json()['data']
    except requests.exceptions.Timeout as time_out_err:
        return -1, f"request out of time: f{time_out_err}"
    except requests.exceptions.HTTPError as http_err:
        return -1, f"HTTP error: {http_err}"
    except requests.exceptions.RequestException as err:
        return -1, f"request error happened: {err}"