論文の概要: Statically Contextualizing Large Language Models with Typed Holes
- arxiv url: http://arxiv.org/abs/2409.00921v1
- Date: Mon, 2 Sep 2024 03:29:00 GMT
- ステータス: 処理完了
- システム内更新日: 2024-09-06 08:21:03.086530
- Title: Statically Contextualizing Large Language Models with Typed Holes
- Title(参考訳): 型付きホールを用いた大規模言語モデルの統計的文脈化
- Authors: Andrew Blinn, Xiang Li, June Hyung Kim, Cyrus Omar,
- Abstract要約: 大規模言語モデル(LLM)は、プログラム合成のランドスケープを形変えた。
LLMは適切なコンテキストを持たないため、しばしば壊れたコードを幻覚させる。
本稿では,言語の種類と結合構造との密接な統合が,この文脈化問題に対処できることを実証する。
- 参考スコア(独自算出の注目度): 4.180458188910334
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Large language models (LLMs) have reshaped the landscape of program synthesis. However, contemporary LLM-based code completion systems often hallucinate broken code because they lack appropriate context, particularly when working with definitions not in the training data nor near the cursor. This paper demonstrates that tight integration with the type and binding structure of a language, as exposed by its language server, can address this contextualization problem in a token-efficient manner. In short, we contend that AIs need IDEs, too! In particular, we integrate LLM code generation into the Hazel live program sketching environment. The Hazel Language Server identifies the type and typing context of the hole being filled, even in the presence of errors, ensuring that a meaningful program sketch is always available. This allows prompting with codebase-wide contextual information not lexically local to the cursor, nor necessarily in the same file, but that is likely to be semantically local to the developer's goal. Completions synthesized by the LLM are then iteratively refined via further dialog with the language server. To evaluate these techniques, we introduce MVUBench, a dataset of model-view-update (MVU) web applications. These applications serve as challenge problems due to their reliance on application-specific data structures. We find that contextualization with type definitions is particularly impactful. After introducing our ideas in the context of Hazel we duplicate our techniques and port MVUBench to TypeScript in order to validate the applicability of these methods to higher-resource languages. Finally, we outline ChatLSP, a conservative extension to the Language Server Protocol (LSP) that language servers can implement to expose capabilities that AI code completion systems of various designs can use to incorporate static context when generating prompts for an LLM.
- Abstract(参考訳): 大規模言語モデル(LLM)は、プログラム合成のランドスケープを形変えた。
しかし、現代のLLMベースのコード補完システムは、特にトレーニングデータやカーソルに近い定義で作業する場合に、適切なコンテキストが欠如しているため、壊れたコードを幻覚させることが多い。
本稿では,言語サーバが公開している言語型とバインディング構造との密接な統合が,この文脈化問題にトークン効率のよい方法で対処できることを実証する。
要するに、AIにもIDEが必要だ、と私たちは主張するのです!
特に,LLMコード生成をHazelのライブプログラムスケッチ環境に統合する。
Hazel Language Serverは、エラーがあっても、穴のタイプと型付けのコンテキストを特定し、有意義なプログラムスケッチが常に利用可能であることを保証します。
これにより、コードベース全体のコンテキスト情報をカーソルにレキシカルにローカルでなくても、必ずしも同じファイルにローカルでなくても、開発者の目標にセマンティックにローカルになる可能性がある。
LLMによって合成された補完は、言語サーバーとのさらなる対話を通じて反復的に洗練される。
これらの手法を評価するために,MVU (Model-view-update) WebアプリケーションのデータセットであるMVUBenchを紹介する。
これらのアプリケーションは、アプリケーション固有のデータ構造に依存しているため、課題として機能する。
型定義によるコンテキスト化は,特に影響が大きいことが分かりました。
Hazelのコンテキストでアイデアを導入し、MVUBenchをTypeScriptに移植して、これらのメソッドを高レベルの言語に適用可能であることを検証しました。
最後に、言語サーバが実装できる言語サーバプロトコル(LSP)の保守的な拡張であるChatLSPの概要を述べる。
関連論文リスト
- Crosslingual Capabilities and Knowledge Barriers in Multilingual Large Language Models [62.91524967852552]
大規模言語モデル(LLM)は、多言語コーパスの事前訓練のため、一般的に多言語である。
しかし、これらのモデルは言語間で対応する概念を関連付けることができ、効果的にクロスランガルなのでしょうか?
本研究は,言語横断的課題に関する6つの技術 LLM の評価を行った。
論文 参考訳(メタデータ) (2024-06-23T15:15:17Z) - ClawMachine: Fetching Visual Tokens as An Entity for Referring and Grounding [67.63933036920012]
プロキシエンコーディングやジオメトリエンコーディングを含む既存のメソッドには、オブジェクトの位置をエンコードするための追加構文が含まれている。
この研究はClawMachineを紹介し、視覚トークンを直接使用してエンティティに通知する新しい方法論を提供する。
ClawMachineはビジュアル参照とグラウンドを自動回帰形式に統合し、デコーダのみのアーキテクチャで学習する。
論文 参考訳(メタデータ) (2024-06-17T08:39:16Z) - DocCGen: Document-based Controlled Code Generation [33.19206322891497]
DocCGenは、構造化コード言語のためのNL-to-Code生成タスクを2段階のプロセスに分解することで、豊富な知識を活用できるフレームワークである。
実験の結果,DocCGenは6つの評価指標すべてで,言語モデルのサイズを常に改善していることがわかった。
論文 参考訳(メタデータ) (2024-06-17T08:34:57Z) - 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) - 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) - Neural Models for Source Code Synthesis and Completion [0.0]
コード提案システムへの自然言語(NL)は、NL発話をコンパイル可能なコードスニペットに変換することで、統合開発環境(IDE)の開発者を支援する。
現在のアプローチは主に意味解析に基づくハードコードなルールベースのシステムである。
我々は,NLを汎用プログラミング言語にマッピングするためのシーケンス・ツー・シーケンス深層学習モデルと訓練パラダイムを提案する。
論文 参考訳(メタデータ) (2024-02-08T17:10:12Z) - 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) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - Natural Language Commanding via Program Synthesis [0.29360071145551064]
Microsoft Officeのような生産性ソフトウェアのための自然言語フレンドリなAIシステムであるSemantic Interpreterを紹介する。
LLMは自然言語として表現されるユーザインテントを理解するのに優れていますが、アプリケーション固有のユーザインテントを満たすには不十分です。
私たちは、Officeアプリケーションにおけるエンティティのアクションの実行とインタラクションに特化した簡潔でハイレベルな言語であるOffice Domain Specific Language (O)を紹介します。
論文 参考訳(メタデータ) (2023-06-06T07:28:49Z) - Binding Language Models in Symbolic Languages [146.3027328556881]
Binderはトレーニング不要のニューラルシンボリックフレームワークで、タスク入力をプログラムにマッピングする。
解析の段階では、Codexは元のプログラミング言語では答えられないタスク入力の一部を特定することができる。
実行段階では、CodexはAPI呼び出しで適切なプロンプトを与えられた万能機能を実行することができる。
論文 参考訳(メタデータ) (2022-10-06T12:55:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。