Mistral AI 嵌入模型现可通过 Elasticsearch Open Inference API 获得
from elasticsearch import Elasticsearch
from elasticsearch.helpers import async_iter
# 假设Elasticsearch服务运行在localhost的9200端口
es = Elasticsearch("http://localhost:9200")
# 定义Open Inference API请求的参数
body = {
"pipeline": {
"processors": [
{
"inference": {
"model_id": "mistral_ai_embedding_model_id",
"inference_config": {
"index": "your_index_name",
"query": {
"match": {
"your_field_name": "your_query_text"
}
}
}
}
}
]
}
}
# 使用async_iter发送异步请求
async_result = es.ingest.put_pipeline(id="mistral_ai_embedding_pipeline", body=body, params={"human": True})
# 异步获取结果
async for response in async_iter(async_result):
print(response)
这段代码演示了如何在Elasticsearch中定义和运行一个Open Inference API的pipeline,用于执行Mistral AI的嵌入模型。代码中使用了异步请求来提高性能,并通过迭代器异步接收结果。在实际应用中,需要替换相关字段,如模型ID、索引名、字段名和查询文本,以适应具体的使用场景。
评论已关闭