当前位置: 首页 > news >正文

ChatGPT 提示词框架

在这里插入图片描述

作为一个资深安卓开发工程师,我们在日常开发中经常会用到 ChatGPT 来提升开发效率,比如代码优化、bug 排查、生成单元测试等。
但要想真正发挥 ChatGPT 的潜力,我们需要掌握一些提示词(Prompt)的编写技巧,并且有一个良好的提示词框架。

本文将详细介绍 ChatGPT 提示词的框架,并结合 Kotlin 代码示例,帮助大家更高效地使用 ChatGPT。

1. 什么是提示词框架?

提示词框架(Prompt Framework)是一种结构化的方式,
通过给 ChatGPT 传递清晰、详细、具有上下文的信息,
让它能够更好地理解你的需求,并生成更符合预期的结果。

一个好的提示词框架通常包括以下几个部分:

  • 角色设定(Role):指定 ChatGPT 的身份,比如“你是一个资深的 Kotlin 开发工程师”。
  • 目标任务(Task):明确告诉 ChatGPT 你需要它做什么,比如“帮我优化这段代码的性能”。
  • 输入内容(Input):提供必要的上下文,比如需要优化的 Kotlin 代码。
  • 输出格式(Output Format):指定结果的呈现方式,比如“请用 markdown 语法返回”。
  • 示例(Examples):提供参考示例,让 ChatGPT 理解你想要的风格。

2. 提示词框架示例

下面我们用 Kotlin 代码来举个例子,看看如何用一个良好的提示词框架来让 ChatGPT 帮我们优化代码。

// 原始代码,性能较低
fun findDuplicates(list: List<Int>): List<Int> {val duplicates = mutableListOf<Int>()val set = mutableSetOf<Int>()for (item in list) {if (!set.add(item)) {duplicates.add(item)}}return duplicates
}

示例提示词:

你是一个资深的 Kotlin 开发工程师。
你的任务是优化下面的 Kotlin 代码,使其性能更优。
代码如下:# ```kotlin
fun findDuplicates(list: List<Int>): List<Int> {val duplicates = mutableListOf<Int>()val set = mutableSetOf<Int>()for (item in list) {if (!set.add(item)) {duplicates.add(item)}}return duplicates
}
#  ```请优化代码,并简要说明优化点。
代码请用 markdown 语法格式返回。

ChatGPT 可能的优化结果:

fun findDuplicates(list: List<Int>): List<Int> {return list.groupBy { it }.filter { it.value.size > 1 }.keys.toList()
}

优化点:

  • 使用 groupBy 按元素分组,避免手动维护 Set
  • 直接筛选出重复元素,提高代码可读性。

3. 提示词框架的优化技巧

在实际使用中,我们可以通过以下方式优化提示词:

  • 具体化任务:避免模糊描述,比如不要说“优化代码”,而要具体说明优化目标,如“优化性能”或“提高可读性”。
  • 提供示例:如果你想要 ChatGPT 以某种格式返回结果,最好提供示例,让它模仿。
  • 限制输出:如果你只想要代码,不想要解释,可以明确说明“只返回优化后的代码,不要附带解释”。
  • 调整温度:在 API 调用时,可以调整 temperature 参数,值越低(如 0.2),输出越精确;值越高(如 0.8),输出越有创意。

4. ChatGPT 提示词框架的应用场景

作为 Android 开发者,我们可以用提示词框架来完成很多任务,比如:

  • 代码优化:如上例所示,优化 Kotlin 代码。
  • Bug 排查:描述 bug 现象,让 ChatGPT 提供可能的原因和修复建议。
  • 学习新 API:让 ChatGPT 解释 Jetpack Compose、Kotlin Coroutines 等 API 的用法。
  • 单元测试生成:让 ChatGPT 帮你自动生成测试代码。
  • 代码重构建议:询问如何改善代码架构,如 MVVM、MVP 设计模式优化。

5. 结语

掌握 ChatGPT 的提示词框架,不仅可以提高开发效率,还能帮助我们更深入地理解代码优化的思路。
作为开发者,我们应该学会用 AI 作为辅助工具,而不是完全依赖它。

希望本文对你有所帮助!如果你有更好的提示词技巧,欢迎在评论区分享!

相关文章:

ChatGPT 提示词框架

作为一个资深安卓开发工程师&#xff0c;我们在日常开发中经常会用到 ChatGPT 来提升开发效率&#xff0c;比如代码优化、bug 排查、生成单元测试等。 但要想真正发挥 ChatGPT 的潜力&#xff0c;我们需要掌握一些提示词&#xff08;Prompt&#xff09;的编写技巧&#xff0c;并…...

004-利用Docker安装Mysql

利用Docker安装Mysql 一、在镜像仓库找到 Mysql1.镜像仓库地址2.复制命令3.下载Mysql镜像4.查看镜像 二、创建实例并启动三、用本地工具连接数据库四、设置 Mysql 配置 一、在镜像仓库找到 Mysql 1.镜像仓库地址 https://hub.docker.com 2.复制命令 docker pull mysql:8.0…...

Dify使用和入门

第一步&#xff1a;了解 Dify 在开始之前&#xff0c;先简单了解一下 Dify 是什么&#xff1a; Dify 是一个开源的 LLM 应用开发平台&#xff0c;专注于帮助开发者快速构建生产级的生成式 AI 应用。它支持知识库集成、RAG&#xff08;检索增强生成&#xff09;技术、复杂工作…...

高效管理 React 状态和交互:我的自定义 Hooks 实践

高效管理 React 状态和交互&#xff1a;自定义 Hooks 实践 在 React 中&#xff0c;Hooks 是一种使我们能够在函数组件中使用状态和副作用的强大工具。随着项目的增大&#xff0c;重复的逻辑可能会出现在多个组件中&#xff0c;这时使用自定义 Hooks 就非常合适。它们帮助我们…...

ESP 32控制无刷电机2

import machine import time import socket import network from machine import I2C, Pin, ADC def start_ap(): """ 启动ESP32的AP模式 """ ap network.WLAN(network.AP_IF) ap.active(True) ssid ESP32_APTest …...

揭开人工智能中 Tokens 的神秘面纱

揭开人工智能中 Tokens 的神秘面纱 在人工智能&#xff0c;尤其是自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;"tokens" 是一个频繁出现且至关重要的概念。对于理解语言模型如何处理和理解人类语言&#xff0c;tokens 起着基础性的作用。那么&#xff…...

萌新学 Python 之 random 函数

random 模块&#xff1a;主要用来生成随机数 先导入包&#xff1a;import random randint(a, b)&#xff0c;生成 [a, b] 之间的整数&#xff0c;包含边界 a 和 b&#xff0c;a 和 b 为整数 random()&#xff0c;生成的是 [0,1) 之间的浮点数&#xff0c;包含 0 不包含 1 r…...

2-2linux系统IO

文章目录 linux系统文件io1 open /close1.1 open1.2 close1.3 示例1.3.1 打开已经存在的文件 2 read/write2.1 read2.2 write使用 遗留问题&#xff1a;新创建的文件权限很奇怪3 lseek3.1 文件指针的移动3.2 文件拓展 perror函数 linux系统文件io 系统函数是系统专有的函数&am…...

周边游平台设计与实现(代码+数据库+LW)

摘 要 在如今社会上&#xff0c;关于信息上面的处理&#xff0c;没有任何一个企业或者个人会忽视&#xff0c;如何让信息急速传递&#xff0c;并且归档储存查询&#xff0c;采用之前的纸张记录模式已经不符合当前使用要求了。所以&#xff0c;对旅游信息管理的提升&#xff0c…...

视频批量分段工具

参考原文&#xff1a;视频批量分段工具 选择视频文件 当您启动这款视频批量分段工具程序后&#xff0c;有两种便捷的方式来选择要处理的视频文件。其一&#xff0c;您可以点击程序界面中的 “文件” 菜单&#xff0c;在下拉选项里找到 “选择视频文件” 按钮并点击&#xff1b…...

Android -- 使用Sharepreference保存List储存失败,原因是包含Bitmap,drawable等类型数据

1.报错信息如下&#xff1a; class android.content.res.ColorStateList declares multiple JSON fields named mChangingConfigurations 2.Bean类属性如下&#xff1a; data class AppInfoBean( val appName: String?, val appIcon: Drawable, val appPackage: String?,…...

java项目之基于ssm的图书馆书库管理系统(源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的图书馆书库管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 该系统可以实现图书信息管理…...

编写一个程序,输入一个数字并输出其阶乘(Python版)

编写一个程序&#xff0c;输入一个数字并输出其阶乘 要计算一个数字的阶乘&#xff0c;可以编写一个简单的 Python 程序&#xff0c;使用循环或者递归来实现: 1. 使用 for 循环计算阶乘 # 输入一个数字 num int(input("请输入一个数字: "))# 初始化阶乘结果 facto…...

dify基础之prompts

摘要&#xff1a;在大型语言模型&#xff08;LLM&#xff09;应用中&#xff0c;Prompt&#xff08;提示词&#xff09;是连接用户意图与模型输出的核心工具。本文从概念、组成、设计原则到实践案例&#xff0c;系统讲解如何通过Prompt解锁LLM的潜能&#xff0c;提升生成内容的…...

实践教程:使用DeepSeek实现PDF转Word的高效方案

&#x1f388;Deepseek推荐工具 PDF文件因其跨平台、格式稳定的特性被广泛使用&#xff0c;但在内容编辑场景中&#xff0c;用户常需将PDF转换为可编辑的Word文档。传统的付费工具&#xff08;如Adobe Acrobat&#xff09;或在线转换平台存在成本高、隐私风险等问题。本文将使…...

网络安全审计员

在当今数字化时代&#xff0c;随着信息技术的迅猛发展&#xff0c;网络安全问题日益凸显&#xff0c;成为各行各业不容忽视的重要议题。特别是对于企业、政府机构等组织而言&#xff0c;网络安全不仅关乎数据资产的安全&#xff0c;更与组织的声誉、客户信任乃至法律法规的遵从…...

算法-二叉树篇13-路径总和

路径总和 力扣题目链接 题目描述 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回…...

如何设计一个短链系统?

短链系统设计的关键要点: 系统功能实现 短链生成:接收长链接,先检查是否已有对应短链,存在则直接返回。否则,使用分布式 ID 生成器(如号段模式、SnowFlake 算法、数据库自增 ID、Redis 自增等)生成唯一 ID,或通过哈希算法(如 MurmurHash)处理长链接得到哈希值。再将生…...

医疗行业电脑终端如何防病毒——火绒企业版杀毒软件

医疗物联网技术广泛应用&#xff0c;使得医院网络空间中增加了诸多新型终端设备。这些设备类型多样、型号各异&#xff0c;风险暴露面积大。火绒安全对医疗机构终端安全出现的问题、不足、需求等&#xff0c;提出整体解决方案。 医疗行业终端安全防护痛点 系统老旧 医院、区…...

云平台DeepSeek满血版:引领AI推理革新,开启智慧新时代

引言&#xff1a;人工智能的未来——云平台的卓越突破 在当今科技飞速发展的时代&#xff0c;人工智能&#xff08;AI&#xff09;技术正深刻地改变着我们生活与工作方式的方方面面。作为AI领域的创新者与领航者&#xff0c;云平台始终走在技术前沿&#xff0c;凭借无穷的热情…...

Swift学习笔记21-内存管理

// // main.swift // class21 内存管理&#xff08;面试题为主&#xff0c;基本都过气了&#xff0c;没实践意义&#xff09; // // Created by sakiko on 2026/4/7. //import Foundationprint("Hello, World!")//Swift 使用自动引用计数&#xff08;ARC&#xff…...

隐式神经表示在计算机视觉中的5个关键应用:图像超分辨率到3D场景重建

隐式神经表示在计算机视觉中的5个关键应用&#xff1a;图像超分辨率到3D场景重建 【免费下载链接】awesome-implicit-representations A curated list of resources on implicit neural representations. 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-implicit-repr…...

045B-基于51单片机智能窗帘(+红外遥控)【Proteus仿真+Keil程序+报告+原理图】

045B-基于51单片机智能窗帘&#xff08;红外遥控&#xff09; 一、核心硬件功能设计 1. 主控与显示单元 系统选用 STC89C52单片机作为主控芯片&#xff0c;负责信号采集、逻辑运算、模式判断与执行控制。搭配LCD1602 液晶显示屏实时显示系统当前模式、时间信息、光强数值及窗帘…...

告别手动分析!用Frida-Trace一键追踪Android App的JNI函数调用(附实战APK)

高效追踪JNI函数&#xff1a;Frida-Trace在Android逆向工程中的实战应用 逆向工程师和安全研究员们常常需要面对一个现实问题&#xff1a;如何在有限的时间内快速理解一个未知Android应用的Native层行为&#xff1f;传统方法往往需要手动分析so文件、设置断点、逐行跟踪&#…...

Go-restful容器管理终极指南:多服务部署与负载均衡完整教程

Go-restful容器管理终极指南&#xff1a;多服务部署与负载均衡完整教程 【免费下载链接】go-restful package for building REST-style Web Services using Go 项目地址: https://gitcode.com/gh_mirrors/go/go-restful Go-restful是一个强大的Go语言RESTful Web服务框架…...

音乐自由新选择:QMCDecode如何让加密音频重获新生

音乐自由新选择&#xff1a;QMCDecode如何让加密音频重获新生 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac&#xff0c;qmc0,qmc3转mp3, mflac,mflac0等转flac)&#xff0c;仅支持macOS&#xff0c;可自动识别到QQ音乐下载目录&#xff0c;默认转换结…...

lingbot-depth-vitl14镜像部署教程:从魔搭社区权重加载到双服务(7860+8000)启用

lingbot-depth-vitl14镜像部署教程&#xff1a;从魔搭社区权重加载到双服务&#xff08;78608000&#xff09;启用 1. 引言&#xff1a;为什么选择LingBot-Depth&#xff1f; 如果你正在寻找一个能同时搞定“单目深度估计”和“深度补全”的模型&#xff0c;那么LingBot-Dept…...

STPopup键盘处理详解:智能避让和自动重定位的终极解决方案

STPopup键盘处理详解&#xff1a;智能避让和自动重定位的终极解决方案 【免费下载链接】STPopup STPopup provides STPopupController, which works just like UINavigationController in popup style, for both iPhone and iPad. Its written in Objective-C and compatible w…...

7个强力修复方案:解决Windows更新故障的创新方法

7个强力修复方案&#xff1a;解决Windows更新故障的创新方法 【免费下载链接】Reset-Windows-Update-Tool Troubleshooting Tool with Windows Updates (Developed in Dev-C). 项目地址: https://gitcode.com/gh_mirrors/re/Reset-Windows-Update-Tool Windows更新故障是…...

League-Toolkit:让英雄联盟游戏体验变得智能高效

League-Toolkit&#xff1a;让英雄联盟游戏体验变得智能高效 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 你是否曾在英雄联盟游戏中遇到这些…...