生成式人工智能工具是如何改变编程行为的呢?这是4月中由里约热内卢联邦大学(Universidade Federal do Rio de Janeiro, UFR) 阿尔贝托・路易斯・科英布拉工程研究生院(Alberto Luiz Coimbra Institute of Post-Graduation and Research in Engineering,简称COPPE)系统与计算机工程项目(PESC)发起的 “关于使用人工智能进行编程的对话” 辩论的出发点。此次活动汇聚了卡洛斯・爱德华多・佩德雷拉教授和热拉尔多・克塞奥教授,由普莉西拉・利马教授主持,就编程日常中的真实经验和变革展开了坦诚的交流。
教授们讲述了像ChatGPT这样的语言模型的使用,是如何直接影响他们开发解决方案、编写代码和测试想法的方式。据他们所说,人工智能不仅加快了工作速度,还激发了思考和组织计算推理的新方式。
“以前我在谷歌上搜索然后进行调整。如今,我使用人工智能来生成完整的代码。” 克塞奥评论道。“我用自然语言解释我想要的东西,就像在授课一样,然后人工智能会在开始编码之前提出各种方法。” 佩德雷拉说道。
在实际应用方面,特别是在医学领域,佩德雷拉强调,以前需要数周才能完成的任务,如今几个小时就能完成,而且不牺牲严谨性。他认为,人工智能要求研究人员具备更多的技术知识,因为人工智能给出的解决方案并不总是正确的,检查并理解所使用的每一项技术至关重要。
对话还探讨了在软件开发中使用人工智能所面临的挑战,比如:
- 在与人工智能交互过程中出现错误并令人沮丧;
- 存在失去对代码控制的风险;
- 经验不足的用户会产生一种自己掌握了技术的错觉;
- 即使有看似高效的解决方案,人为的筛选和把控也很重要。
尽管存在这些限制,教授们一致认为,人工智能使编程过程不再那么孤立,更具交互性和更高的生产效率,此外还为持续学习开辟了新的可能性。正如克塞奥所强调的,关键在于将人工智能作为伙伴来使用,同时不放弃批判性能力。“人工智能不会取代程序员,它会扩大程序员的能力范围。但这需要更多的责任感、注意力和持续学习。” 佩德雷拉总结道。