1334 words
7 minutes
如何向AI提问

学而不思则罔,思而不学则殆。 《论语》

AI 智商超出人类,但不具备情商。所以你生气地问他、责骂都并不能更快地解决问题,也不能给你想要的答案。 你向AI提问,让AI能够理解,你则要理解AI的思考逻辑(当然这里的AI也可以换成你身边的任何人,想想看)。 你知道AI是如何理解你的问题,并能解答的吗?现在的大语言模型(LLM )都是基于统计语言模型。 1

AI 回答的逐个跳出来下一个是什么字是概率算出来的。所以AI并不能以人类的方式理解问题。

正是由于基于统计语言模型,所以会导致AI大模型正经地胡说八道,专业的词叫幻觉。 不要惊讶于AI会产生幻觉,你要惊讶于AI能正确问答你的问题。

理解这个思考过程,所以在提问时要尽可能的精确、正确、准确。 不要存在歧义,也不要带无关的内容。 提的问题在他的知识里面有对应,向量化的,幻觉则少。 早期的一个经典问题:问林黛玉倒拔垂杨柳的故事,这是给AI一个错误的假设,他要不停的输出,停不下来,基于错误输入产生了错误的输出,看起来也是那么回事,像真的一样。

我们有一个误区,认为AI很智能,应该会智能地理解我的问题,目前发展还不行(不同模型可能有些差别),如果应用到工程领域更是要规范化地结构化写清楚提示词。写提示词的过程也是你自己又理解了一遍,也可以作为团队工作的输出。

像一个比较复杂的系统,用一句话肯定说不清楚(说给人听也一样) 像下面的问题,以后就别问了:

  • 给我做一个招聘的app,界面要漂亮
  • 实现一个车辆路由规划,能在地图展示行驶路径
  • 开发一个餐饮预订的平台,能够支持消费者使用,支持商户管理和运营

如何提问需要学习,特别是AI时代更加重要,问不对也难以得到想要的答案。问的对能够获得AI的推理能力、深度思考能力。 根据我的日常实践总结几点(适用于AI编程生成代码):

  • 问题不要存在歧义;

  • 先总体概括,再分别阐述需求;

  • 拆分子任务,每项子任务的要求说明清楚,子任务之间不要存在冲突,让AI无法决策;

  • 理解工程现状,合理提要求。举个反例:我在要求由当前tailwindcss v3升级到4.1.11时,参考官方的文档给出升级方案,我要求不能改动其他依赖。结果AI思考很久,官方文档有说v3升v4时stylus不再使用,所以依赖要调整。最后输出让我降低一下约束、变更可控; tailwindcss升级提示

  • 与问题无关的内容不要提,以免引起误解和幻觉;

  • 与问题有关的事项要交代,如工程依赖、版本号限制;工程相关的架构规范现在使用claude code可以在根目录生成CLAUDE.md,主要是工程上的约束、宏观架构等;

  • 尽量考虑周到,这点比较难。举例来说,我在使用tailwindcss实现页面功能时,首次提问没有交代建立色彩风格体系定义color.ts,当时仅说明根据使用群体和功能来确定一个主色调,后来发现主色调不合适,让修改,改了好多地方好几轮对话。如果一开始建立color.ts,只需要调整这一个文件即可;

  • 有时要强调一些要点:例如风格统一,无论代码风格还是界面风格,有时发现虽然实现了,却两种风格;

  • 除了对AI提需求要做什么,还要提一下不要做什么,这点大家容易忽略,例如不要更改基础依赖的版本号,不要修改DDL定义,不要夸张的风格;

  • 不要嫌组织问题时文字太多(你的目的是让AI理解,不要在乎字数多少,现在主流大模型上下文字数完全够用);

    提问其实就是写提示词。提示词写的好,对话次数也会减少。日常可以多思考如何减少多轮对话次数,提升提示词质量。提示词要保留一份,以便后续调整或交接其他人;

如果你真不知道该如何提问, 那你向AI问一个问题:

我想解决/建设/调研xxxxxx,我该如何向你提问?

也可以试试看,掌握提问和结构化思考是AI时代强有力技能

Footnotes#

  1. 关于大语言模型推荐这两个普及视频:漫士博士花半年时间打造的《90分钟!清华博士带你一口气搞懂人工智能和神经网络》 https://www.bilibili.com/video/BV1atCRYsE7x/ 3bule1brown的《大语言模型的简要解释》 https://www.bilibili.com/video/BV1xmA2eMEFF

如何向AI提问
https://techat.online/posts/ask-question/
Author
Colin
Published at
2025-08-12
License
CC BY-NC-SA 4.0