评估 ChatGPT-3.5 在不同难度级别编程问题中的效率:实证分析
软件工程
2024-11-13 v1 人工智能
摘要
ChatGPT 及其他大语言模型(LLM)有望通过自动从程序规范生成代码来 revolutionize 软件开发。我们评估了 ChatGPT GPT-3.5-turbo 模型在 LeetCode 上的表现,该平台提供用于技术面试练习的算法编程挑战,涵盖易、中、难三个难度级别。我们测试了三个主要假设:第一,ChatGPT 随难度升高解出的问题比例下降(假设 1);第二,提示工程可提升 ChatGPT 的性能,对较简单的问题收益更大,对较难的问题收益递减(假设 2);第三,ChatGPT 在 Python、Java、C++ 等流行语言中的表现优于 Elixir、Erlang、Racket 等较少使用的语言(假设 3)。为检验这些假设,我们使用 Python 脚本自动生成提示,指示 ChatGPT 创建 Python 解决方案。这些解决方案被存储并在 LeetCode 上手动提交以验证正确性。对于假设 1,结果显示 GPT-3.5-turbo 模型分别成功解出 92% 的简单问题、79% 的中等难度问题和 51% 的困难问题。对于假设 2,提示工程带来的改进为 14-29% 的链路思考提示(Chain of Thought Prompting)、38-60% 的通过提供失败测试用例的第二次反馈提示,以及通过切换到 GPT-4 的 33-58%。从随机抽取的几个用 Python 解决的问题中,ChatGPT 也用 Java 解决了 78%,用 C++ 解决了 50%,而在 Elixir、Erlang、Racket 中均未解决。这些发现 generally 验证了所有三个假设。
引用
@article{arxiv.2411.07529,
title = {Evaluating ChatGPT-3.5 Efficiency in Solving Coding Problems of Different Complexity Levels: An Empirical Analysis},
author = {Minda Li and Bhaskar Krishnamachari},
journal= {arXiv preprint arXiv:2411.07529},
year = {2024}
}