如何跟AI沟通

最近在用 AI 写一些脚本,遇到了一个奇怪的问题,大概是:

用 python 解析 sheets 表格,获取里面的 cell 数据,填到 xml 里。cell 内容是文本的,有各种形式的内容,例如 存文本,CDATA,xml tag 等。但是 xml
每次保存文本,都会自动转义。

我问 AI 怎么让 xml 保存时,不要自动转义。Grok 怎么都不理解我的上下文,一直让我用 CDATA。即使我说了,不要使用 CDATA。

我举例,

1
2
3
4
我需要更改 `<a><b>foo</b><a>`,  foo 为 bar,
保存到 `<a><b>bar</b><a>`,
但是 xml 总是自动转义, 得到一个 转义后的结果,
`<a>&lt;b&gt;bar&lt;b&gt;</a>`

grok 的方案一直不对。他没理解我的问题。一直提示 用CDATA,即使我说 CDATA 不是我要的答案,因为这个导致多了 <!CDATA>.

于是我换了 deepseek, deepseek 指出了问题的关键,
xml 在 保存 文本的时候会自动转义,如果不需要转义,需要 使用 xml element 处理,例如 <b>bar</b> 需要作为 xml element 保存,这样才不会被转义。

当我找到解决方案后,我开始反思,为什么 grok 没能给出正确的答案。我开始翻我的提问记录,我发现,我没提到 我保存的是文本。文本的内容 是各种格式的。这个导致 grok 一直往错误的方向找答案,而 deepseek 很聪明,通过 “转义问题”,找到了可能是 保存的格式 有问题,文本会被转义。想要不被转义,就需要根据内容,使用不同的格式.

为什么我在这个问题上掉坑了?

第一个,我缺少对 解析 xml的了解。找解决方案的时候,对关键技术的全面了解很重要

第二是,我提问缺少上下文。误导了 AI。错误的问题,缺少关键context的问题,都不是好问题