通过DashScope API调用将多种模态转换为向量

打印 上一主题 下一主题

主题 1780|帖子 1780|积分 5340

本文介绍如何通过模型服务灵积DashScope进行 多模态向量生成 ,并入库至向量检索服务DashVector中进行向量检索。
模型服务灵积DashScope,通过机动、易用的模型API服务,让各种模态模型的能力,都能方便的为AI开辟者所用。通过灵积API,开辟者不仅可以直接集成大模型的强大能力,也可以对模型进行练习微调,实现模型定制化。
条件条件


  • DashVector:

    • 已创建Cluster
    • 已获得API-KEY
    • 已安装最新版SDK
    • 已开通服务并获得API-KEY
    • 已安装最新版SDK

ONE-PEACE多模态向量表征

简介

ONE-PEAC是一个 图文音三模态 通用表征模型,在语义分割、音文检索、音频分类和视觉定位几个任务都到达了新SOTA表现,在视频分类、图像分类、图文检索、以及多模态经典benchmark也都取得了比力领先的结果。

分析
关于灵积ONE-PEACE多模态向量表征更多信息请参考:ONE-PEACE多模态向量表征
使用示例

分析
需要进行如下替换代码才能正常运行:

  • DashVector api-key替换示例中的
  • DashVector Cluster Endpoint替换示例中的
  • DashScope api-key替换示例中的
Python
  1. import dashscope
  2. from dashscope import MultiModalEmbedding
  3. from dashvector import Client
  4. dashscope.api_key = '{your-dashscope-api-key}'
  5. # 调用DashScope ONE-PEACE模型,将各种模态素材embedding为向量
  6. def generate_embeddings(text: str = None, image: str = None, audio: str = None):
  7.     input = []
  8.     if text:
  9.         input.append({'text': text})
  10.     if image:
  11.         input.append({'image': image})
  12.     if audio:
  13.         input.append({'audio': audio})
  14.     result = MultiModalEmbedding.call(
  15.         model=MultiModalEmbedding.Models.multimodal_embedding_one_peace_v1,
  16.         input=input,
  17.         auto_truncation=True
  18.     )
  19.     if result.status_code != 200:
  20.         raise Exception(f"ONE-PEACE failed to generate embedding of {input}, result: {result}")
  21.     return result.output["embedding"]
  22. # 创建DashVector Client
  23. client = Client(
  24.     api_key='{your-dashvector-api-key}',
  25.     endpoint='{your-dashvector-cluster-endpoint}'
  26. )
  27. # 创建DashVector Collection
  28. rsp = client.create('one-peace-embedding', 1536)
  29. assert rsp
  30. collection = client.get('one-peace-embedding')
  31. assert collection
  32. # 向量入库DashVector
  33. collection.insert(
  34.     [
  35.         ('ID1', generate_embeddings(text='阿里云向量检索服务DashVector是性能、性价比具佳的向量数据库之一')),
  36.         ('ID2', generate_embeddings(image='https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png')),
  37.         ('ID3', generate_embeddings(audio='https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac')),
  38.         ('ID4', generate_embeddings(
  39.             text='阿里云向量检索服务DashVector是性能、性价比具佳的向量数据库之一',
  40.             image='https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png',
  41.             audio='https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac'
  42.         ))
  43.     ]
  44. )
  45. # 向量检索
  46. docs = collection.query(
  47.     generate_embeddings(text='The best vector database')
  48. )
  49. print(docs)
复制代码
干系最佳实践


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

盛世宏图

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表