論文の概要: Guided Debugging of Auto-Translated Code Using Differential Testing
- arxiv url: http://arxiv.org/abs/2501.09475v1
- Date: Thu, 16 Jan 2025 11:27:25 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-17 15:11:17.963782
- Title: Guided Debugging of Auto-Translated Code Using Differential Testing
- Title(参考訳): 微分テストを用いた自動翻訳コードのガイドデバッグ
- Authors: Shengnan Wu, Xinyu Sun, Xin Wang, Yangfan Zhou,
- Abstract要約: tHinterは自動翻訳コードで翻訳エラーを見つけるツールである。
ファジィを使用して、翻訳されたコードを徹底的に探索する多様なテストケースを生成する。
次に、カバレッジ情報と差分テストの実行結果から翻訳エラーをピンポイントするアルゴリズムに依存する。
- 参考スコア(独自算出の注目度): 9.897793495754225
- License:
- Abstract: Large Language Models (LLMs) hold great promise in the task of code translation. However, the lack of explainability complicates the identification of the inevitable translation errors. In this paper, we propose tHinter, a debugging tool to locate translation errors in auto-translated code. The core idea of tHinter is that correctly translated, the source and translated code should present the same functionalities, giving the same output for the same input. Hence, lines in the translated code responsible for output differences are possibly translation errors. First, tHinter employs fuzzing to generate diverse test cases that thoroughly explore the translated code. Then, tHinter relies on a heuristic algorithm to pinpoint translation errors from coverage information and differential testing execution results of those test cases. This heuristic algorithm is designed to leverage both the statistics and the expertise of developers. Comprehensive experiments with real code show its effectiveness. It reduces 71% lines developers need to review during debugging and increases the likelihood of the LLM fixing translation errors in a single query by 59%. Developers generally consider it satisfactory and helpful.
- Abstract(参考訳): 大きな言語モデル(LLM)は、コード翻訳のタスクにおいて大きな約束を持っています。
しかし、説明可能性の欠如は、避けられない翻訳エラーの識別を複雑にする。
本稿では,自動翻訳コードの翻訳誤りを検出するデバッグツールtHinterを提案する。
tHinterの中核的な考え方は、正しく翻訳されたソースと翻訳されたコードは、同じ機能を示し、同じ入力に対して同じ出力を与える、ということである。
したがって、出力差に責任がある翻訳コードの行は、おそらく翻訳エラーである。
まず、tHinterはファジィを使用して、翻訳されたコードを徹底的に探索する多様なテストケースを生成する。
そして、tHinterは、それらのテストケースのカバレッジ情報と差分テスト実行結果から翻訳エラーを特定するためのヒューリスティックアルゴリズムに依存している。
このヒューリスティックアルゴリズムは、統計と開発者の専門知識の両方を活用するように設計されている。
実コードによる総合的な実験は、その効果を示している。
これにより、デバッグ中に開発者がレビューする必要がある71%の行が削減され、単一のクエリでLLMが変換エラーを修正する可能性が59%向上する。
開発者は一般的に、満足し、役に立ちます。
関連論文リスト
- Repository-Level Compositional Code Translation and Validation [5.269923665485903]
リポジトリレベルのコード翻訳を自動化するニューロシンボリックアプローチであるAlphaTransを提案する。
AlphaTransを利用して,836,8575,2719>クラス,メソッド,テストからなる10の実世界のオープンソースプロジェクトを翻訳しました。
翻訳されたコード断片の99.1%は構文的に正しいものであり、AlphaTransは翻訳の動作と機能的正しさを25.8%で検証している。
論文 参考訳(メタデータ) (2024-10-31T16:46:52Z) - Multilingual Contrastive Decoding via Language-Agnostic Layers Skipping [60.458273797431836]
対照的なレイヤ(DoLa)によるデコーディングは、大規模言語モデルの生成品質を改善するために設計されている。
このアプローチは英語以外のタスクではうまくいきません。
モデルの前方通過における言語遷移に関する従来の解釈可能性の研究から着想を得て,改良されたコントラスト復号アルゴリズムを提案する。
論文 参考訳(メタデータ) (2024-07-15T15:14:01Z) - Rectifier: Code Translation with Corrector via LLMs [11.38401806203093]
本稿では,翻訳誤りを修復するマイクロ・ユニバーサルモデルであるRectifierを提案する。
C++,Java,Python間の翻訳タスクの実験結果から,本モデルが有効な修復能力を有することが示された。
論文 参考訳(メタデータ) (2024-07-10T08:58:41Z) - Exploring and Unleashing the Power of Large Language Models in Automated Code Translation [40.25727029618665]
本稿では,自動翻訳タスクのための多種多様なLLMと学習ベーストランスパイラについて検討する。
UniTrans は、様々な LLM に適用可能な統一コード翻訳フレームワークである。
最近の3つのLLMはUniTransでテストされており、いずれも大幅に改善されている。
論文 参考訳(メタデータ) (2024-04-23T00:49:46Z) - Building Accurate Translation-Tailored LLMs with Language Aware Instruction Tuning [57.323716555996114]
オフターゲット翻訳は、特に低リソース言語では未解決の問題である。
最近の研究は、翻訳命令の機能を強調するために高度なプロンプト戦略を設計するか、LLMの文脈内学習能力を活用している。
本研究では,LLMの命令追従能力(特に翻訳方向)を向上させるために,2段階の微調整アルゴリズムを設計する。
論文 参考訳(メタデータ) (2024-03-21T13:47:40Z) - Mitigating Hallucinations and Off-target Machine Translation with
Source-Contrastive and Language-Contrastive Decoding [53.84948040596055]
修正された復号化目標を用いて、障害ケースを緩和する2つの関連手法を提案する。
大規模多言語モデルM2M-100 (418M) とSMaLL-100の実験は、これらの手法が幻覚やターゲット外の翻訳を抑制することを示した。
論文 参考訳(メタデータ) (2023-09-13T17:15:27Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - ParroT: Translating during Chat using Large Language Models tuned with
Human Translation and Feedback [90.20262941911027]
ParroTはチャット中の翻訳機能を強化し、規制するフレームワークである。
具体的には、ParroTは、翻訳データを命令フォロースタイルに書き換える。
本稿では,ParroTモデルを微調整するための3つの命令タイプを提案する。
論文 参考訳(メタデータ) (2023-04-05T13:12:00Z) - Code Translation with Compiler Representations [21.702473137941006]
従来のトランスパイラは構文情報と手作りのルールに依存しており、適用性が制限され、不自然なコードを生成する。
コードへのニューラルマシン翻訳(NMT)アプローチの適用は、自然な翻訳を得られる一連のプログラムをうまく拡張した。
ここでは、C++、Java、Rust、Go言語に関する結果とともに、IR、特にLLVM IRによるコード翻訳を強化することを提案する。
論文 参考訳(メタデータ) (2022-06-30T14:21:57Z) - Leveraging Automated Unit Tests for Unsupervised Code Translation [34.84910520660154]
本稿では,無効翻訳をフィルタリングする自動単体テストシステムを提案する。
このフィルタデータセットを用いて教師なしモデルの微調整を行うことで,翻訳のノイズを著しく低減できることがわかった。
特に、Java $to$ Python と Python $to$ C++ は、それぞれ 16% と 24% よりも優れています。
論文 参考訳(メタデータ) (2021-10-13T15:08:43Z) - How to Probe Sentence Embeddings in Low-Resource Languages: On
Structural Design Choices for Probing Task Evaluation [82.96358326053115]
構造設計選択に対する探索作業結果の感度について検討する。
我々は、英語で識別する「安定な領域」にある設計選択を多言語で構成した埋め込みを探索する。
私たちは英語の結果が他の言語に移行しないことに気付きます。
論文 参考訳(メタデータ) (2020-06-16T12:37:50Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。