用AI完成了未曾设想的Py系统落地

(仅分享最近的收获)
:AI能够提升上限

:情景
- 我之前上学时喜欢用Python。曾说“JAVA是工作,Python是生活”
- 虽然但是,没有Python大项目基础,等级可以类似于 JAVAEE水平。太久没写后也忘了差不多辽
- 我需要使用python进行快速的自动化落地,从零到一完整写一个新的项目

:过程
- 一开始古法编程硬写,费时费力没有成果
- 过了一段时间选择推倒重来,给出完整的产品设计文档,以及数据库建模,以及需求单.md
- 再装配 skill,使用 AI IDE (agent,模型都选国内顶级模型) + Intellij (手动修改,使用 DS的 FIM)结合的模式
- 针对需求单做进一步任务拆解,“吃一个,看一个”;在交给AI前,先自己把伪码以及核心方法名创建出来 (最长一次花了2h做这事)
- 花费大量时间堆 prompt 质量。只手动圈选必要上下文(最多一次圈了15个文件),并有礼貌的指出问题,指出你要看什么这样这样
- 对结果不断优化,能改的直接自己改

:结果
- 攻克太多之前想都不敢想的难点,东西出来了

:舒服的地方
- 一筹莫展的境地,有了转圜的余地
- 我这种菜鸟写起来肯定是磕磕绊绊,我就疯狂的打TODO让他FIM,速度得到了保证,不会卡心流
- 真的能够快速验证,小步快跑,把东西拉出来

:不舒服的地方
- 平均一次响应要5min以上。很急,等到切回来我的上下文也是要恢复滴
- 模型质量不足。连我这个python菜鸡都看不下去了,
写的啥啊,应该主要是业务太复杂了罢。。。
- prompt与前期准备工作占到了单一需求开发全流程的 60% 以上。不是说不能接受,就是有些别扭,明明有这些时间写文档,自己写也写完了(如果是java的话)

:评价
- 当然JAVA工作的话,主要还是修修补补为主,不是这种“一口气,一把梭”的情况。。。同时,负责的业务场景很复杂,项目文档建设非常落后,最近commit冲突的量级是以k来统计的 --我没有信心让AI来帮我做这些
- 我能够接受这种合作方式,我认为自己不是AI的奴隶,同时暂时很难取代,我上面所述的工作拆解与指挥领导的这一步
- 后面我会拥抱 Codex 的生态,然后把项目的文档都补充建设起来
- 当然,我也明白, #AI了,我在打一种很新的工#

全部评论
FIM用得溜啊
1 回复 分享
发布于 04-05 17:45 河北
在地铁手打确实费劲哦。。。
点赞 回复 分享
发布于 04-05 17:05 上海
图片是顾村公园的桜
点赞 回复 分享
发布于 04-05 16:47 上海
这就是最近的想法,冒个泡
点赞 回复 分享
发布于 04-05 16:46 上海
暂时来说,这就是极限了。 不过好处就是他确实可以提高上限,因为我确实让我直接写是写不出来的,但是我有拆解的能力,还有评审的能力。所以最终这个东西出来了,皆大欢喜
点赞 回复 分享
发布于 04-05 16:45 上海
...可以使用更加自动化的方法,也可以把我干掉。但是在下的尊严告诉自己,不能容忍这种事的发生,不能容忍,不受掌握的东西滋生蔓延
点赞 回复 分享
发布于 04-05 16:44 上海
字符串长度越界了。。。不得不在这里继续写
点赞 回复 分享
发布于 04-05 16:43 上海

相关推荐

请用两三分钟的时间做个简单的自我介绍。你觉得这两个项目哪个对你来说比较有挑战,我们可以深入聊一下?项目中模型很容易陷入死循环或者格式解析错误,你是怎么处理这些异常情况的?除了限制最大循环次数,还有别的处理方式吗?这个 Agent 具备拆解感情需求的能力,能否举一个具体例子,说明用户输入什么、Agent 内部怎么思考、怎么执行工具、有哪些工具?Agent 内部是怎么调用工具(actor)的?你项目写的是情感需求,但刚才举的是推荐餐厅的例子,这两者有什么关系?adviser 责任链里,记忆拦截、RAG 检索、工具调用的顺序是什么?大模型调用工具后,会再思考是否符合用户要求,这个 react 过程是什么时候做的?长对话场景下,怎么解决上下文窗口的限制?对话信息会去做总结或摘要吗,还是直接存数据库,向量数据库有使用吗?如果长期记忆数据量比较大,影响到 prompt 长度怎么办?历史对话是否也可以提取长期记忆信息?项目中 MCP 工具具体承担了什么作用?你熟练使用 MySQL 的事务控制,这个事务控制指的是什么?MySQL 的 ACID 四个特性分别是什么?你怎么理解 MySQL 的一致性?你了解 CAP 理论吗?CAP 里的一致性 C,和 MySQL 的一致性有什么区别?MySQL 的 Redo log、Undo log、Binlog 三种日志有了解吗?Undo log 主要是做什么用的?Binlog 有了解过吗?Redis 有哪些常用的数据结构?Redis sorted set(zset)的底层数据结构是什么?Redis 使用时有配置持久化机制吗?单机 Redis 节点怎么避免数据丢失?Redis 快照持久化有哪几种方式?除了快照,还有更轻量级、能实现数据恢复的持久化方式吗?你觉得有哪些地方是你比较擅长的,但我还没有问到?RAG 在项目中承担了什么职责?情感类 Agent 项目中,文档切片怎么处理句子重叠、避免语义丢失?文档切完块之后,向量是怎么存储的?你用了关键词检索 + 语义混合检索,这两个怎么理解?怎么保证模型结构化输出一定是 JSON 格式,你做了哪些处理?模型输出可能多空格、多换行导致解析报错,有没有办法避免或在前置环节处理?除了这些,还有什么你比较擅长但我们没聊到的?你之前刷过算法题吗,大概刷了多少道?现场做一道算法题:搜索旋转有序数组,要求 O (logN) 复杂度,你有思路吗?你有什么问题要问我?
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务