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

如何在Java基于Program AB的Alice bot的AIML应答中添加显示图片

Program AB Alice Bot 图片输出解决方案

问题根本原因

Program AB 默认开启了 HTML 特殊字符自动转义机制,你直接在 AIML 模板中写入的 <img> 标签会被自动转义为 &lt;img&gt; 这类转义字符,渲染时无法被识别为正常 HTML 标签,所以无法显示图片。

可行解决步骤

  • 第一步:关闭 Program AB 的全局 HTML 转义开关
    找到源码中 org.alicebot.ab.MagicStrings 类,将常量 enable_html_escape 的默认值从 true 改为 false,重新编译打包后生效。
  • 第二步:调整 AIML 模板写法,不需要额外嵌套 <html> 标签,直接写入 <img> 标签即可,示例模板参考如下:
<category>
  <pattern>看示例图片</pattern>
  <template>
    这是你要的图片:<img src="你的本地图片绝对路径/可访问的图片资源地址" alt="示例图" width="300">
  </template>
</category>
  • 第三步:如果是使用 Swing 等 GUI 组件展示应答内容,需要提前开启组件的 HTML 渲染能力,比如使用 JLabel 展示时要先调用 setContentType("text/html")。

注意事项

  • 关闭全局 HTML 转义后如果是公开场景使用,需要额外增加用户输入的标签过滤逻辑,规避 XSS 风险
  • 本地图片建议使用绝对路径,避免相对路径读取不到资源的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 07:48:02