論文の概要: Natural Language Outlines for Code: Literate Programming in the LLM Era
- arxiv url: http://arxiv.org/abs/2408.04820v2
- Date: Wed, 15 Jan 2025 03:43:22 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-16 15:51:12.768076
- Title: Natural Language Outlines for Code: Literate Programming in the LLM Era
- Title(参考訳): コードのための自然言語の概要:LLM時代のリテラトプログラミング
- Authors: Kensen Shi, Deniz Altınbüken, Saswat Anand, Mihai Christodorescu, Katja Grünwedel, Alexa Koenings, Sai Naidu, Anurag Pathak, Marc Rasi, Fredde Ribeiro, Brandon Ruffin, Siddhant Sanyam, Maxim Tabachnyk, Sara Toth, Roy Tu, Tobias Welp, Pengcheng Yin, Manzil Zaheer, Satish Chandra, Charles Sutton,
- Abstract要約: 我々は、開発者がAI支援を提供するための新しいモダリティとインタラクションサーフェスとして、自然言語のアウトラインを使うことを提案する。
コード関数のNLアウトラインは、簡潔な散文で書かれた複数のステートメントを含み、コードを分割し、その主要なアイデアをリテラトプログラミングのスタイルで要約する。
- 参考スコア(独自算出の注目度): 35.491976812197485
- License:
- Abstract: We propose using natural language outlines as a novel modality and interaction surface for providing AI assistance to developers throughout the software development process. An NL outline for a code function comprises multiple statements written in concise prose, which partition the code and summarize its main ideas in the style of literate programming. Crucially, we find that modern LLMs can generate accurate and high-quality NL outlines in practice. Moreover, NL outlines enable a bidirectional sync between code and NL, allowing changes in one to be automatically reflected in the other. We discuss many use cases for NL outlines: they can accelerate understanding and navigation of code and diffs, simplify code maintenance, augment code search, steer code generation, and more. We then propose and compare multiple LLM prompting techniques for generating outlines and ask professional developers to judge outline quality. Finally, we present two case studies applying NL outlines toward code review and malware detection.
- Abstract(参考訳): ソフトウェア開発プロセス全体を通して、開発者にAI支援を提供するために、自然言語のアウトラインを新しいモダリティとインタラクションサーフェスとして使用することを提案する。
コード関数のNLアウトラインは、簡潔な散文で書かれた複数のステートメントを含み、コードを分割し、その主要なアイデアをリテラトプログラミングのスタイルで要約する。
重要なことに、現代のLLMは、実際、正確で高品質なNLアウトラインを生成することができる。
さらに、NLアウトラインはコードとNL間の双方向同期を可能にし、一方の変更をもう一方に自動的に反映できるようにする。
コードとdiffの理解とナビゲーションを高速化し、コードのメンテナンスを簡素化し、コード検索を強化し、コード生成をステア化できる。
次に、複数のLCMプロンプト技術を提案して比較し、プロの開発者にアウトライン品質の判断を依頼する。
最後に,NLの概要をコードレビューとマルウェア検出に応用した2つのケーススタディを提案する。
関連論文リスト
- Code-mixed LLM: Improve Large Language Models' Capability to Handle Code-Mixing through Reinforcement Learning from AI Feedback [11.223762031003671]
コードミキシングは、構文ミスマッチやセマンティックブレンディングなど、日常生活におけるユニークな課題を導入している。
大規模言語モデル(LLM)は、人間の言語を理解するのに前例のない能力を提供することによって、自然言語処理(NLP)の分野に革命をもたらした。
本稿では,人間フィードバック(RLHF)とコード混合機械翻訳タスクの強化学習を通じて,多言語LLMのコードミキシング理解能力を改善することを提案する。
論文 参考訳(メタデータ) (2024-11-13T22:56:00Z) - Crystal: Illuminating LLM Abilities on Language and Code [58.5467653736537]
本稿では,自然言語と符号化機能の統合性を高めるための事前学習戦略を提案する。
結果のモデルであるCrystalは、両方のドメインで顕著な能力を示します。
論文 参考訳(メタデータ) (2024-11-06T10:28:46Z) - NoviCode: Generating Programs from Natural Language Utterances by Novices [59.71218039095155]
初心者非プログラマによるAPIと自然言語記述を入力とする新しいNLプログラミングタスクであるNoviCodeを提示する。
我々は、NoviCodeがコード合成領域における挑戦的なタスクであることを示し、非技術的命令から複雑なコードを生成することは、現在のText-to-Codeパラダイムを超えている。
論文 参考訳(メタデータ) (2024-07-15T11:26:03Z) - Synthetic Programming Elicitation for Text-to-Code in Very Low-Resource Programming and Formal Languages [21.18996339478024]
SPEAC(emphsynthetic programming elicitation and compilation)を紹介する。
SPEACは、より頻繁に、意味的正しさを犠牲にすることなく、構文的に正しいプログラムを生成する。
UCLID5形式検証言語のケーススタディにおいて,SPEACの性能を実証的に評価した。
論文 参考訳(メタデータ) (2024-06-05T22:16:19Z) - Sketch Then Generate: Providing Incremental User Feedback and Guiding LLM Code Generation through Language-Oriented Code Sketches [0.9715549306474006]
私たちはLanguage-Oriented Code Sketchingを紹介します。
このアプローチでは、プロンプト内の固有の言語構造を活用して、プロンプトをコードスケッチに変換する。
論文 参考訳(メタデータ) (2024-05-07T04:21:07Z) - CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
我々は,LLMの性能を高めるため,グラフィカル検索拡張コード生成フレームワークであるCodeGRAGを提案する。
CodeGRAGは、制御フローとデータフローに基づいて、コードブロックのグラフィカルなビューを構築し、プログラミング言語と自然言語のギャップを埋める。
ハードメタグラフプロンプト、ソフトプロンプト技術、事前訓練されたGNN専門家の目的の有効性を検証するために、C++言語とピソン言語の両方を含む4つのデータセットで様々な実験と改善が行われた。
論文 参考訳(メタデータ) (2024-05-03T02:48:55Z) - Code Prompting Elicits Conditional Reasoning Abilities in Text+Code LLMs [65.2379940117181]
自然言語の問題をコードに変換する一連のプロンプトであるコードプロンプトを導入します。
コードプロンプトは複数のLLMに対して高速に向上することがわかった。
GPT 3.5を解析した結果,入力問題のコードフォーマッティングが性能向上に不可欠であることが判明した。
論文 参考訳(メタデータ) (2024-01-18T15:32:24Z) - If LLM Is the Wizard, Then Code Is the Wand: A Survey on How Code
Empowers Large Language Models to Serve as Intelligent Agents [81.60906807941188]
大型言語モデル(LLM)は、自然言語と形式言語(コード)の組み合わせに基づいて訓練される
コードは、標準構文、論理一貫性、抽象化、モジュール性を備えた高レベルの目標を実行可能なステップに変換する。
論文 参考訳(メタデータ) (2024-01-01T16:51:20Z) - Test-Case-Driven Programming Understanding in Large Language Models for
Better Code Generation [15.166827643436346]
muFiXは、大きな言語モデル(LLM)のコード生成性能を改善する新しいプロンプト技術である。
まず、テストケース分析を利用して仕様の理解を得、自己改善プロセスを可能にする。
muFiXはさらに、提供された理解と実際の理解の間のギャップを減らす方向に向けた仕様理解を修正している。
論文 参考訳(メタデータ) (2023-09-28T02:58:07Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。