embedding_v2是 embedding 接口的较新版本,建议使用此接口进行向量化处理。 embedding用于将非结构化数据向量化,通过深度学习神经网络提取文本、图片、音视频等非结构化数据里的内容和语义,把文本、图片、音视频等变成特征向量。
异步调用使用async_embedding_v2接口,参数不变。
说明
参数 | 子参数 | 类型 | 是否必选 | 说明 |
---|---|---|---|---|
EmbModel 说明 EmbModel 实例。 | modelName | string | 是 | 指定模型名称,当前支持的模型有:
|
params | map | 否 | return_token_usage - 返回请求消耗的token数, 默认关闭 | |
RawData 说明 RawData 实例或者列表,最大 100 个。 | dataType | string | 是 | 支持如下类型:
|
text | string | data_type 为 text 或 text-image时,必选 | 当 data_type=text 时,直接传入类型为 string 的文本。 | |
image | string | data_type 为 image 或 text-image时,必选 | data_type=image时,传入图片内容的base64编码 |
HashMap<String, Object> params = new HashMap<>(); params.put("return_token_usage", true); ArrayList<RawData> rawDatas = new ArrayList<>(); rawDatas.add(new RawData().setDataType("text").setText("hello1").build()); rawDatas.add(new RawData().setDataType("text").setText("hello2").build()); Map<String, Object> res = vikingDBService.embeddingV2(new EmbModel().setModelName("bge-m3").setParams(params).build(), rawDatas); System.out.println(res);
Python 调用执行上面的任务,返回 list<float> 、list<list<float>> 类型的向量。