論文の概要: Understanding the Effectiveness of Large Language Models in Code
Translation
- arxiv url: http://arxiv.org/abs/2308.03109v1
- Date: Sun, 6 Aug 2023 13:33:13 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 15:10:14.461724
- Title: Understanding the Effectiveness of Large Language Models in Code
Translation
- Title(参考訳): コード翻訳における大規模言語モデルの有効性の理解
- 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)のコード翻訳能力について,大規模な実証的研究を行った。
私たちの分析では、3つの異なるベンチマークと実世界のプロジェクトから1,700のコードサンプルを翻訳しています。
我々の研究は、コード翻訳におけるLLMの現在の限界についての洞察を提供する、その規模と幅の点で、最初のものである。
- 参考スコア(独自算出の注目度): 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 actively exploring their potential to
automate code translation, i.e., generating code in target PL from its
equivalent in another PL. The pre-requisite for advancing the state of
LLM-based code translation is to understand their limitations. To that end, we
present a large-scale empirical study to investigate the ability of LLMs,
including general LLMs and code LLMs, for code translation across pairs of
different languages, including C, C++, Go, Java, and Python. Our analysis
involves the translation of 1,700 code samples from three distinct benchmarks
and real-world projects, revealing LLMs are yet to be reliably used to automate
code translation -- with incorrect translations ranging from 52.7% to 97.9%
across the studied LLMs. Further manual investigation of unsuccessful
translations among all PLs identifies 14 root causes for translation bugs.
Based on the insights from the empirical study, we propose a prompt-crafting
approach to provide additional context for LLMs, improving the performance of
LLM-based code translation by 5.5% on average across different PLs, LLMs, and
benchmarks. Our study is the first of its kind, in terms of its scale and
breadth, that provides insights into the current limitations of LLMs in code
translation and opportunities for improving them. Our collected extensive
dataset -- consisting of 1,700 code samples written in five PLs with 10K+
tests, 43K+ translated code, 1,725 manually labeled bugs, and 1,365 bug-fix
pairs generated using LLMs -- can help drive research in this area.
- Abstract(参考訳): コード翻訳は、ソースコードをあるプログラミング言語(PL)から別のプログラミング言語に変換することを目的としている。
コード合成における大規模言語モデル(llms)の有望な能力を考えると、研究者はコード翻訳を自動化する可能性、すなわち、他のplで同等のコードからターゲットplでコードを生成する可能性を積極的に探っている。
LLMベースのコード翻訳の進歩の前提条件は、それらの制限を理解することである。
そこで本研究では,C言語,C++言語,Go言語,Java言語,Python言語など,多言語間のコード翻訳において,汎用LLMやコードLLMなどのLLMの能力について,大規模な実証研究を行った。
我々の分析では、3つの異なるベンチマークと実世界のプロジェクトから1,700のコードサンプルを翻訳し、LLMがコード翻訳の自動化にまだ確実に使われていないことを明らかにした。
全PLの翻訳失敗に関するさらなる手作業による調査では、翻訳バグの14の根本原因が特定されている。
実験的な研究から得られた知見に基づいて,LLMに付加的なコンテキストを提供することにより,PL,LLM,ベンチマーク間で平均5.5%のLLMベースのコード翻訳性能を向上させることを提案する。
我々の研究は、その規模と幅の点で、コード翻訳におけるLLMの現在の限界とそれらを改善する機会についての洞察を提供する最初のものである。
10k以上のテストを含む5つのplで記述された1,700のコードサンプル、43k以上の翻訳コード、1,725の手動ラベル付きバグ、および1,365のバグフィックスペアで構成された広範なデータセットは、この領域の研究の推進に役立ちます。
関連論文リスト
- 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。