---
title: clip-service
description: 昇腾社区是基于昇腾系列处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务，包括昇腾系列处理器、系列硬件、CANN异构计算架构、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链。
keywords: 公开,概述,配套软件版本,使用前提,如何使用镜像,镜像下载,启用镜像,已测试支持的模型
url: https://www.hiascend.com/developer/ascendhub/detail/clip-service
section: (其他)
---

# clip-service

URL: https://www.hiascend.com/developer/ascendhub/detail/clip-service
描述: 昇腾社区是基于昇腾系列处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务，包括昇腾系列处理器、系列硬件、CANN异构计算架构、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链。
关键词: 公开,概述,配套软件版本,使用前提,如何使用镜像,镜像下载,启用镜像,已测试支持的模型

昇腾镜像仓库 [了解详情](https://www.hiascend.com/developer/ascendhub)

clip-service

## clip-service公开

最新版本：7.0.RC1-800I-A2-aarch642026/06/05更新大小：13 GB发布者：MindCluster123次下载

推理

镜像概述

镜像下载

镜像概述

镜像下载

...

# 概述

该镜像基于clip-as-service适配昇腾NPU卡提供图像和文本的embedding服务化接口，该镜像默认以普通用户HwHiAiUser用户运行

# 配套软件版本：

| 镜像版本 | CANN版本 | HDK版本 | 支持的设备 | 架构 | clip-as-service 版本 |
| --- | --- | --- | --- | --- | ---|
| clip-service:7.0.RC1-800I-A2-aarch64 | 8.0.RC2 | 24.1.0 | Atlas 800I A2 | aarch64 | v0.8.3 |
| clip-service:7.0.RC1-300I-Duo-aarch64 | 8.0.RC2 | 24.1.0 | Atlas 300I Duo | aarch64 | v0.8.3 |

# 使用前提

- 物理机已安装Docker，且Docker网络可用
- 物理机已安装Ascend Docker Runtime
- 物理机上有配套Ascend NPU芯片
- 如果容器以普通用户运行HwHiAiUser物理机上安装驱动时需添加--install-for-all选项

# 如何使用镜像

## 镜像下载

1. 点击获取镜像
2. 点击镜像版本立即下载
3. 获取镜像下载凭证

## 启用镜像

启动方式如下：

```
docker run -e ASCEND_VISIBLE_DEVICES=0 --rm -itd --name=clip-server --network=host \
    -v </path/to/model>:/model \
    -v </path/to/torchnpu-flow.yml>:/clip/torchnpu-flow.yml:ro \
    -e http_proxy=http://10.169.47.233:3128 \
    -e https_proxy=http://10.169.47.233:3128 \
    -e no_proxy=localhost,127.0.0.1,0.0.0.0,::1 \
    <image id>
```

参数介绍：

- `-e ASCEND_VISIBLE_DEVICES`: 挂载指定的npu卡到容器中，只有宿主机安装了Ascend Docker Runtime，此环境变量才会生效，如果未安装Ascend Docker Runtime,可参考配置如下参数挂载指定的卡到容器

```
    --device=/dev/davinci_manager \
    --device=/dev/hisi_hdc \
    --device=/dev/devmm_svm \
    --device=/dev/davinci0 \
    --device=/dev/davinci1 \
    -v /usr/local/Ascend/driver:/usr/local/Ascend/driver:ro \
    -v /usr/local/sbin:/usr/local/sbin:ro \
```

- `/path/to/model`: clip模型（pt文件）存放的目录，如/home/data/clip，不能配置为/home和/home/HwHiAiUser
- `/path/to/torchnpu-flow.yml`: clip服务的配置文件，在该配置文件中可设置协议、端口、实例数等
- `image id`：从ascendhub网上拉取镜像后的镜像ID

配置文件样例：

```
jtype: Flow
version: '1'
gateway:
  title: Clip Service
  description: A clip service that embeds text or images.
  prefetch: 100
  grpc_server_options:
    grpc.keepalive_time_ms: 300000
    grpc.keepalive_timeout_ms: 20000
  grpc_channel_options:
    grpc.keepalive_time_ms: 300000
    grpc.keepalive_timeout_ms: 20000
  port:
    - 2096
  protocol:
    - http
  cors: true
  no_crud_endpoints: true
  no_debug_endpoints: true
  expose_endpoints:
    /encode:
      methods: ["POST"]
      summary: Encode texts or images
      tags:
        - embedding
executors:
  - name: clip_t
    uses:
      jtype: CLIPEncoder
      with:
        name: CN-CLIP/ViT-B-16
        num_worker_preprocess: 16
        minibatch_size: 32
        jit: false
      metas:
        py_modules:
          - clip_server.executors.clip_torch
    timeout_ready: 3000000
    replicas: 1

```

关键参数介绍：

- `gateway.protocol`:支持http和grpc两种协议
- `gateway.port`: 服务的端口号，默认为2096
- `executors.uses.with.name`: 模型的名字，默认为`CN-CLIP/ViT-B-16`
- 更多参数的介绍请参考CLIP-as-service网站 [了解详情](https://clip-as-service.jina.ai/user-guides/server/)

## 已测试支持的模型

| 模型规模 | 下载链接 | 参数量 | 视觉侧骨架 | 视觉侧参数量 | 文本侧骨架 | 文本侧参数量 | 分辨率 |
| --- | --- | --- | --- | --- | --- | --- | ---|
| CN-CLIPRN50 | Download | 77M | ResNet50 | 38M | RBT3 | 39M | 224 |
| CN-CLIPViT-B/16 | Download | 188M | ViT-B/16 | 86M | RoBERTa-wwm-Base | 102M | 224 |
| CN-CLIPViT-L/14 | Download | 406M | ViT-L/14 | 304M | RoBERTa-wwm-Base | 102M | 224 |
| CN-CLIPViT-L/14@336px | Download | 407M | ViT-L/14 | 304M | RoBERTa-wwm-Base | 102M | 336 |
| CN-CLIPViT-H/14 | Download | 958M | ViT-H/14 | 632M | RoBERTa-wwm-Large | 326M | 224 |

## 接口测试

执行如下命令测试服务化接口是否启动运行OK：

```
curl -X POST 'http://127.0.0.1:2096/encode' \
--header 'Content-Type: application/json' \
--data '{
    "data": [
        {"text": "This is clip service"},
        {
            "blob": "R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7"
        }
    ],
    "parameters": {"drop_image_content": true}
}'
```

FAQ

- 启动容器失败，报错：Available device not found

定位解决思路：
 请确保指定卡正确挂载到容器中
 可能存在的原因：

· 宿主机Ascend Docker Runtime，导致环境变量ASCEND_VISIBLE_DEVICES未生效

· 普通用户运行HwHiAiUser运行容器，宿主机上驱动安装未配置--install-for-all参数

· 运行的卡已被其他容器挂载

clip-service 镜像版本

| 版本 | 文件大小 | 更新时间 | 架构 | 操作 |
| --- | --- | --- | --- | ---|
| 7.0.RC1-800I-A2-aarch64 | 13 GB | 2025/04/08 | arm64 | 立即下载 |
| 7.0.RC1-300I-Duo-aarch64 | 13 GB | 2025/04/08 | arm64 | 立即下载 |
