• ChatGPT与码农的机会


    之前一篇博客已经写了有关AI在博客编写方面的优势与对未来博客的编写方面的思考。这篇文档我继续分享我在开发中的一个案例和相关的感想。

    事件还原

    我发现ChatGPT也可以帮助我编写OData,于是我也利用GPT帮助我编程。

    • OData如何将filter与apply字段联合使用?答案如下:
    GET /odata/Products?$apply=groupby((Category), aggregate(UnitsInStock with sum as TotalUnitsInStock))&$filter=TotalUnitsInStock gt 100
    

    ChatGPT提供了一个思路,不过这个例子却不能正确运行,因为通过聚合输出的结果已经不能再进行进一步的OData筛选操作了。

    于是我继续告诉它这个不对,让他重新编写,却一直得不到令我满意的结果。

    那么换一个问题,关于聚合查询的,对应的数据类型,可以看之前的我发的文章,我提问“我需要使用odata查询按照adcode进行归类,统计每个类别下面的attachdeviceinfo数量、deviceinfo数量和attachdevicetype数量”。回答如下:

    /odata/DeviceInfos?$apply=groupby((Adcode), aggregate(AttachDevices/$count as NumAttachDevices, $count as NumDeviceInfos, AttachDevices/AttachDeviceType/$countdistinct as NumAttachDeviceTypes))
    

    运行后报错,提示缺少with,于是我定位了问题之后,我重新提问“提示AttachDevices/$count缺少with,请重新修改”

    ChatGPT开始给我乱写了:

    “这个错误提示是由于count操作需要与一些其他操作一起使用,例如count操作需要与一些其他操作一起使用,例如filter或select。您需要将select。您需要将count操作与其中一个操作组合使用才能使其有效。

    例如,如果您想要统计满足某个过滤条件的设备数量,您可以使用以下URL:

    /AttachDevices?$filter=Property eq 'Value'&$count=true

    请注意,在此URL中,count操作需要与count操作需要与filter操作组合使用,并且filter操作必须出现在filter操作必须出现在count操作之前。”

    已经开始给我扯东扯西了,然后我继续修改提问的方式,依旧没有得到的我想要的结果。我总结一下:

    • OData相关的资料比较少,数据集相对也较少,所以适配并不好,感觉还是一个冷门的技术....
    • AI提供的思路完全没有问题,但是具体实现的语法上并不符合OData的规范。
    • prompt的方式或许也需要改进,提供更多的上下文或者辅助信息,帮助AI更好地解决问题。

    最后,我想到如果$count不行,那么使用实体的具体属性用于统计是否可以?改成以下就OK了。

    odata/attachdeviceinfos?$apply=groupby((deviceinfo/Adcode), aggregate($count as NumAttachDevices, deviceinfo/deviceid with countdistinct as NumDevices, attachdevicetype/id with countdistinct as NumTypes))
    

    机会

    在整个过程中,AI做了大多数工作,但是我依然是那个临门一脚的角色。所以,AI时代提供给现在程序员的机会:

    • 依然需要掌握一些相对冷门,或者较为复杂的技术,这样在AI给的解决方案错误的情况下,不至于完全抓瞎。
    • 掌握快速Troubleshooting的技巧,遇见AI也不能解决的问题时,通过文档和相关经验迅速给出符合场景要求的方案。

    所以,请警惕完全依赖AI时,它可能无法提供答案或者是错误答案。我想起了一个很久之前的电影《机械公敌》,人类在AI背叛的时候一时束手无策。。。希望我们未来不会这样。

  • 相关阅读:
    防孤岛保护装置在光伏行业的应用
    python 装饰器
    A. Image
    基于逆滤波算法的无约束图像超分辨重构研究-附Matlab代码
    19、zynq核引出外部引脚
    面向对象--继承 demo
    Linux 环境搭建以及xshell远程连接
    4.4 审计
    尚医通 (二十三) --------- MongoDB 入门
    linux日常记录1
  • 原文地址:https://www.cnblogs.com/podolski/p/17264634.html