类功能
功能描述
本地使用cn_clip启动模型,提供将图片和文本的embedding功能。ImageEmbedding类继承实现了langchain_core.embeddings.Embeddings接口。
函数原型
from mx_rag.embedding.local import ImageEmbedding ImageEmbedding(model_name, model_path, dev_id)
输入参数说明
参数名 |
数据类型 |
可选/必选 |
说明 |
---|---|---|---|
model_name |
str |
必选 |
模型名称,必须为['ViT-B-16', 'ViT-L-14', 'ViT-L-14-336', 'ViT-H-14', 'RN50']其中之一。 |
model_path |
str |
必选 |
模型权重文件目录,路径长度不能超过1024,不能为软链接和相对路径。
|
dev_id |
int |
可选 |
模型运行的NPU卡ID,取值范围[0, 63],默认为“0”。 |
返回值说明
ImageEmbedding对象。
调用示例
import sys from paddle.base import libpaddle from mx_rag.document.loader import ImageLoader from mx_rag.embedding.local import ImageEmbedding embed = ImageEmbedding.create(model_name="ViT-B-16", model_path="/data/chinese-clip-vit-base-patch16") print(embed.embed_documents(['abc', 'bcd'])) print(embed.embed_query('abc')) loader = ImageLoader("image path") docs = loader.load() if len(docs) < 1: print("load image failed") sys.exit(1) print(embed.embed_images([docs[0].page_content]))
父主题: ImageEmbedding类