马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
文本转换为向量有多种方式:
方法一:通过模子服务灵积DashScope将文本转换为向量(推荐)
方法二:通过ModelScope魔搭社区中的文本向量开源模子将文本转换为向量
方法三:通过Jina Embeddings v2模子将文本转换为向量
方法四:通过百川智能向量化模子将文本转换为向量
本文介绍方法二:如何通过ModelScope魔搭社区中的文本向量开源模子将文本转换为向量,并入库至向量检索服务DashVector中进行向量检索。
ModelScope魔搭社区旨在打造下一代开源的模子即服务共享平台,为泛AI开发者提供机动、易用、低成本的一站式模子服务产物,让模子应用更简单。
ModelScope魔搭社区的愿景是汇集行业领先的预训练模子,减少开发者的重复研发成本,提供更加绿色环保、开源开放的AI开发环境和模子服务,助力绿色“数字经济”奇迹的建设。 ModelScope魔搭社区将以开源的方式提供多类优质模子,开发者可在平台上免费体验与下载使用。
在ModelScope魔搭社区,您可以:
- 免费使用平台提供的预训练模子,支持免费下载运行
- 一行命令实现模子预测,简单快速验证模子效果
- 用自己的数据对模子进行调优,定制自己的个性化模子
- 学习系统性的知识,结合实训,有用提升模子研发能力
- 分享和贡献你的想法、评论与模子,让更多人熟悉你,在社区中成长
前提条件
- DashVector:
- ModelScope:
- 已安装最新版SDK:pip install -U modelscope
CoROM文本向量
简介
模子ID
| 向量维度
| 度量方式
| 向量数据类型
| 备注
| damo/nlp_corom_sentence-embedding_chinese-base
| 768
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_english-base
| 768
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_chinese-base-ecom
| 768
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_chinese-base-medical
| 768
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_chinese-tiny
| 256
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_english-tiny
| 256
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_chinese-tiny-ecom
| 256
| Cosine
| Float32
|
| damo/nlp_corom_sentence-embedding_chinese-tiny-medical
| 256
| Cosine
| Float32
|
| 说明
关于CoROM文本向量模子更多信息请参考:CoROM文本向量
使用示例
说明
必要进行如下替换代码才气正常运行:
- DashVector api-key替换示例中的{your-dashvector-api-key}
- DashVector Cluster Endpoint替换示例中的{your-dashvector-cluster-endpoint}
- 使用上表中模子ID替换示例中的{model_id}
- 需注意,若所使用的模子若为tiny模子,则向量维度为256
Python示例:- from modelscope.pipelines import pipeline
- from modelscope.utils.constant import Tasks
- from typing import List
- from dashvector import Client
- pipeline_se = pipeline(Tasks.sentence_embedding, model='{model_id}')
- def generate_embeddings(texts: List[str]):
- inputs = {'source_sentence': texts}
- result = pipeline_se(input=inputs)
- return result['text_embedding']
- ########### 以下为通用示例:向量入库DashVector和向量检索代码参考###########
- # 创建DashVector Client
- client = Client(
- api_key='{your-dashvector-api-key}',
- endpoint='{your-dashvector-cluster-endpoint}'
- )
- # 创建DashVector Collection
- # 注意:需根据模型对应向量维度调整dimension参数
- rsp = client.create('CoROM-text-embedding', dimension=768)
- assert rsp
- collection = client.get('CoROM-text-embedding')
- assert collection
- # 向量入库DashVector
- collection.insert(
- ('ID1', generate_embeddings(['阿里云向量检索服务DashVector是性能、性价比具佳的向量数据库之一'])[0])
- )
- # 向量检索
- docs = collection.query(
- generate_embeddings(['The best vector database'])[0]
- )
- print(docs)
复制代码
GTE文本向量
简介
模子ID
| 向量维度
| 度量方式
| 向量数据类型
| 备注
| damo/nlp_gte_sentence-embedding_chinese-base
| 768
| Cosine
| Float32
|
| damo/nlp_gte_sentence-embedding_chinese-large
| 768
| Cosine
| Float32
|
| damo/nlp_gte_sentence-embedding_chinese-small
| 512
| Cosine
| Float32
|
| damo/nlp_gte_sentence-embedding_english-base
| 768
| Cosine
| Float32
|
| damo/nlp_gte_sentence-embedding_english-large
| 768
| Cosine
| Float32
|
| damo/nlp_gte_sentence-embedding_english-small
| 384
| Cosine
| Float32
|
| 说明
关于GTE文本向量模子更多信息请参考:GTE文本向量
使用示例
本模子使用示例同CoROM文本向量-使用示例,进行相应模子ID和向量维度替换即可运行。
Udever 多语言通用文本表示模子
简介
模子ID
| 向量维度
| 度量方式
| 向量数据类型
| 备注
| damo/udever-bloom-560m
| 1024
| Cosine
| Float32
|
| damo/udever-bloom-1b1
| 1536
| Cosine
| Float32
|
| damo/udever-bloom-3b
| 2048
| Cosine
| Float32
|
| damo/udever-bloom-7b1
| 4096
| Cosine
| Float32
|
| 说明
关于Udever 多语言通用文本表示模子更多信息请参考:Udever 多语言通用文本表示模子
使用示例
本模子使用示例同CoROM文本向量-使用示例,进行相应模子ID和向量维度替换即可运行。
StructBERT FAQ问答
简介
模子ID
| 向量维度
| 度量方式
| 向量数据类型
| 备注
| damo/nlp_structbert_faq-question-answering_chinese-base
| 768
| Cosine
| Float32
|
| damo/nlp_structbert_faq-question-answering_chinese-finance-base
| 768
| Cosine
| Float32
|
| damo/nlp_structbert_faq-question-answering_chinese-gov-base
| 768
| Cosine
| Float32
|
| 说明
关于StructBERT FAQ问答模子更多信息请参考:StructBERT FAQ问答
使用示例
说明
必要进行如下替换代码才气正常运行:
- 使用上表中模子ID替换示例中的{model_id}
- from modelscope.pipelines import pipeline
- from modelscope.utils.constant import Tasks
- from typing import List
- pipeline = pipeline(Tasks.faq_question_answering, model='{model_id}')
- def generate_embeddings(texts: List[str], max_len=30):
- return pipeline.get_sentence_embedding(texts)
复制代码 说明
本示例中,向量入库DashVector和向量检索代码,参考CoROM文本向量-使用示例中的通用示例部门
更多文本向量模子
模子名称
| 模子ID
| 向量维度
| 度量方式
| 向量数据类型
| 备注
| Bert实体向量-中文-通用领域-base
| damo/nlp_bert_entity-embedding_chinese-base
| 768
| Cosine
| Float32
|
| 英文文本向量表示模子-TextRetrieval
| damo/nlp_minilm_ibkd_sentence-embedding_english-msmarco
| 384
| Cosine
| Float32
|
| 英文文本向量表示模子MiniLM-IBKD-STS
| damo/nlp_minilm_ibkd_sentence-embedding_english-sts
| 384
| Cosine
| Float32
|
| text2vec-base-chinese
| thomas/text2vec-base-chinese
| 768
| Cosine
| Float32
|
| text2vec-large-chinese
| thomas/text2vec-large-chinese
| 1024
| Cosine
| Float32
|
| 说明
- 列表中模子示例同CoROM文本向量-使用示例,进行相应模子ID和向量维度替换即可运行
- 更多ModelScope社区中的开源文本向量模子在本文中不再逐一列举,更多文本向量模子待您探索、发现和共建,点击进入。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |