You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Vertex AI自定义容器端点创建Prometheus指标

自定义容器部署Vertex AI Endpoint配置Prometheus指标方案

一、可行性结论

完全可以为搭载自定义容器的Vertex AI Endpoint配置Prometheus自定义指标,无需依赖日志生成指标,能有效避免大量日志产生的问题。

二、具体操作步骤

1. 在自定义容器中暴露Prometheus指标端点

  • 为模型服务代码集成对应语言的Prometheus客户端库:Python用prometheus-client,Go用官方prometheus库,Java用simpleclient等。
  • 定义业务所需的自定义指标,比如用于监控预测分布的直方图、请求计数、延迟统计等。
  • 启动一个独立的HTTP服务(推荐用9090端口,可自定义),暴露/metrics端点供指标抓取。
    以下是Python示例代码片段:
    from prometheus_client import start_http_server, Histogram, Counter
    from flask import Flask, request, jsonify
    
    # 定义自定义指标
    prediction_distribution = Histogram(
        "prediction_value_histogram",
        "Distribution of model prediction values",
        buckets=[0, 0.2, 0.4, 0.6, 0.8, 1.0]
    )
    total_prediction_requests = Counter(
        "prediction_requests_total",
        "Total number of prediction requests received"
    )
    
    app = Flask(__name__)
    # 模拟模型预测逻辑
    def model_predict(input_data):
        return float(input_data["feature"]) * 0.5
    
    @app.post("/predict")
    def predict():
        req_data = request.get_json()
        pred_result = model_predict(req_data)
        # 更新指标
        prediction_distribution.observe(pred_result)
        total_prediction_requests.inc()
        return jsonify({"prediction": pred_result})
    
    if __name__ == "__main__":
        # 启动Prometheus指标端点
        start_http_server(9090)
        # 启动模型服务
        app.run(host="0.0.0.0", port=8080)
    
  • 确保容器启动时,模型服务和指标端点服务同时运行(可通过启动脚本或进程管理器实现)。

2. 配置Vertex AI Endpoint的监控抓取规则

  • 使用gcloud命令部署:添加--monitoring-config参数指定指标端口和路径,示例命令如下:
    gcloud ai endpoints deploy-model YOUR_ENDPOINT_ID \
      --model=YOUR_MODEL_ID \
      --machine-type=n1-standard-4 \
      --container-image-uri=YOUR_GCR_IMAGE_URI \
      --monitoring-config=port=9090,path=/metrics
    
  • 使用控制台部署:在部署流程的「高级设置」-「监控配置」中,勾选「启用自定义指标」,填写指标端口(如9090)和路径(/metrics)。

3. 在Cloud Monitoring中查看与使用自定义指标

  • 部署完成后,Cloud Monitoring会自动开始周期性抓取自定义容器暴露的指标。
  • 进入Cloud Monitoring控制台,打开「指标资源管理器」,在指标列表中选择「Vertex AI」下的自定义指标(即你定义的prediction_value_histogram等),即可查看指标数据。
  • 可基于这些指标创建自定义仪表盘、设置告警规则,实现对预测分布等业务维度的监控。

三、关键注意事项

  • 指标端口不能与模型服务端口冲突(常规模型服务用8080,建议指标用9090)。
  • 确保容器内的指标端点服务绑定0.0.0.0,允许外部访问。
  • 指标命名需符合Cloud Monitoring规范,仅使用字母、数字和下划线,避免特殊字符。

内容的提问来源于stack exchange,提问作者jiaoshang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 08:35:40