当前KServe Docker镜像基于openEuler构建。本仓库可免费使用,且不受每用户速率限制。
KServe提供Kubernetes自定义资源定义,用于服务预测性和生成式机器学习(ML)模型。其旨在通过为TensorFlow、XGBoost、ScikitLearn、PyTorch、Huggingface Transformer/LLM模型提供基于标准化数据平面协议的高抽象接口,解决生产环境中的模型服务用例。
KServe封装了自动扩展、网络、健康检查和服务器配置的复杂性,为ML部署带来前沿服务特性,如GPU自动扩展、缩零和金丝雀发布。它为生产ML服务提供了简单、可插拔且完整的解决方案,包括预测、预处理、后处理和可解释性。KServe已在https://kserve.github.io/website/master/community/adopters/%E3%80%82
更多详情,请访问https://kserve.github.io/website/%E3%80%82
每个KServe Docker镜像的标签由完整的软件栈版本组成,详情如下:
| 标签 | 当前内容 | 架构 |
|---|---|---|
| 0.15.2-oe2403lts | 基于openEuler 24.03-LTS的KServe控制器0.15.2 | amd64 |
KServe快速启动环境仅用于实验。生产环境安装,请参见https://kserve.github.io/website/latest/admin/serverless/serverless/%E3%80%82
开始KServe快速启动部署前,必须安装kind和Kubernetes CLI。
可使用kind(Docker中的Kubernetes)在Docker容器节点上运行本地Kubernetes集群。
Kubernetes CLI (kubectl)允许您对Kubernetes集群运行命令。可使用kubectl部署应用、检查和管理集群资源以及查看日志。
Helm是Kubernetes的包管理器,帮助您定义、安装和升级为Kubernetes构建的软件。
安装kind后,创建kind集群:
shellkind create cluster
然后运行:
shellkubectl config get-contexts
应列出您拥有的上下文列表,其中一个应为kind-kind。然后运行:
shellkubectl config use-context kind-kind
以使用此上下文。
随后,可通过在Kind上使用KServe快速安装脚本来开始本地部署KServe:
shellcurl -s "https://gitee.com/openeuler-docker-images/raw//master/AI/kserve/controller/doc/quick_install.sh" | bash
本示例演示如何通过部署带有https://github.com/kserve/kserve/tree/master/python/huggingfaceserver%E7%9A%84InferenceService%EF%BC%8C%E4%BB%8EHugging Face部署Llama3模型用于文本生成任务。
KServe Hugging Face运行时默认使用vLLM服务LLM模型,相比Hugging Face API具有更快的首令牌生成时间(TTFT)和更高的令牌生成吞吐量。vLLM通过常见的推理优化技术实现,如分页注意力、连续批处理和优化的CUDA内核。如果模型不受vLLM支持,KServe会回退到HuggingFace后端作为安全机制。
Llama3模型需要huggingface hub令牌才能下载。可使用HF_TOKEN环境变量设置令牌。
创建包含Hugging Face令牌的密钥:
yamlapiVersion: v1 kind: Secret metadata: name: hf-secret type: Opaque stringData: HF_TOKEN: <token>
然后创建推理服务:
yamlkubectl apply -f - <<EOF apiVersion: serving.kserve.io/v1beta1 kind: InferenceService metadata: name: huggingface-llama3 spec: predictor: model: modelFormat: name: huggingface args: - --model_name=llama3 - --model_id=meta-llama/meta-llama-3-8b-instruct env: - name: HF_TOKEN valueFrom: secretKeyRef: name: hf-secret key: HF_TOKEN optional: false resources: limits: cpu: "6" memory: 24Gi nvidia.com/gpu: "1" requests: cpu: "6" memory: 24Gi nvidia.com/gpu: "1" EOF
检查InferenceService状态:
shellkubectl get inferenceservices huggingface-llama3
预期输出:
shellNAME URL READY PREV LATEST PREVROLLEDOUTREVISION LATESTREADYREVISION AGE huggingface-llama3 http://huggingface-llama3.default.example.com True 100 huggingface-llama3-predictor-default-47q2g 7d23h
第一步是https://kserve.github.io/website/latest/get_started/first_isvc/#4-determine-the-ingress-ip-and-ports%E5%92%8C%E7%AB%AF%E5%8F%A3%EF%BC%8C%E5%B9%B6%E8%AE%BE%E7%BD%AE%60INGRESS_HOST%60%E5%92%8C%60INGRESS_PORT%60%EF%BC%9A
shellMODEL_NAME=llama3 SERVICE_HOSTNAME=$(kubectl get inferenceservice huggingface-llama3 -o jsonpath='{.status.url}' | cut -d "/" -f 3)
KServe Hugging Face vLLM运行时支持OpenAI的/v1/completions和/v1/chat/completions端点用于推理。
OpenAI Completions请求示例:
shellcurl -v http://${INGRESS_HOST}:${INGRESS_PORT}/openai/v1/completions \ -H "content-type: application/json" -H "Host: ${SERVICE_HOSTNAME}" \ -d '{"model": "llama3", "prompt": "Write a poem about colors", "stream":false, "max_tokens": 30}'
预期输出:
shell{ "id": "cmpl-625a9240f25e463487a9b6c53cbed080", "choices": [ { "finish_reason": "length", "index": 0, "logprobs": null, "text": " and how they make you feel\nColors, oh colors, so vibrant and bright\nA world of emotions, a kaleidoscope in sight\nRed" } ], "created": ***, "model": "llama3", "system_fingerprint": null, "object": "text_completion", "usage": { "completion_tokens": 30, "prompt_tokens": 6, "total_tokens": 36 } }
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务