├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 wuchangming 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 🤖️ChatGPT 提问工程师 -- 开发指南 2 | 3 | 4 | 5 | ## ✨ 关于本指南 6 | 7 | 由于 `🤖️ChatGPT` 的回答是开放性和发散的,但对于具体的开发任务,更多是需要针对性的回答。为了提高 `ChatGPT提问工程师` 在与 `🤖️ChatGPT` 合作编程中的效率,而创建了这份文档来收集和整理常用的 `命令/问题`_(后面文中 `命令` 默认代指 `命令/问题`)_。 8 | 9 | 该指南旨在帮助 `ChatGPT提问工程师` 提高提问效率,欢迎 PR 👏👏👏 补充更多好问法。 10 | 11 | _注意:本文档仅针对 `ChatGPT提问工程师` 开发工作的场景。使用 `🤖️ChatGPT` 应该是开放性的,与 `🤖️ChatGPT` 进行无限可能的思维碰撞才能给人类带来颠覆性的应用 🌟。_ 12 | 13 | ## 📃 文档使用说明 14 | 15 | - 命令稳定性:强 中 弱 16 | 17 | - 由于 `🤖️ChatGPT` 的回答是发散的,命令稳定性代表符合期望的程度(主观性很大)。 18 | - 默认值:强 19 | - 尝试 10 次 20 | - 强 `> 8次符合期望` 21 | - 中 `> 5次符合期望` 22 | - 弱 `> 2次符合期望` 23 | 24 | - 明确处理的内容 25 | 26 | - 例子 1 :一般来说通过换行即可 27 | 28 | ``` 29 | 优化代码 30 | 31 | const hello = "🤖️ChatGPT"; 32 | ``` 33 | 34 | - 例子 2 :有时候 `🤖️ChatGPT` 无法区分需要处理的内容是什么,可以加 「」{} 之类的把内容圈起来。 35 | 36 | ``` 37 | 优化文案 38 | 39 | 「该指南旨在帮助 `ChatGPT提问工程师` 提高提问效率」 40 | ``` 41 | 42 | - 例子 3 :实在不行也可以再加些描述,所有命令都可以按这个模式去处理。 43 | 44 | ``` 45 | 优化「」中的文案 46 | 47 | 「该指南旨在帮助 `ChatGPT提问工程师` 提高提问效率」 48 | ``` 49 | 50 | - ✨ 命令附加条件「重要概念」 51 | 52 | - 所有命令都是可以添加任意附加条件「或者说附加需求」。附加条件可以非常抽象,这也是 `🤖️ChatGPT` 和传统 API 调用最大的不同,也是最颠覆的地方 🚀。 53 | - 例子: 54 | 55 | ``` 56 | 优化「」中的文案,扩充到 300 字 57 | 58 | 「该指南旨在帮助 `ChatGPT提问工程师` 提高提问效率」 59 | ``` 60 | 61 | - 上下文能力 62 | 63 | - 由于 `🤖️ChatGPT` 具备上下文理解能力,可以对 `🤖️ChatGPT` 的回答和之前的所有对话内容直接进行提问。需要控制不要在连续提问中迷失最初的需求目标。 64 | 65 | - 编程语言类型 66 | 67 | - 什么都支持 68 | 69 | - 人类语言类型 70 | 71 | - 目前发现在涉及代码的场景,使用英语效果更好 72 | 73 | ## 📃 命令/问题列表 74 | 75 | ### 提前设置对话要求 76 | 77 | --- 78 | 79 | - **设置回答问题的语言类型** 80 | 81 | ``` 82 | 接下来的对话都用{中文/英文}回答我 83 | ``` 84 | 85 | - 备注:由于涉及代码的提问用英语比中文效果更好,但你可以要求 `🤖️ChatGPT` 用中文回答 86 | - 例子 87 | ``` 88 | 接下来的对话都用中文回答我 89 | ``` 90 | 91 | - **设置简写** 92 | 93 | ``` 94 | 接下来的对话,如果我发送的内容是 {简写} ,我的意思是 {内容} 95 | ``` 96 | 97 | - 用途:很多时候,我们会有一些常用的内容,比如「重新回答这一问题」,这时可以用该命令设置简写,以后只需要发送简写就可以了。 98 | - 例子 99 | ``` 100 | 接下来的对话,如果我发送的内容是 re ,我的意思是 重新回答这一问题 101 | ``` 102 | 103 | ### 通用 104 | 105 | --- 106 | 107 | - **继续完成回答** 108 | 109 | ``` 110 | 继续 111 | ``` 112 | 113 | - 用途:`🤖️ChatGPT` 回答太长的内容时经常会中断,可用该命令要求完成回答 114 | 115 | ### 需求分析 116 | 117 | --- 118 | 119 | - **提取大段文案的中心思想** 120 | 121 | ``` 122 | 中心思想 123 | ``` 124 | 125 | ### 设计 126 | 127 | --- 128 | 129 | - **优化文案** 130 | 131 | ``` 132 | 优化文案 133 | ``` 134 | 135 | - **细化方案** 136 | 137 | ``` 138 | 细化方案 139 | ``` 140 | 141 | ### 编码 142 | 143 | --- 144 | 145 | 涉及代码的提问,使用英语的效果更好。但此时 `🤖️ChatGPT` 默认会以英语回答。 146 | 有两种方式让 `🤖️ChatGPT` 使用中文回答: 147 | _方法一:提前设置对话要求 `接下来的对话都用中文回答我`_ 148 | _方法二:加一句到问题最后 `explain in Chinese`_ 149 | 150 | - **编写代码** 151 | 152 | ``` 153 | 用 {TS/JS/编程语言} 实现:{描述需要实现的功能} 154 | ``` 155 | 156 | - 命令稳定性:弱(很大程度上取决于功能需求的描述) 157 | - 这个是最强大的能力,也是最不可控。应该能找到更可靠的套路,比如:按照下面的接口实现代码逻辑,需要继续探索。 158 | 159 | - 例子: 160 | ``` 161 | 用 TS 实现:Vue 的双向绑定,但不能引入 Vue 162 | ``` 163 | 164 | - **正则表达式** 165 | 166 | ``` 167 | 正则表达式:{描述需要实现的功能} 168 | ``` 169 | 170 | - 例子: 171 | ``` 172 | 正则表达式:大于0的正整数 173 | ``` 174 | 175 | - **评审代码** 176 | 177 | ``` 178 | Review code and explain in Chinese 179 | ``` 180 | 181 | - **检查代码出错原因** 182 | 183 | ``` 184 | Check the cause of the code error and explain in Chinese 185 | ``` 186 | 187 | - **重构/优化代码** 188 | 189 | - 重构代码 190 | ``` 191 | refactor the code 192 | ``` 193 | - 重构代码,以 vimdiff 格式展示更改的内容,并解释更改的内容 194 | ``` 195 | Refactor the code to present the changes in vimdiff format and explain the changes in Chinese 196 | ``` 197 | 198 | - **生成接口文档** 199 | 200 | ``` 201 | Generate markdown API Chinese documentation 202 | ``` 203 | 204 | - 命令稳定性:中 205 | - 备注:由于每次生成都不一样,其实不太好在开发迭代中维护,希望能摸索出更好的方式 206 | 207 | ### 测试 208 | 209 | --- 210 | 211 | - **添加单元测试** 212 | 213 | ``` 214 | Adding unit tests 215 | ``` 216 | 217 | - **生成 Mock 数据** 218 | 219 | ``` 220 | Generate data in json format 221 | ``` 222 | 223 | - 例子: 224 | 225 | ``` 226 | Generate data in json format 227 | 228 | interface AComponent { 229 | id: string; 230 | name: string; 231 | bComponent: BComponent; 232 | } 233 | interface BComponent { 234 | id: string; 235 | name: string; 236 | } 237 | ``` 238 | 239 | ## 📚 `ChatGPT提问工程师` 书籍推荐 240 | 241 | [《学会提问》](https://book.douban.com/subject/35513147/) 242 | 243 | ## 📚 其他相关文档 244 | 245 | [OpenAI 推出超神 ChatGPT 注册攻略来了 246 | ](https://www.v2ex.com/t/900126?p=2) 247 | [ChatGPT 常见问题解答【官方/非官方版】](https://codechina.org/2022/12/chatgpt-faq/) 248 | [GitHub Copilot Labs 【Copilot + ChatGPT】](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot-labs) 249 | --------------------------------------------------------------------------------