从好玩到好用:程序员用AI提效的那些事儿 | 京东云技术团队

本片内容是【AI思维空间】ChatGPT纵横编程世界,点亮智慧火花的续作,主要记录组内开发小伙伴儿们在开发过程中的实际应用案例,记录典型案例,尽量不要和其他人重复,以解决开发过程中的实际问题为主,设计、方案、编码、测试、集成、部署等等;

目的:贡献最佳实践,分享心得,共同成长!

Prompt提问万能公式

案例1 基于ChatGPT进行资源排期

1、首先进行拆分,分为周一到周五和周六周日

2、引导chatGPT进行排班

案例2 让chatGpt帮忙看下正则表达式的含义

在看代码的过程中,发现有个地方使用了正则表达式进行规则匹配,但是没有注释标明规则含义,所以使用chatGpt帮忙看下规则含义。

chatGpt不仅返回的了匹配的规则含义,还详细介绍了每个字符具体含义,very nice。

案例3 基于chatGpt写分段写入csv文件的程序

给chatgpt提要求,要求10000行数据放在一个csv文件中,并将文件名称进行编号处理。

变更条件,事先不知道总行数有多少条,让chatGpt重新写一段程序实现。

案例4:基于ChatGPT辅助开发

告诉ChatGPT,我想开发一个JavaBean转JSON的IDEA插件,让ChatGPT给出详细的步骤和代码。

案例5: 提问者需要具备鉴别能力

狼牙山五壮士的姓名

chatgpt可以一本正经的胡说八道,提问者不能全信。

案例6: spring ioc框架学习

太复杂了,尽然无法支持,就来一个简单的

再完善下,并帮忙写一个测试案例测试下看

亲自验证测试是否正确,能否跑起来

虽然能够跑起来,但是测试结果和其预期不一致,分析错误产生的原因是注解inject使用错误,正确使用时需要对注解添加元注解@Retention,其作用可以简单理解为设置注解的生命周期。

@Retention 注解传入的是 RetentionPolicy 枚举,该枚举有三个常量,分别是 SOURCE、CLASS 和 RUNTIME

三者区别如下:

SOURCE 代表着注解仅保留在源级别中,编译器将Java文件编译成class文件时将之遗弃。

CLASS 代表着注解被保留在class文件中,JVM加载class文件时将之遗弃。

RUNTIME 代表着标记的注解会由JVM保留,因此运行时环境可以使用它。

总结:chat-gpt对于技术细节可能无法把控,但是总体的程序框架及逻辑验证还是没有问题的。

案例7:字符处理、文本格式化

JOSN 串的格式化与压缩:

案例8:JSON串转JAVA Bean 集成lombok

提示词迭代过程如下:

以下Json串给生成 JAVA实体类,要求使用lombok 简化代码 ,并添加明确的代码注释,以Markdown语法出 {

"migrateTime": 1689609010640, //迁移时间

"sourceProductId": 1000000000, //迁移源productId

"targetProductIdAndSkuIdsMap": {//迁移目标productId与skuId的关系

"2000000": [//目标product1, skuIds

1,

2,

3

],

"3000000": [//目标product2, skuIds

4,

5

]

}

"venderId":100, //商家ID

"categoryId":123 //三级类目ID

}

结果输出如下(对尾行注释并不满意,继续优化试试):

去除尾行注释输出结果:

案例9:JAVA8 流语法扁平化处理流

以下提示词目的是收集map的所有value里面对应的 long 类型的值集合。

提示词: 在JAVA8 中如何通过流,将Map<Long, Set> targetProductIdAndSkuIdsMap 中的 value 收集到一个 set 集合里面,JAVA代码请以Markdown输出

结果输出如下: 在Java 8中,不能直接使用flatmap将集合的元素合并到一个集合中,因为flatMap操作是将多个流合并成一个流,而不是将元素合并到一个集合中。实际上,我们需要使用flatMap将每个集合的元素映射到单独的流,然后再使用collect操作将这些流合并到一个集合中。

以下是修正后的Java代码示例:

java 复制代码
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        Map<Long, Set<Long>> targetProductIdAndSkuIdsMap = ...; // 初始化 targetProductIdAndSkuIdsMap

        Set<Long> skuIds = targetProductIdAndSkuIdsMap.values()
                .stream()
                .flatMap(Set::stream)
                .collect(Collectors.toSet());

        System.out.println(skuIds);
    }
}

这个代码可还行?^_^

案例10: 行云流水线错误日志分析

已落地平台,针对流水线运行错误日志,选中错误内容右键进行智能分析,输出分析结果,辅助解决错误问题,节省平台运营成本。

作者:京东零售 王英杰

来源:京东云开发者社区 转载请注明来源

相关推荐
blue_dou7 分钟前
灵活拓展能力对决:多款CRM自定义与数据互通实测
大数据·人工智能
女神下凡9 分钟前
这是 Cursor(Composer) 的五种核心交互模式
服务器·人工智能·windows·vscode·microsoft
AI创界者12 分钟前
告别云端限制!Sulphur 2 本地文生视频/图生视频整合包,本地部署,解压即用,保姆级部署与工作流实战
人工智能·python·aigc·音视频
蓝星空200016 分钟前
GPT-Image-2 实战教程:一段提示词生成专业分镜图(含 9 格脚本模板,附一键同款)
人工智能·gpt·image2·imagen
用户3379225456817 分钟前
从字节跳动 DeerFlow 源码看 Agent 平台设计(二):工具系统设计 — 从全量绑定到按需加载
人工智能
IT 行者24 分钟前
GitHub Spec Kit 实战(四):读懂和干预 /speckit.plan——AI 最自由发挥的一步
java·人工智能·github·ai编程·claude
城事漫游Molly25 分钟前
AI辅助实验设计的标准工作流
人工智能·提示词·ai for science·科研论文·实验设计
tianxingjian201926 分钟前
科技创新核心工具,TRIZ理论助力技术难题高效突破
大数据·人工智能·科技
极客老王说Agent31 分钟前
自动化架构演进:2026年有比RPA更加稳定的技术吗?
人工智能·ai·chatgpt·架构·自动化·rpa
静Yu41 分钟前
从“生成一篇知识点”到“面对面讲清一道题”:我用魔珐星云改造 AI 教育助手的实践
人工智能