OpenSearch现在问答接口:/v3/openapi/apps/[app_group_identity]/actions/knowledge-search中的 noanswer 不生效么?不想返回这样的结果,只想返回:根据已知信息无法回答该问题?
noanswer
参数在 OpenSearch 的问答接口中是用来控制当没有答案时是否返回一个默认的答案。如果 noanswer
设置为 false
,那么当没有答案时,接口将不会返回任何结果。如果你希望在没有答案时返回特定的信息,比如 "根据已知信息无法回答该问题",你可能需要自己处理这种情况。
你可以在调用 OpenSearch 的问答接口后,检查返回的结果。如果没有返回任何结果,那么你可以返回你自定义的信息。
以下是一个使用 Python 的示例:
import requests
def ask_opensearch(question, app_group_identity):
noanswer = False
url = f"/v3/openapi/apps/{app_group_identity}/actions/knowledge-search"
params = {
'question': question,
'noanswer': noanswer,
}
response = requests.get('http://your-opensearch-server' + url, params=params)
if response.status_code == 200:
results = response.json()['results']
if not results:
return '根据已知信息无法回答该问题'
else:
return results
else:
return '请求失败,状态码:{}'.format(response.status_code)
在这个示例中,我们首先发送一个 GET 请求到 OpenSearch 的问答接口,然后检查返回的结果。如果没有结果,我们返回自定义的信息;否则,我们返回接口返回的结果。
reference , 判断响应体里面有没有这个参数就可以,没结果的响应体里面不会有reference 参数。
,此回答整理自钉群“OpenSearch LLM智能问答版用户交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
智能推荐(Artificial Intelligence Recommendation,简称AIRec)基于阿里巴巴大数据和人工智能技术,以及在电商、内容、直播、社交等领域的业务沉淀,为企业开发者提供场景化推荐服务、全链路推荐系统开发平台、工程引擎组件库等多种形式服务,助力在线业务增长。