論文の概要: Lost in Translation: A Study of Bugs Introduced by Large Language Models
while Translating Code
- arxiv url: http://arxiv.org/abs/2308.03109v3
- Date: Tue, 16 Jan 2024 11:25:44 GMT
- ステータス: 処理完了
- システム内更新日: 2024-01-18 01:57:25.096870
- Title: Lost in Translation: A Study of Bugs Introduced by Large Language Models
while Translating Code
- Title(参考訳): lost in translation: コード翻訳中に大規模言語モデルによって導入されたバグの研究
- Authors: Rangeet Pan, Ali Reza Ibrahimzada, Rahul Krishna, Divya Sankar,
Lambert Pouguem Wassi, Michele Merler, Boris Sobolev, Raju Pavuluri, Saurabh
Sinha, Reyhaneh Jabbarvand
- Abstract要約: コード翻訳における一般LLMとコードLLMの能力について,大規模な実証的研究を行った。
私たちの研究は、3つのベンチマークと2つの実世界のプロジェクトからの1,700のコードサンプルの翻訳に関するものです。
LLMの正しい翻訳は2.1%から47.3%であることがわかった。
- 参考スコア(独自算出の注目度): 5.915447908295047
- License: http://creativecommons.org/licenses/by-sa/4.0/
- Abstract: Code translation aims to convert source code from one programming language
(PL) to another. Given the promising abilities of large language models (LLMs)
in code synthesis, researchers are exploring their potential to automate code
translation. The prerequisite for advancing the state of LLM-based code
translation is to understand their promises and limitations over existing
techniques. To that end, we present a large-scale empirical study to
investigate the ability of general LLMs and code LLMs for code translation
across pairs of different languages, including C, C++, Go, Java, and Python.
Our study, which involves the translation of 1,700 code samples from three
benchmarks and two real-world projects, reveals that LLMs are yet to be
reliably used to automate code translation -- with correct translations ranging
from 2.1% to 47.3% for the studied LLMs. Further manual investigation of
unsuccessful translations identifies 15 categories of translation bugs. We also
compare LLM-based code translation with traditional non-LLM-based approaches.
Our analysis shows that these two classes of techniques have their own
strengths and weaknesses. Finally, insights from our study suggest that
providing more context to LLMs during translation can help them produce better
results. To that end, we propose a prompt-crafting approach based on the
symptoms of erroneous translations; this improves the performance of LLM-based
code translation by 5.5% on average. Our study is the first of its kind, in
terms of scale and breadth, that provides insights into the current limitations
of LLMs in code translation and opportunities for improving them. Our dataset
-- consisting of 1,700 code samples in five PLs with 10K+ tests, 43K+
translated code, 1,748 manually labeled bugs, and 1,365 bug-fix pairs -- can
help drive research in this area.
- Abstract(参考訳): コード翻訳は、ソースコードをあるプログラミング言語(PL)から別のプログラミング言語に変換することを目的としている。
コード合成における大きな言語モデル(LLM)の有望な能力を考えると、研究者はコード翻訳を自動化する可能性を探っている。
LLMベースのコード翻訳の進歩の前提は、既存の技術に対する彼らの約束と限界を理解することである。
そこで本研究では,C言語,C++言語,Go言語,Java言語,Python言語など,多言語間のコード翻訳における一般的なLLMとコードLLMの能力について,大規模な実証的研究を行った。
3つのベンチマークと2つの実世界のプロジェクトからの1,700のコードサンプルの翻訳を含む我々の研究は、LLMがまだコードの翻訳を自動化するために確実に使われていないことを明らかにしている。
翻訳失敗のさらなる手作業による調査では、翻訳バグの15のカテゴリが特定されている。
LLMベースのコード翻訳と従来の非LLMベースのアプローチを比較した。
分析の結果,これら2つの手法はそれぞれの強みと弱みを有することがわかった。
最後に、我々の研究から得た知見は、翻訳中にLLMにより多くのコンテキストを提供することで、より良い結果が得られることを示唆している。
そこで本研究では,誤訳の症状に基づくプロンプト作成手法を提案し,LLMに基づくコード翻訳の性能を平均5.5%向上させる。
私たちの研究は、コード翻訳におけるllmの現在の制限と改善の機会に関する洞察を提供する、スケールと幅という観点で最初のものです。
私たちのデータセットは,5つのPLに1,700のコードサンプルと10K以上のテスト,43K以上の翻訳コード,1748の手作業によるラベル付きバグ,1365のバグフィックスペアで構成されています。
関連論文リスト
- Language Models and Cycle Consistency for Self-Reflective Machine Translation [1.79487674052027]
我々は、ソース言語Aからターゲット言語Bへの複数の翻訳候補を生成し、その後、これらの候補を元の言語Aに翻訳する。
トークンレベルの精度や精度などの指標を用いて、原文と裏文の周期一貫性を評価することにより、言語Bの翻訳品質を暗黙的に推定する。
各原文に対して、翻訳候補を、原文と最適なサイクル整合性で同定し、最終回答とする。
論文 参考訳(メタデータ) (2024-11-05T04:01:41Z) - Unraveling the Potential of Large Language Models in Code Translation: How Far Are We? [4.616570111453259]
大規模言語モデル(LLM)は様々なタスクにおいて最先端のパフォーマンスを示すが、コード翻訳には苦労する。
コード翻訳タスクにおけるLLMの能力と能力を利用するための大規模な実証的研究を行う。
提案手法は,(1)ソースと対象言語間の中間言語を選択する中間翻訳と,(2)自己生成並列データ上でLPMを微調整する自己学習である。
論文 参考訳(メタデータ) (2024-10-13T12:20:12Z) - What's Wrong with Your Code Generated by Large Language Models? An Extensive Study [80.18342600996601]
大規模言語モデル(LLM)は、標準解に比べて短いがより複雑なコードを生成する。
3つのカテゴリと12のサブカテゴリを含む誤ったコードに対するバグの分類を開発し、一般的なバグタイプに対する根本原因を分析する。
そこで本研究では,LLMがバグタイプやコンパイラフィードバックに基づいて生成したコードを批判し,修正することのできる,自己批判を導入した新たな学習自由反復手法を提案する。
論文 参考訳(メタデータ) (2024-07-08T17:27:17Z) - TasTe: Teaching Large Language Models to Translate through Self-Reflection [82.83958470745381]
大規模言語モデル(LLM)は、様々な自然言語処理タスクにおいて顕著な性能を示した。
本稿では,自己回帰を通した翻訳を行うTasTeフレームワークを提案する。
WMT22ベンチマークにおける4つの言語方向の評価結果から,既存の手法と比較して,提案手法の有効性が示された。
論文 参考訳(メタデータ) (2024-06-12T17:21:21Z) - Towards Translating Real-World Code with LLMs: A Study of Translating to Rust [13.743967357458287]
大規模言語モデル(LLM)は、ほとんどのプログラミング言語でコードを記述する能力のため、コード翻訳において有望であることを示す。
実世界のオープンソースプロジェクトから抽出したコードについて検討する。
FLOURINEは、差分ファジィを使用して、Rust翻訳が元のソースプログラムと同等のI/Oかどうかをチェックする、エンドツーエンドのコード変換ツールである。
論文 参考訳(メタデータ) (2024-05-19T10:54:03Z) - Building Accurate Translation-Tailored LLMs with Language Aware Instruction Tuning [57.323716555996114]
オフターゲット翻訳は、特に低リソース言語では未解決の問題である。
最近の研究は、翻訳命令の機能を強調するために高度なプロンプト戦略を設計するか、LLMの文脈内学習能力を活用している。
本研究では,LLMの命令追従能力(特に翻訳方向)を向上させるために,2段階の微調整アルゴリズムを設計する。
論文 参考訳(メタデータ) (2024-03-21T13:47:40Z) - Large Language Model-Aware In-Context Learning for Code Generation [75.68709482932903]
大規模言語モデル(LLM)は、コード生成において印象的なコンテキスト内学習(ICL)能力を示している。
コード生成のためのLAIL (LLM-Aware In-context Learning) という新しい学習ベース選択手法を提案する。
論文 参考訳(メタデータ) (2023-10-15T06:12:58Z) - Multilingual Machine Translation with Large Language Models: Empirical Results and Analysis [103.89753784762445]
大規模言語モデル(LLM)は多言語機械翻訳(MMT)の処理において顕著な可能性を示した。
本稿では, MMT における LLM の利点と課題を体系的に検討する。
また,ChatGPTとGPT-4を含む8つのLLMを徹底的に評価した。
論文 参考訳(メタデータ) (2023-04-10T15:51:30Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。