Aip服务
介绍
1.系统提供ArkData智慧数据平台(ArkData Intelligence Platform,AIP),提供端侧数据智慧化构建,使应用数据向量化,通过嵌入模型将非结构化的文本、图像等多模态数据,转换成具有语义的向量。
详细的接口介绍请参考智慧数据平台。
从API version 15开始,支持应用数据向量化。
2.实现对以下指南文件中 应用数据向量化 (ArkTS)示例代码片段的工程化。保证指南中示例代码与sample工程文件同源。
效果预览
| 页面说明 | 截图 |
|---|---|
| index页面 | ![]() |
| 获取文本模型 | ![]() |
| 加载文本模型 | ![]() |
| 获取文本向量 | ![]() |
| 释放文本模型 | ![]() |
| 获取文本分块 | ![]() |
| 获取图像模型 | ![]() |
| 加载图像模型 | ![]() |
| 获取图像向量 | ![]() |
| 释放图像模型 | ![]() |
使用说明
- 在主界面,点击获取文本模型按钮来获取对应文本模型,点击加载文本模型按钮去加载文本模型,点击获取文本向量按钮获取输入文本的向量化结果,点击释放文本模型按钮来释放文本模型,点击获取文本分块按钮获取输入文本的分块结果; 点击获取图像模型按钮来获取对应图像模型,点击加载图像模型按钮去加载图像模型,点击获取图像向量按钮输入图像的向量化结果,点击释放图像模型按钮来释放图像模型。
工程目录
entry/src/
├── main
│ ├── ets
│ │ ├── entryability
│ │ ├── entrybackupability
│ │ └── pages
│ │ └── Index.ets // Aip调用
│ ├── module.json5
│ └── resources
└── ohosTest
└── ets
└── test
└── Ability.test.ets // 自动化测试代码
具体实现
-
调用端调用getTextEmbeddingModel接口获取文本模型:
-
调用loadModel接口加载文本模型。
-
调用getEmbedding接口获取文本的向量化结果。
-
调用releaseModel接口释放文本模型。
-
-
调用端调用splitText接口获取文本分块的结果:
-
调用端调用getImageEmbeddingModel接口获取图像模型:
-
调用loadModel接口加载图像模型。
-
调用getEmbedding接口获取图像的向量化结果。
-
调用releaseModel接口释放图像模型。
-
相关权限
不涉及。
依赖
不涉及。
约束与限制
1.考虑到数据向量化处理的计算量和资源占用较大,当前仅支持在2in1设备上使用。
2.嵌入模型的推理过程可使用NPU加速。与NPU计算相比,纯CPU的计算在时延和功耗上都有较大差距,建议采用NPU加速。
3.模型推理单次可处理的文本长度上限为512个字符,支持中英文。
4.模型推理单次可处理的图像大小小于20MB。
5.本示例为Stage模型,支持API14版本full-SDK,版本号:5.0.2.57,镜像版本号:OpenHarmony_5.0.2.58。
6.本示例需要使用DevEco Studio 5.0.1 Release (Build Version: 5.0.5.306, built on December 6, 2024)及以上版本才可编译运行。
下载
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo ArkData/Aip > .git/info/sparse-checkout
git remote add origin https://gitee.com/harmonyos_samples/guide-snippets.git
git pull origin master









