1
ty29022 7 小时 11 分钟前 4
不如你贴出手写的一些代码片段和 chatgpt 生成的片段来做个对比
|
2
solituders 7 小时 8 分钟前
不如你贴出手写的一些代码片段和 chatgpt 生成的片段来做个对比
|
3
13482034233 7 小时 5 分钟前
要想要好的 output, 就先得有好的 input, 所以同样一个模型, 同样一个产品业务逻辑, 有的人就能用大模型写出好的代码, 有的则不行
|
4
charlie21 7 小时 4 分钟前 5
人审核代码合理性的审核的能力 > AI 写代码的写的能力 > 人写代码的写的能力
|
5
l4ever 7 小时 2 分钟前
生成->使用->了解为什么这么写, 和自己设想有何出入->取舍->利用.
挺好的, 学习速度明显快了. |
6
FreshOldMan 6 小时 59 分钟前
chagpt o1 写的还不错
|
7
mightybruce 6 小时 59 分钟前 2
最近这种低质量的贴怎么越来越多, 来活跃社区的吗
|
8
xuefeng0578 6 小时 58 分钟前
面对现实吧,早点谋下其它出路
|
9
liujl 6 小时 52 分钟前 via Android
昨天用 claude 这可一个油猴脚本, 纯自然语言,代码规范度,质量非常不错, 程序员的出路回到家编程的本质“理解业务,设计程序业务逻辑,交互逻辑,呈现结果”
|
10
wangtian2020 6 小时 50 分钟前
写代码的事你少管
|
11
junas7 6 小时 16 分钟前 via Android
你也是出租车司机吗,来抗议 ai 智能驾驶
|
12
GeekGao 6 小时 14 分钟前
使用 AI 也有技巧的,能力不行,用 AI 也很难与同行竞争 LOL
|
13
zjh7890 6 小时 6 分钟前 via iPhone
路过…推荐下 JetBrains IDE 可用的类 cursor 插件,gpt-tools…
|
14
zjh7890 6 小时 5 分钟前 via iPhone
我时常觉得,ai 写得比我好…结构清晰…
|
15
zhouxelf 6 小时 4 分钟前
污染代码?? please show your code
|
16
bmpidev2019 6 小时 1 分钟前
大概率你写的代码质量不如 Claude 的高,除非是一些专业领域,它没有训练过的,但是最佳实践,编程范式,设计模式,它都能吊打你的水平。
|
17
lyxxxh2 4 小时 40 分钟前 1
```
# 以下由 gpt 生成 def init_input_and_output_door(self): frame_results = copy.deepcopy( self.frame_results ) # self.frame_results 会被以下代码改变 找太麻烦了 直接拷贝到新对象 door_line = [[828, 438], [1208, 868]] door_area_line = [[623, 523], [1144, 982]] door_line = [[336, 0], [1698, 1222]] door_line =[[186, 0], [1428, 1222]] door_line = [[336, 0], [1698, 1222]] def is_above_line(point, line): (x1, y1), (x2, y2) = line return (y2 - y1) * (point[0] - x1) > (x2 - x1) * (point[1] - y1) def filter_boxes_above_line(frame_results, door_area_line): filtered_results = [] for frame in frame_results: filtered_boxes = [] for box in frame["boxes"]: x_min, y_min, x_max, y_max = box box_center = [(x_min + x_max) / 2, (y_min + y_max) / 2] if is_above_line(box_center, door_area_line): filtered_boxes.append(box) if filtered_boxes: filtered_frame = { "id": frame["id"], "boxes": filtered_boxes, "reid_dets": frame["reid_dets"], # 保留每个帧的 reid_dets } filtered_results.append(filtered_frame) return filtered_results filtered_frame_results = filter_boxes_above_line(frame_results, door_area_line) filtered_frame_results = [ item for item in filtered_frame_results if len(item["boxes"]) != 0 ] # 使用 IOUTracker 类 tracker = IOUTracker(iou_threshold=0.3) all_tracks = tracker.track_objects(filtered_frame_results) # 用于记录人的信息、reid_dets 和 frame_ids person_groups = defaultdict(list) person_reid_dets = defaultdict(list) person_frame_ids = defaultdict(list) for frame, track_ids in zip(filtered_frame_results, all_tracks): for box in frame["boxes"]: matching_id = [ id for id, tracked_box in track_ids.items() if tracked_box == box ] if matching_id: box.append("person_id: {}".format(matching_id[0])) person_groups[matching_id[0]].append(box[:-1]) # 不包括 person_id person_reid_dets[matching_id[0]].append( frame["reid_dets"] ) # 记录 reid_dets person_frame_ids[matching_id[0]].append( frame["id"] ) # 记录 frame id crossing_events = {} final_crossing_frames = {} # 门线参数 m = (door_line[1][1] - door_line[0][1]) / ( door_line[1][0] - door_line[0][0] ) # 斜率 c = door_line[0][1] - m * door_line[0][0] # 截距 def check_position(x, y): line_y = m * x + c return y - line_y # > 0 在线上方,< 0 在线下方 for person_id, boxes in person_groups.items(): last_pos = None entry_index = None exit_index = None # if person_id != 2: # continue for idx, box in enumerate(boxes): x_center = (box[0] + box[2]) / 2 y_center = (box[1] + box[3]) / 2 current_pos = check_position(x_center, y_center) if last_pos is not None: if last_pos > 0 and current_pos < 0: exit_index = idx elif last_pos < 0 and current_pos > 0: entry_index = idx last_pos = current_pos crossing_events[person_id] = { "input_index": exit_index, "output_index": entry_index, } for person_id, events in crossing_events.items(): person_data = [] boxes = person_groups[person_id] reid_dets = person_reid_dets[person_id] frame_ids = person_frame_ids[person_id] # 获取 frame id 列表 if events["input_index"] is not None: input_index = events["input_index"] input_frames = boxes[input_index : input_index + 3] input_reid_dets = reid_dets[input_index : input_index + 3] input_frame_ids = frame_ids[ input_index : input_index + 3 ] # 取相应的 frame ids person_data.append( { "type": "output", "all_box": input_frames, "reid_dets": input_reid_dets, "frame_ids": input_frame_ids, "ids": list( range(input_index, input_index + len(input_frames)) ), } ) if events["output_index"] is not None: output_index = events["output_index"] output_frames_start = max(0, output_index - 2) output_frames = boxes[output_frames_start : output_index + 1] output_reid_dets = reid_dets[output_frames_start : output_index + 1] output_frame_ids = frame_ids[ output_frames_start : output_index + 1 ] # 取相应的 frame ids person_data.append( { "type": "input", "all_box": output_frames, "reid_dets": output_reid_dets, "frame_ids": output_frame_ids, "ids": list(range(output_frames_start, output_index + 1)), } ) final_crossing_frames[person_id] = person_data ``` 之前让 gpt 写的。 也不是不能用,就是没一点"设计"的感觉。 让他再优化下,直接处 bug 。 逻辑越复杂,我就不敢用 ai 。 因为描述太麻烦了,得写篇作文给他。 再者很难阅读和修改。 后面我直接重写了 ``` # 定义数据 for box, person_id in zip(data["head_boxes"], person_ids): if person_id is None: continue if person_id not in self.door: # 初始化 key self.door[person_id] = [] self.user_door_status[person_id] = None # 用户和门状态 for device in self.devices: # 用户和设备状态 if person_id not in device["persons"]: device["persons"][person_id] = [] self.door[person_id].append( {"box": box, "up_or_line": self.box_line_up_or_down(box)} ) # 添加到门记录器 if len(self.door[person_id]) > 100: # 用户超过一百 self.door[person_id] = self.door[person_id][-50:] for device in self.devices: # 添加到设备记录器 if person_id not in device: device["persons"][person_id].append( self.calculate_containment_ratio(device["box"], box) ) if len(device["persons"][person_id]) > 100: device["persons"][person_id] = device["persons"][person_id][-50:] # 根据 for person_id in self.door: ... .... ``` |
18
delacey 4 小时 40 分钟前
@bmpidev2019 感觉程序员这行危险了,既然 ai 代码水平超过大部分程序员,那大家以后怎么和 ai 竞争呢?
|
19
justfindu 4 小时 38 分钟前
你都是生成直接上? 不会在给它提点要求优化一下代码和逻辑?
|
20
FreshOldMan 4 小时 34 分钟前
@delacey #18 就是没法竞争,不仅包括程序员
|
21
UIHIHUHIU 4 小时 26 分钟前
我倒觉得 ai 让很多没有什么代码基础或者说基础不好的人能写点代码了,毕竟不是每个人都是程序员,大部分人还只是有一点代码需求,但是去深入学的话太费时间了,ai 就是解决这个问题的
|
22
littlewing 4 小时 24 分钟前
公司给买了 Copilot ,我用他作为增强型的代码补全
|
23
bk201 4 小时 23 分钟前
ai 的东西不调,根本没法用,倒是很多体力活可以用它
|
24
baysonfox 4 小时 21 分钟前
我现在一般是写个基本逻辑 -> AI 细化-> 自己分析调整 -> AI 提建议 进一步优化性能/可读性
|
25
vsitebon 4 小时 9 分钟前
@mightybruce #5 金币比之前值钱了
|
26
bmpidev2019 4 小时 8 分钟前
@delacey 先学会怎么用 AI 写代码,而不是自己写,汽车出来了,你还研究如何拉黄包车拉的更稳更快?难道不是学会开汽车吗
|
27
prosgtsr 3 小时 49 分钟前
只用过方法内的补全。感觉从代码规范上来说还不错。。不过 bug 确实也不少,还是要肉眼 debug
更复杂的直接生成方法、类,就没用过了 |
28
Jerry23333 3 小时 35 分钟前
在 ba 都待过,都在大力推 ai 生成代码,甚至会考核团队的使用率。
|
29
Mogugugugu 3 小时 26 分钟前 4
|
30
uzumaki 3 小时 23 分钟前
咋了 你现在 txt 写代码了?
|
31
murmur 3 小时 21 分钟前
ai 太爽了
我之前做数据对接,写的 keyvalue 格式,结果错了,要求[{key: xxx, value: xxx}]格式,我用 AI 一下就给我翻译过来了,又快有准 |
32
EdisonEdz 3 小时 20 分钟前
我们公司还要求 AI 生成的占比了,属于是本末倒置了
|
33
Promtheus 3 小时 15 分钟前
ai 只是给个建议啊 难道你一行不看直接能跑就用的吗🤣 只是更强大的智能补全而已 主要还是靠人
|
34
Greendays 2 小时 39 分钟前
繁琐的部分用 AI 很合适,尤其是各种格式转换,还有正则表达式。简单的部分还是自己来吧。
|
35
beryl OP |
36
beryl OP |
37
rlds 2 小时 13 分钟前
除非 ai 写的代码你不看,直接就用了,不然 ai 作为辅助提示和某些代码片段补全还是不错的。
|
38
james2013 1 小时 10 分钟前 via Android
大规模写不了
作为中小公司的程序员,面向业务开发,只要有 3 年以上经验,写业务代码只是脑力劳动,只有少数情况才用下 |
39
simpleman 1 小时 5 分钟前
我反正尽量使用 gpt, 有时需要用没见过的算法, gpt 一下就搞定了.
|
40
InkStone 47 分钟前
- 开发者自己知道要写什么,写成什么样,用 AI 来快速完成编码这个纯劳力过程 质量 √ 速度 √
- 开发者大概知道要些什么,向 AI 提需求,能简单验证一下代码,但没什么明确预期 质量 × 速度 √ - 开发者什么都不懂,把 AI 当许愿机用,生成什么算什么 质量 × 速度 × AI 能给出什么样质量的代码,其实取决于开发自己的水平。 |
41
terrysnake 32 分钟前
硅谷程序员 80% 的代码都是 AI 写的了,别在这高贵了。关键是要学会怎么和 AI 配合,提高效率。
|
42
franswish 17 分钟前
@InkStone
前两条不评价,关于第三条:“- 开发者什么都不懂,把 AI 当许愿机用,生成什么算什么 质量 × 速度 ×” 你这么想,把这个开发者当许愿机,产出=0 ,因为他什么都不懂,把 AI 当许愿机,至少能给一些反馈吧,即使是不能用,大概率也是相关的 |
43
guoliim 16 分钟前
好用 快用
|