通过评测任务对问答效果进行测评,从用户提出问题开始,到系统召回内容,再到LLM生成回答的整个流程进行综合评测。
注意事项
效果评测按实际评测时产生的计算资源消耗计费。
操作步骤
选择目标地域,切换到OpenSearch-LLM智能问答版。
在实例列表单击目标实例右侧的管理,在左侧导航栏选择效果对比。
在评测任务页签下,单击创建评测任务进入创建评测任务页面,输入任务名称,选择评测数据集,问答参数配置参见下表。
参数
说明
模型选择
对话搜索时使用的模型,选择范围为模型列表中所有可用的模型。
说明可用模型是指可进行问答测试的模型。
Prompt
对话搜索时使用的Prompt,需要提前配置Prompt模板,详情请参见Prompt管理。
Prompt参数说明
参数
类型
必需
描述
options.chat.prompt_config.attitude
String
否
系统内置模板的参数,用来控制对话内容的语气,默认为normal。
normal:无。
polite:使用和蔼和礼貌的语气。
patience:使用委婉和耐心的语气。
options.chat.prompt_config.rule
String
否
对话内容的详细程度,默认为detailed。
detailed:详细和专业。
stepbystep:详细且按步骤。
options.chat.prompt_config.noanswer
String
否
无法回答问题时的回复,默认为sorry。
sorry:抱歉,根据已知信息无法回答该问题。
uncertain:我不知道。
options.chat.prompt_config.language
String
否
回答问题使用的语言,默认为Chinese
Chinese:中文
English:英语
Thai:泰语
Korean:韩语
options.chat.prompt_config.role
Boolean
否
是否开启回答角色。开启后,将定制回答的角色。
options.chat.prompt_config.role_name
String
否
定制回答的角色,例如:AI小助手。
options.chat.prompt_config.out_format
String
否
输出内容的形式,默认为text。
text:文本。
table:表格。
list:列项。
markdown:markdown。
文档召回参数说明
参数
类型
必需
描述
options.retrieve.doc.filter
String
否
从知识库中召回筛选条件的数据时,需要明确指定相应的字段及满足的条件。默认为空。filter使用示例可参考:filter参数。
支持的字段:
table:文档所在表。
raw_pk:文档主键。
category:文档分类。
score:文档分数。
timestamp:文档时间。
示例格式:
"filter" : "raw_pk=\"123\"" # 只从id为123的doc中获取数据 "filter" : "category=\"value1\"" # 只从category为value1的doc中获取数据 "filter" : "category=\"value1\" OR category=\"value2\"" #只从category为value1和value2的doc中获取数据 "filter" : "score>1.0" # 只从score大于1.0的doc中获取数据 "filter" : "timestamp>1356969600" # 只从timestamp大于2013-1-1的doc中获取数据
options.retrieve.doc.top_n
Integer
否
召回的文档数量,默认为5个,取值范围:(0, 50]。
options.retrieve.doc.sf
Float
否
控制向量召回的向量分数的阈值。
当没有开启稀疏向量时,取值范围为[0, 2.0],默认值是1.3,该值越小,结果越相关,但结果数会越少;反之,可能会召回不太相关的结果。
但开启了稀疏向量时,默认值是0.35。其值越大,召回的结果越相关,结果数会越少;反之,结果可能会不太相关。
options.retrieve.doc.dense_weight
Float
开启稀疏向量后,控制文档召回时,稠密向量的权重。取值范围:(0.0, 1.0),默认值为0.7。
options.retrieve.doc.formula
String
否
指定召回时,文档排序的公式。
说明语法请参考业务排序函数,其中的算法相关性和地理位置相关性的特征不支持。
options.retrieve.doc.operator
String
否
在知识库召回时,question.text分词后的term的关系。该参数只有在没有启用稀疏向量时生效。
AND:表示所有term都需要出现才能被召回。默认为AND。
OR:表示只要有一个term出现就可以召回。
参考图片参数说明
参数
类型
必需
默认值
描述
options.retrieve.image.sf
Float
否
1
控制向量召回的向量分数的阈值。
当没有开启稀疏向量时,取值范围:[0, 2.0],默认值为1.0,该值越小,结果越相关,但结果数会越少;反之,可能会召回不太相关的结果。
但开启了稀疏向量时,默认值为0.5。其值越大,召回的结果越相关,结果数会越少;反之,结果可能会不太相关。
options.retrieve.image.dense_weight
Float
否
0.7
开启稀疏向量后,控制图片召回时,稠密向量的权重。取值范围:(0.0, 1.0),默认值为0.7。
Query理解参数说明
参数
类型
必需
取值范围
描述
options.retrieve.qp.query_extend
Boolean
否
-
是否对用户query进行扩展,扩展query会用来在引擎中召回文档切片。默认为false。
默认为false,和原来逻辑保持一致,即表示不进行query扩展。
如果设置为true,则会多一次与大模型的交互,所以回复速度会变慢。对耗时敏感的应用请勿开启。
options.retrieve.qp.query_extend_num
Integer
否
(0,+∞)
开启相似query扩展时,最多扩展几个query,默认值为5。
人工干预参数说明
参数
类型
必需
描述
options.retrieve.entry.sf
Float
否
控制召回人工干预的向量分阈值。取值范围:[0, 2.0],默认值是0.3,该值越小,结果越相关,但结果数会越少;反之,可能会召回不太相关的结果。
其它参数说明
参数
类型
必需
描述
options.retrieve.return_hits
Boolean
否
是否在结果中返回文档召回的结果,即response中的search_hits。
options.chat.history_max
Integer
否
多轮对话历史最大轮数,最大20轮,默认是1。
options.chat.link
Boolean
否
是否返回链接。控制模型生成的内容是否标识内容引用的来源。取值:
true: 内容包含来源。
false: 不包含。默认为false。
包含内容的返回信息实例如下:
可以通过在线扩容和离线扩容两种方式扩容ECS云盘容量[^1^]。在线扩容无需重启实例,离线扩容需要重启实例[^1^]。具体操作步骤为:在ECS控制台上选择待扩容的云盘,在操作列选择扩容,然后根据需要选择扩容方式[^1^]。如果需要扩容分区和文件系统,可以通过控制台获取或者通过控制台获取[^2^]。扩容云盘容量后,新容量生效后无法再缩小,建议合理规划存储空间[^3^]。
其中被
[^
和^]
包起来的数字表示引用结果中reference里的第几个文档。例如[^1^]
表示引用reference中的第一个文档。options.chat.rich_text_strategy
String
否
富文本LLM输出后处理方式(如果不存在这个配置或者为空则不开富文本,默认行为):
inside_response: 回答中的tag直接还原到原文里,markdown格式(注意表格直接以HTML形式插入markdown)。
extend_response: 回答中存在富文本tag,每个tag实际内容单独在rich_text_ref返回:图片内容url,表格内容HTML格式,代码文本格式。
详情请参见富文本功能。
完成上述参数配置后单击确定创建评测任务,测评完成系统给出综合得分。
单击测试报告查看每条问答的评测结果。如评测结果不准确,单击人工评估,对结果进行人工订正。