如何在Composer中无代码使用LUIS提取数字实体并赋值给属性
Composer无代码捕获LUIS预构建number实体存储为变量操作方法
问题场景
- 需要在Bot Framework Composer中通过无代码配置,捕获用户对文本提示的响应内容里LUIS识别出的
prebuilt number实体,将实体值存储为自定义property变量,未找到明确配置路径。 - 操作界面参考:

操作步骤
全程不需要编写自定义代码,按以下路径配置即可:
- 确认预构建实体已启用
打开当前对话项目的LUIS识别器配置页,在预构建实体勾选列表中选中number,重新发布识别器模型,确保改动生效。 - 添加属性赋值动作
回到你配置文本提示的对话流位置,在文本提示节点后方添加一个「设置属性」动作:- 左侧属性名填你自定义的变量路径,比如
user.inputNumber、dialog.targetNumber都可以 - 右侧取值表达式按你的需求填写:
- 要获取完整的number实体对象(含置信度、起止位置等信息):填
@prebuilt number - 只需要获取识别到的数字本身的数值:填
@prebuilt number[0].value
- 要获取完整的number实体对象(含置信度、起止位置等信息):填
- 左侧属性名填你自定义的变量路径,比如
- 验证调用
配置完成后测试对话:用户输入带数字的内容,LUIS完成识别后会自动把对应实体值存入你设置的property,后续对话节点直接通过${你设置的属性名}就能调用取值。
注意:如果用户单轮输入可能包含多个数字,
@prebuilt number会返回数组结构,你只需要修改方括号里的下标,就能取到对应顺序的数字值;单数字场景取下标0即可。不要在文本提示节点默认的「用户响应存储字段」里直接填实体表达式,该字段默认绑定用户原始输入文本,无法直接替换为实体识别结果。
内容的提问来源于stack exchange,提问作者GoonerJon
相关产品推荐
相关产品推荐

