You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用clipspy在Python构建专家系统时出现CLIPSError的原因

错误原因分析

报错信息

clips.common.CLIPSError: [CSTRNCHK1] test.CLP, Line 7: A literal restriction value found in CE #1 does not match the allowed types for slot 'Presencia'.  ERROR: (defrule MAIN::r1    ?d <- (dormitorio (Presencia Si) (Iluminación Apagada))    =>    (printout t "Encender la iluminación del dormitorio." crlf)    (modify ?d (Iluminación Encendida))).

原因说明

  • 在CLIPS规则文件test.CLP中,规则里的(Presencia Si)和(Iluminación Apagada)里的Si、Apagada未加双引号,CLIPS会将它们识别为符号(symbol)类型。
  • 但你通过Python代码定义的dormitorio模板里,明确指定了Presencia和Iluminación这两个slot的类型是STRING,规则中的事实约束值类型必须和模板slot的类型严格匹配,因此触发了类型不匹配的错误。

修正后的test.CLP代码

(defrule r1
   ?d <- (dormitorio
            (Presencia "Si")
            (Iluminación "Apagada"))
   =>
   (printout t "Encender la iluminación del dormitorio." crlf)
   (modify ?d (Iluminación "Encendida")))

修正后,规则里的字符串值用双引号包裹,和模板定义的STRING类型一致,即可正常执行规则逻辑。

内容的提问来源于stack exchange,提问作者FernandoRT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 00:01:05