💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 2.3.8 应答指令解析 * 应答返回JSON格式的指令,ResponseCallback回调中的IChatResult已将应答指令封装成Command对象,该对象将会在MainService的 onRobotResponse回调方法中获得,3.3小节已有说明,在onRobotResponse方法中解析Command对象并执行即可,应答指令说明如下: ~~~ { " rtext ": String,// AI应答文本,String类型 " synthetise ":JSON,//应答文本合成控制 " ttext ":String,// AI提示性文本 Sting类型 " outc ": int,//输出控制码,int类型 " motions ":JSON,//动作集合,解析参照自动动作集合结构 " actions ":JSON//语义对象集合,解析参照语义对象集合结构 } ~~~ * 自动动作集合结构: [{"index":rtext应答文本中字符的索引位置,"level":动作优先级,"motion":动作id(参见动作对象)},...] 动作id及详细指令解析请参照SDK指令说明,动作JSON的详细说明如下: * IChatResult会输出的回复文本(以下用Text指代)。 * index:int类型,表示Text朗读到第index个字时需要做的动作(以下用C动作指代); * level:代表了C动作的优先级,int类型,如果上一个index需要做的动作(以下用L动作指代)还未完成,则比较两者的优先级, 如果C动作优先级比L动作优先级高,则打断L动作执行C动作,反之忽略C动作; * motion:指动作ID,int类型,这是一个抽象的动作概念,具有特定的一个具体定义,如:motion=20001,代表了高兴,则用户需将该动作ID 映射到机器人自身的若干个表示高兴的动作集合中,当指令指示要执行该动作ID时,开发者须自行制定策略选择一个代表高兴的动作执行之。 * 语义对象集合结构: [{"action":语义动作,"etime":动作执行时间,"target":语义动作的目标对象},... ] 语义动作的目标对象详细请参照sdk指令说明,语义对象JSON说明如下: * action:语义动作,AI可以执行的指令通常只有VIEW,其它的无法或者不可能执行,需要传递给开发者代为执行。 * etime:动作执行时间,一般表示为自定义的scheduler类型,无此属性或为空代表马上执行。 * target:语义动作的目标对象。(详细请参照sdk指令说明)