华为云Flexus企业搜索服务对接使用完全指南
引言:企业搜索的智能化演进
在数字化转型的浪潮中,企业面临着海量内部数据的检索与管理挑战。传统的关键词搜索已难以满足精准、高效的知识获取需求,检索增强生成技术的出现为企业搜索带来了新的可能。华为云Flexus企业搜索服务正是基于这一背景应运而生,它为企业提供了一站式的智能搜索解决方案。
Flexus企业搜索服务是华为云KooSearch产品体系中的重要组成部分,基于云搜索服务搭建,旨在帮助企业聚焦业务场景和应用开发。该服务在RAG及搜索场景中提供效果和性能突出的组件化服务,通过架构理想、灵活编排的机制,帮助企业客户快速构建RAG以及搜索服务。目前该服务仅支持在西南-贵阳一区域开通和使用。
需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联
一、Flexus企业搜索服务核心能力解读
1.1 产品定位与技术架构
Flexus企业搜索服务是一款全托管的搜索服务,目前为华为内部办公、客户站内搜索等业务提供搜索服务支持。通过内置的行业分词、语义理解、行业排序算法等能力,为客户提供高质量的企业级搜索体验。该服务兼容开源Elasticsearch软件原生接口,支持Logstash、Beats、Kibana等周边生态,能够无缝对接Ftp、OBS、Hbase、Kafka等多种数据源。
在核心技术层面,Flexus企业搜索服务具备以下显著优势:
- 内核增强:性能优化使数据写入性能相比开源ES提升50%,聚合分析加速使基于排序字段的统计分析性能相比开源ES提升200%,支持存算分离使冷数据存储成本相比开源ES下降80%,支持ZSTD压缩使数据存储空间降低20%。
- 语义搜索增强:基于盘古大模型技术的文本向量大模型效果优于业界平均水平,自研向量检索引擎在ann-benchmarks评测中排名第一。
- 无忧运维:一键申请集群、一键扩容、一键重启,从小规模测试到大规模上线,所有主要操作均一键可达。智能运维模块可全面检测集群潜在风险,输出风险处理的建议并告警。
1.2 适用场景
Flexus企业搜索服务覆盖多个业务场景。在站内搜索场景中,可对网站内容进行关键字检索、对电商商品进行检索与推荐,支持实时检索、分类统计和高亮提示。在全场景日志分析场景中,云搜索服务可用于ELB日志、服务器日志、容器和应用日志的分析,Kafka作为消息缓冲队列用于削峰填谷,Logstash负责数据ETL,Elasticsearch负责数据检索与分析,最后由Kibana以可视化方式呈现。在数据库查询加速场景中,电商、物流企业的订单查询业务可通过将CSS作为备数据库,提升整个系统的TP与AP处理能力。在向量检索场景中,可对图像、视频、语料等非结构化数据提取的特征向量进行最近邻或近似近邻检索。
Flexus AI智能体凭借华为的搜索大模型,在企业知识问答、智能问数等高频场景中,准确率高于业界平均水平2至9个百分点。
二、服务开通与实例创建
2.1 开通前置条件
在使用Flexus企业搜索服务之前,需要完成以下准备工作:首先注册华为账号并开通华为云服务。然后登录云搜索服务管理控制台。在左侧导航栏中选择KooSearch下的Flexus企业搜索服务,进入服务页面。单击页面右上角的购买Flexus企业搜索服务按钮进入购买页面。
2.2 购买配置详解
在购买页面中,需要配置一系列关键参数。版本规格方面,智能问答版提供内置大语言模型,可一站式快速搭建企业级RAG服务;经济集群、普通集群、分析型集群等规格可满足不同成本、性能及技术创新的诉求。实例名称需自定义,用于标识该Flexus企业搜索服务实例。区域选择目前仅西南-贵阳一支持该服务。网络配置需选择虚拟私有云和子网,后续对接其他服务时需保持同一VPC。
购买时长支持按月购买,购买周期越长价格越优惠。最短时长为1个月,最长时长为1年。如果购买时长超过3个月,建议包年购买以获得更优惠的价格,也可勾选自动续费复选框。配置完成后单击立即购买,确认信息无误后单击去支付,根据页面提示完成付款即可完成KooSearch的开通。
2.3 创建后的初始配置
服务开通后,在左侧导航栏选择文档问答服务,单击操作列的问答即可前往KooSearch控制台。在控制台中可根据名称或ID单击进入已购买的服务。在API管理页面可获取接口调用的相关信息。
三、控制台对接使用详解
3.1 知识库的创建与管理
知识库是Flexus企业搜索服务的核心数据载体。在KooSearch控制台左侧导航栏选择知识库管理,进入知识库管理页面。单击创建知识库按钮,填写知识库名称和描述信息,选择所需的模型服务配置。创建成功后系统会生成唯一的知识库ID,该ID在后续API调用中至关重要。
知识库创建完成后,可进行文档的上传与管理。支持上传多种格式的文档文件,包括PDF、Word、Excel、TXT等常见格式。上传过程中系统会自动对文档进行解析和分片处理,将文档内容拆分为适合检索的文本块。对于FAQ类型的知识库,还支持上传xlsx或xls文件进行批量FAQ导入。上传后的文档会进入向量化处理流程,通过内置的向量模型将文本内容转换为向量表示,存入向量数据库中供后续检索使用。
3.2 模型服务的配置
当需要自定义模型服务时,可以在KooSearch右侧导航栏选择模型管理进入模型管理页面。单击新建模型服务按钮弹出新建模型服务页面。在新建页面中填写模型服务的相关参数后单击确定即可完成创建。Flexus企业搜索服务支持对接MaaS平台的模型服务,实现更灵活的模型选择与配置。
在对接MaaS时需要进行网络配置。由于KooSearch是离线服务,建议选择按需计费的NAT网关。NAT网关需与KooSearch保持同一区域西南-贵阳一,选择相同的VPC和子网。创建NAT网关后需添加SNAT规则,使用场景选择虚拟私有云,网段选择使用已有并与KooSearch同一VPC,公网IP类型选择弹性公网IP。
3.3 搜索问答体验
在KooSearch控制台中可直接体验搜索问答功能。在问答界面中输入问题,系统会基于知识库中的文档内容进行检索,并将检索结果与LLM结合生成答案。搜索功能支持关键词检索和语义检索两种模式。在搜索过程中可查看检索到的相关文档片段及其相似度评分,帮助理解答案的生成依据。
四、API对接使用详解
4.1 API调用基础
Flexus企业搜索服务提供符合RESTful API设计规范的自研接口。通过API可以实现知识库管理、文档上传、搜索问答、对话历史管理等全部功能。所有API均采用HTTPS协议进行传输。API的Endpoint因区域而异,西南-贵阳一区域的Endpoint为iam.cn-southwest-2.myhuaweicloud.com。资源路径即API访问路径,从具体API的URI模块获取。
4.1.1 认证鉴权
调用API时需要先获取Token进行身份认证。Token通过调用IAM服务的获取用户Token接口获得。获取Token的请求方法为POST,请求URL为https://iam.cn-southwest-2.myhuaweicloud.com/v3/auth/tokens。请求头中需包含Content-Type: application/json。请求体中需包含IAM用户的账号名、用户名和密码等认证信息。响应消息头中的X-Subject-Token即为所需的Token值。在后续API调用中需在请求头中携带X-Auth-Token参数。
4.1.2 公共请求头
所有API请求都需要包含以下公共请求头:Content-Type推荐使用application/json;X-Auth-Token为调用获取用户Token接口返回的Token值。
4.2 知识库管理API
4.2.1 查看知识库列表
通过GET方法调用/v1/koosearch/repos/{repo_id}接口可查看知识库列表。返回信息包括知识库ID、知识库名称、知识库状态、创建人、创建时间、更新时间等。
4.2.2 设置搜索问答Prompt
通过POST方法调用/v1/koosearch/repos/{repo_id}/search-prompt接口可设置知识库搜索问答的Prompt。该Prompt包括参考文献占位符(0)和搜索query占位符(1),可根据不同使用场景配置不同的prompt。例如可增加人设、限定条件、答案格式要求等,帮助模型生成更优的结果。请求体中需包含prompt字段,具体值最小长度1最大长度8192。请求示例:
POST /v1/koosearch/repos/919e8b10-b0c4-dbcd-9d5a-8ebb69594514/search-prompt
Content-Type: application/json
X-Auth-Token: {token值}
{
"prompt": "你是一名问题回答助手,请参考以下给出的文章回答问题。在回答问题之前,请你先仔细判断给出的文章是否可以回答问题。如果给出的文章与问题不相关,则直接输出'抱歉,我无法回答此次问题';如果给出的文章与问题相关,则参考给出的文章回答问题。\n给出的文章:\n(0)\n问题:(1)\n请你按照要求进行仔细判断后,给出你的回答"
}响应返回设置成功的知识库ID。
4.3 搜索与问答API
4.3.1 搜索知识库
通过POST方法调用/v1/koosearch/experience/search接口可根据query在指定知识库中搜索得到topN相关的分片文档。请求头需包含X-Auth-Token。请求体参数包括:repo_id为知识库ID必填;content为搜索内容必填;page_num为页码必填范围1至65535;page_size为页面大小必填范围1至65535;filter_string为带语法的查询字符串选填;scope为搜索范围选填,doc表示文档知识使用query2doc模型,faq表示FAQ使用query2query模型。
filter_string支持布尔运算符AND、OR和NOT,也支持&&、||和!写法,但需注意优先级规则,建议使用括号。保留字符查询时需要使用转义。例如:tags:(魔都 OR 首都) AND category:"城市(city)"。如需依据文件ID过滤分片可使用fileId条件。
Python调用示例:
import requests
import json
def search_knowledge_base(token, repo_id, content, page_num=1, page_size=10):
url = "https://{endpoint}/v1/koosearch/experience/search"
headers = {
"Content-Type": "application/json",
"X-Auth-Token": token
}
body = {
"repo_id": repo_id,
"content": content,
"page_num": page_num,
"page_size": page_size
}
response = requests.post(url, headers=headers, json=body)
return response.json()
# 使用示例
token = "获取的Token值"
repo_id = "919e8b10-b0c4-dbcd-9d5a-8ebb69594514"
result = search_knowledge_base(token, repo_id, "华为云Flexus企业搜索服务")
print(json.dumps(result, ensure_ascii=False, indent=2))4.3.2 多轮对话管理
Flexus企业搜索服务支持多轮对话。当chat_id为空时,chat_create_flag应为1表示开启新的对话。当chat_id有值时表示继续已有对话。通过GET方法调用/v1/koosearch/chat-history/{chat_id}接口可根据chat_id获取对话历史,返回历史的question和answer数据。通过DELETE方法调用/v1/koosearch/chat-history/batch接口可根据对话ID批量删除对话历史信息。请求体中需包含chat_ids数组。响应返回需要删除和成功删除的对话历史数量。
4.4 文档与结构化数据管理API
通过DELETE方法调用/v1/koosearch/repos/{repo_id}/files/{file_id}接口可删除指定ID的文件。结构化数据接口支持将结构化数据文件纳入系统进行管理,包括拆分配置如分段方式设置、层级解析模式设置、标题层级深度设置、标题保存方式设置、分段长度配置等。
4.5 图片管理API
通过POST方法调用/v1/koosearch/image/{img_id}接口可上传图片入库。img_id为图片ID格式为img-加32位字符。请求头需包含X-Auth-Token。请求体为FormData格式,包含image字段。
五、服务管理与运维
5.1 服务详情查看
在Flexus企业搜索服务控制台可查看服务详情,包括实例名称、状态、版本规格、区域、创建时间等信息。通过服务详情可了解当前实例的资源配置和使用情况。
5.2 集群路由配置
当需要与其他服务进行网络互通时,可配置Flexus企业搜索服务集群路由。路由配置需确保与目标服务在同一VPC内或通过合理路由实现互通。
5.3 日志管理
Flexus企业搜索服务提供日志管理功能,可查看服务的运行日志和访问日志。通过日志分析可排查问题、监控服务运行状态、优化搜索性能。
5.4 服务删除
当不再需要Flexus企业搜索服务时,可通过控制台删除服务实例。删除操作需谨慎,删除后实例数据将无法恢复。
六、最佳实践建议
6.1 知识库构建策略
在构建知识库时建议对文档进行合理的分类和标签管理,便于后续的检索过滤。文档上传前应确保内容质量,去除冗余和无关信息。对于FAQ类型的数据,建议使用xlsx格式批量导入以提高效率。
6.2 搜索精度优化
通过合理配置Prompt可显著提升问答精度。在Prompt中明确人设、限定条件和答案格式要求。利用filter_string进行精细化检索过滤。根据业务场景选择合适的scope参数doc或faq。
6.3 成本控制
按需选择实例规格避免资源浪费。购买时长超过3个月时建议包年购买。利用存算分离和ZSTD压缩降低存储成本。
七、常见问题解答
问:Flexus企业搜索服务支持哪些区域?
答:目前仅西南-贵阳一区域支持开通和使用Flexus企业搜索服务。其他区域暂不支持该服务。
问:如何获取知识库ID?
答:账号登录KooSearch体验平台后,在左侧导航栏选择知识库管理,在此界面获取知识库ID字段的值。该ID在API调用中作为必填参数使用。
问:API调用时Token如何获取?
答:通过调用IAM服务的获取用户Token接口获取。请求URL为https://iam.cn-southwest-2.myhuaweicloud.com/v3/auth/tokens。响应消息头中的X-Subject-Token即为Token值。在后续API调用中需在请求头中携带该Token。
问:搜索API的filter_string如何使用?
答:filter_string支持布尔运算符AND、OR和NOT,也支持&&、||和!写法。保留字符查询时需要使用转义。例如可按文件ID过滤:fileId:f6a050ffef5512e80a66ea57e386f194。多条件组合时建议使用括号明确优先级。
问:Flexus企业搜索服务能否对接自建模型?
答:支持通过模型管理功能对接MaaS平台的模型服务。在KooSearch控制台的模型管理中新建模型服务,填写对应参数即可完成对接。对接前需完成NAT网关等网络配置。
问:知识库中的文档支持哪些格式?
答:支持PDF、Word、Excel、TXT等常见文档格式。FAQ类型知识库还支持xlsx和xls格式的批量导入。上传后系统会自动进行文档解析和向量化处理。




