如何将文本转换为向量?

news/2024/11/19 11:37:15/文章来源:https://www.cnblogs.com/DashVector/p/18291398

 本文介绍如何通过模型服务灵积DashScope文本转换为向量,并入库至向量检索服务DashVector中进行向量检索。

模型服务灵积DashScope,通过灵活、易用的模型API服务,让各种模态模型的能力,都能方便的为AI开发者所用。通过灵积API,开发者不仅可以直接集成大模型的强大能力,也可以对模型进行训练微调,实现模型定制化。

前提条件

  • DashVector:

    • 已创建Cluster:创建Cluster

    • 已获得API-KEY:API-KEY管理

    • 已安装最新版SDK:安装DashVector SDK

  • DashScope:

    • 已开通服务并获得API-KEY:开通DashScope并创建API-KEY

    • 已安装最新版SDK:安装DashScope SDK

通用文本向量

简介

通用文本向量,是通义实验室基于LLM底座的多语言文本统一向量模型,面向全球多个主流语种,提供高水准的向量服务,帮助开发者将文本数据快速转换为高质量的向量数据。

模型名称

向量维度

度量方式

向量数据类型

备注

text-embedding-v1

1536

Cosine

Float32

  • 单行最大输入字符长度:2048

  • 单次请求文本最大行数:25

  • 支持语种:中文、英语、西班牙语、法语、葡萄牙语、印尼语

text-embedding-v2

1536

Cosine

Float32

  • 单行最大输入字符长度:2048

  • 单次请求文本最大行数:25

  • 支持语种:中文、英语、西班牙语、法语、葡萄牙语、印尼语、日语、韩语、德语、俄罗斯语

说明

关于灵积通用文本向量更多信息请参考:通用文本向量

使用示例

说明

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

  1. DashVector api-key替换示例中的{your-dashvector-api-key}

  2. DashVector Cluster Endpoint替换示例中的{your-dashvector-cluster-endpoint}

  3. DashScope api-key替换示例中的{your-dashscope-api-key}

Python示例:

import dashscope
from dashscope import TextEmbedding
from dashvector import Client
from typing import List, Uniondashscope.api_key = '{your-dashscope-api-key}'# 调用DashScope通用文本向量模型,将文本embedding为向量
def generate_embeddings(texts: Union[List[str], str], text_type: str = 'document'):rsp = TextEmbedding.call(model=TextEmbedding.Models.text_embedding_v2,input=texts,text_type=text_type)embeddings = [record['embedding'] for record in rsp.output['embeddings']]return embeddings if isinstance(texts, list) else embeddings[0]# 创建DashVector Client
client = Client(api_key='{your-dashvector-api-key}',endpoint='{your-dashvector-cluster-endpoint}'
)# 创建DashVector Collection
rsp = client.create('dashscope-text-embedding', 1536)
assert rsp
collection = client.get('dashscope-text-embedding')
assert collection# 向量入库DashVector
collection.insert(('ID1', generate_embeddings('阿里云向量检索服务DashVector是性能、性价比具佳的向量数据库之一'))
)# 向量检索
docs = collection.query(generate_embeddings('The best vector database', 'query')
)
print(docs)

相关最佳实践

  • 基于向量检索服务与TextEmbedding实现语义搜索

  • DashVector x 通义千问大模型:打造基于专属知识的问答服务


ONE-PEACE多模态向量表征

ONE-PEAC是一个图文音三模态通用表征模型,同样可通过ONE-PEAC将文本转换为向量。

详情参考:从多种模态混合生成向量 —— ONE-PEACE多模态向量表征


免费体验阿里云高性能向量检索服务https://www.aliyun.com/product/ai/dashvector

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/741047.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(八)ADO.NET用窗体应用程序写增删查改——改(1.1升级版)

在1.0版本中,紧接前面两节“增”、“删”、“查”代码,这里新增“改”功能 一、首先编辑好要修改的控件和相关属性,这里“编号”默认只读属性(ReadOnly)二、其次,修改下窗体显示的代码,让数据直接显示出来,这里我们用一个方法封装好,直接在窗体加载事件(Load)中调用…

机器人(Turtlebot3+OpenMANIPULATOR-X) 远程操作和控制演示

原文链接:Robot (Turtlebot3 + OpenMANIPULATOR-X) Teleoperation and Control demonstration (youtube.com) 在机器人技术的前沿,Turtlebot3与OpenMANIPULATOR-X的结合展示了远程操作和控制的新境界。Turtlebot3,一个多功能移动平台,搭载先进的传感器,能够自主导航并避开…

【触想智能】工业一体机在工程机械车辆上的应用分析

随着工程机械行业的不断发展和自动化程度的提高,工业一体机在工程机械车辆上的应用越来越广泛。工业一体机是集电脑、显示器、触摸屏、通讯、测量、控制等多种功能于一体的高度集成化的工业控制系统,在工程机械车辆上的应用可以为用户提供更为便捷、高效、安全的操作体验。下…

RK3588开发笔记(四):基于定制的RK3588一体主板升级镜像

前言方案商定制的主板,加入了360环视算法功能,涉及到了一些库的添加,重新制作了依赖库的镜像,镜像更新的原来的板子上。 定制的板子升级接口type-c设计接口是type-c,需要通过type-c数据线转USB连接电脑,这里开发板都是USB对USB口的线,设计有所不同。  升级按键方法这里…

深度解读昇腾CANN内存复用技术,降低网络内存占用

内存复用技术可在不影响网络执行性能的前提下降低内存占用,结合Topo优化可以进一步降低内存占用,且对执行性能影响也较小。本文分享自华为云社区《深度解读昇腾CANN内存复用技术,降低网络内存占用》,作者: 昇腾CANN。 随着大模型的兴起,神经网络规模不断扩大,对内存资源…

备份脚本

1.Oracle RMAN备份 1.1 创建目录[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/script[oracle@OEL7 ~]$ cd /u01/dbbak[oracle@OEL7 ~]$ chown -R oracle:oinstall script[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/db[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/arch[oracle@OEL7 ~]$ cd /u01/…

聊聊springboot项目如何利用jmh来进行基准测试

前言1、什么是JMHJMH(Java Microbenchmark Harness)是由OpenJDK团队开发的一个用于Java微基准测试工具套件,主要是基于方法层面的基准测试,精度可以达到纳秒级。它提供了一种标准、可靠且可重复的方式来衡量Java代码的性能,包括方法调用、对象创建以及其他类型的 JVM 级别…

echart - x轴文字太长换行、文字倾斜、文字竖直展示

echart - x轴文字太长换行、文字倾斜、文字竖直展示 设置超过几个字换行显示xAxis: {axisLabel: {formatter: function (params) {var str = ""; // 最终拼接成的字符串var paramsLen = params.length;// 获取每项文字的个数var len = 4; …

Vscode+CodeRunner 更加优雅的运行MPICC

Vscode+CodeRunner 更加优雅的运行MPICC 1.安装 在VsCode拓展中安装CodeRunner2.配置点击设置点击 在setting.json中编辑3.setting.json设置 这里我们以cpp为例 偷懒可以直接把下面的json文件做替换 {"workbench.colorTheme": "Quiet Light","remote.…

几行代码,优雅的避免接口重复请求!同事都说好!

背景简介 我们日常开发中,经常会遇到点击一个「按钮」或者进行「搜索」时,请求接口的需求。 如果我们不做优化,连续点击「按钮」或者进行「搜索」,接口会重复请求。❝ 首先,这会导致性能浪费!最重要的,如果接口响应比较慢,此时,我们在做其他操作会有一系列bug! ❞ 那…

Windows远程桌面的奇技淫巧

远程桌面协议(RDP)是一个多通道(multi-channel)的协议,让使用者连上提供微软终端机服务的计算机(称为服务端或远程计算机)。在获取权限后,针对3389进行展开,先查询3389端口是否开启,发现没有开启(也有可能更改了端口),则可以通过注册表进行手动启动。前言Windows远程桌面…

路径规划(2)——A*算法

1、A*算法原理搜索区域(The Search Area):图中的搜索区域被划分为了简单的二维数组,数组每个元素对应一个小方格,当然我们也可以将区域等分成是五角星,矩形等,通常将一个单位的中心点称之为搜索区域节点(Node)。   开放列表(Open List):我们将路径规划过程中待检测…