論文の概要: Automating Just-In-Time Python Type Annotation Updating
- arxiv url: http://arxiv.org/abs/2607.09054v1
- Date: Fri, 10 Jul 2026 02:53:36 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-07-13 14:47:12.768262
- Title: Automating Just-In-Time Python Type Annotation Updating
- Title(参考訳): ジャスト・イン・タイムのPython型アノテーション更新を自動化する
- Authors: Zhipeng Xue, Zhipeng Gao, Xing Hu, Jingyuan Chen, Xin Xia, Shanping Li,
- Abstract要約: 我々は、型アノテーションをコード変更と並行して自動的に更新することで、時代遅れの型アノテーションを減らし、回避できると主張している。
TypeUpは、古い型アノテーションと対応するコード変更に基づいて、自動的に新しい型アノテーションを生成することができる。
- 参考スコア(独自算出の注目度): 26.292549325956045
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Type annotations are more and more popular in Python projects to avoid type errors caused by Python's dynamic typing feature. However, when developers change source code, these type annotations are often neglected or overlooked, resulting in outdated and inconsistent type annotations. Such obsolete type annotations can hinder program comprehension, mislead developers, and even introduce bugs in the future. Therefore, it is necessary to avoid and correct these inconsistent type annotations from the very beginning. In this work, we argue that obsolete type annotations can be reduced and even avoided by automatically updating type annotations alongside code changes. We refer to this task as "Just-In-Time (JIT) type annotation updating". To solve this task, we propose a novel LLM-based approach named TypeUp (Type Annotation Updator) to automate this task. TypeUp can automatically generate new type annotations based on the old type annotations and corresponding code changes. Specifically, TypeUp guides LLM to perform type annotation updates by eliciting its knowledge and logical reasoning power and learning from similar code changes. The evaluation results show that TypeUp outperforms state-of-the-art type infer approach (i.e., TypeGen) by 41.9% on our task. Moreover, we conducted an in-the-wild evaluation with real-world software projects, 20 out of 25 type annotation updates generated by our approach have already been confirmed by developers, showing our approach's practical value in real-world environments.
- Abstract(参考訳): Pythonプロジェクトの動的型付け機能による型エラーを避けるため、型アノテーションはPythonプロジェクトでますます人気がある。
しかし、開発者がソースコードを変更すると、これらの型アノテーションは無視されるか見過ごされることが多く、時代遅れで一貫性のない型アノテーションになる。
このような時代遅れな型アノテーションは、プログラムの理解を阻害し、開発者を誤解させ、将来バグも導入する。
したがって、これらの一貫性のない型アノテーションを最初から避け、修正する必要がある。
この作業では、コードの変更とともに型アノテーションを自動的に更新することで、時代遅れの型アノテーションを減らし、回避できると論じます。
私たちはこのタスクを"Just-In-Time (JIT)型アノテーションの更新"と呼んでいる。
この課題を解決するために,TypeUp (Type Annotation Updator) という新しいLCMベースのアプローチを提案する。
TypeUpは、古い型アノテーションと対応するコード変更に基づいて、自動的に新しい型アノテーションを生成することができる。
具体的には、TypeUpはLLMに、その知識と論理的推論能力を引き出して、同様のコード変更から学習することで、型アノテーションの更新を実行するようにガイドしている。
評価の結果,TypeUpは現状の型推論手法(TypeGen)よりも41.9%優れていた。
さらに,提案手法によって生成された25種類中20種類がすでに開発者によって確認されており,実際の環境におけるアプローチの実践的価値が示されている。
関連論文リスト
- Do Developers Read Type Information? An Eye-Tracking Study on TypeScript [4.249448869949738]
静的アノテーション付き型は、開発者が多くのプログラミングタスクを行うのに役立つことが示されている。
これは、開発者がインコードドキュメンテーションとして型アノテーションを使っているためであると仮定されている。
論文 参考訳(メタデータ) (2026-02-04T18:12:59Z) - Co-Evolution of Types and Dependencies: Towards Repository-Level Type Inference for Python Code [14.7995140938911]
Pythonの動的型付けメカニズムは、柔軟性を促進する一方で、実行時の型エラーの重要な原因となっている。
methodNameは、型と依存関係の共進化を通じてリポジトリレベルの型推論を実現する新しいアプローチである。
主なイノベーションは、(1)リポジトリレベルの型依存をキャプチャするために設計されたEDGモデル、(2)各イテレーションで型と依存関係が共進化する反復型推論アプローチ、(3)オンザフライでの推論の検証と修正を行う型チェッカー・イン・ザ・ループ戦略である。
論文 参考訳(メタデータ) (2025-12-25T09:15:06Z) - Type-Less yet Type-Aware Inductive Link Prediction with Pretrained Language Models [47.6332883113148]
サブグラフベースの帰納的リンク予測のためのタイプレス型-awaReアプローチであるTyleRを紹介する。
我々は、TyleRが、少ない型アノテーションとスパースグラフ接続を持つシナリオにおいて、最先端のベースラインよりも優れていることを示す。
論文 参考訳(メタデータ) (2025-09-30T13:23:02Z) - RightTyper: Effective and Efficient Type Annotation for Python [0.7673339435080445]
RightTyperは実際のプログラムの振る舞いに基づいて正確な型アノテーションを生成する。
RightTyperは高速で空間効率が良いため、平均的なパフォーマンスオーバーヘッドは30%に過ぎません。
論文 参考訳(メタデータ) (2025-07-21T20:37:35Z) - Type-Constrained Code Generation with Language Models [51.03439021895432]
本稿では,型システムを利用してコード生成を誘導する型制約デコード手法を提案する。
そこで本研究では,新しい接頭辞オートマトンと,在来型を探索する手法を開発し,LLM生成コードに適切な型付けを強制するための健全なアプローチを構築した。
提案手法は,コード合成,翻訳,修復作業において,コンパイルエラーを半分以上削減し,機能的正しさを著しく向上させる。
論文 参考訳(メタデータ) (2025-04-12T15:03:00Z) - Understanding How CodeLLMs (Mis)Predict Types with Activation Steering [6.975009142727399]
研究によると、Large Language Models (LLM) はプログラムのセマンティクスを深く理解していないことが多い。
本研究では,タイプ予測の課題について検討する。
ステアリングがPythonとTypeScriptで共有される型予測メカニズムをうまく起動することを示す。
論文 参考訳(メタデータ) (2024-04-02T12:44:44Z) - Generative Type Inference for Python [62.01560866916557]
本稿では静的解析から静的ドメイン知識を取り入れた数ショットの生成型推論手法であるTypeGenを紹介する。
TypeGenは、静的解析の型推論ステップを、型依存グラフ(TDG)に基づいたプロンプトに変換することで、COTプロンプトを生成する。
実験の結果、TypeGenは引数型予測では10.0%、Top-1 Exact Matchでは22.5%で最高のベースラインであるType4Pyを上回っている。
論文 参考訳(メタデータ) (2023-07-18T11:40:31Z) - TypeT5: Seq2seq Type Inference using Static Analysis [51.153089609654174]
本稿では,型予測をコード入力タスクとして扱う新しい型推論手法を提案する。
本手法では静的解析を用いて,型シグネチャがモデルによって予測されるコード要素毎に動的コンテキストを構築する。
また,モデルの入力コンテキストに事前の型予測を組み込んだ反復復号方式を提案する。
論文 参考訳(メタデータ) (2023-03-16T23:48:00Z) - Annotation Error Detection: Analyzing the Past and Present for a More
Coherent Future [63.99570204416711]
我々は、潜在的なアノテーションの誤りを検知するための18の手法を再実装し、9つの英語データセット上で評価する。
アノテーションエラー検出タスクの新しい形式化を含む一様評価設定を定義する。
私たちはデータセットと実装を,使いやすく,オープンソースのソフトウェアパッケージとしてリリースしています。
論文 参考訳(メタデータ) (2022-06-05T22:31:45Z) - Type4Py: Deep Similarity Learning-Based Type Inference for Python [9.956021565144662]
類似度学習に基づくpythonの型推論モデルであるtype4pyを提案する。
高次元空間における同種の型と異種の型を区別することを学ぶ階層的ニューラルネットワークモデルを設計する。
Top-1の予測を考えると、Type4PyはTypilusとTypeWriterよりも19.33%、13.49%高い精度である。
論文 参考訳(メタデータ) (2021-01-12T13:32:53Z) - LambdaNet: Probabilistic Type Inference using Graph Neural Networks [46.66093127573704]
本稿では,グラフニューラルネットワークに基づくTypeScriptの確率型推論手法を提案する。
弊社のアプローチでは、数値や文字列などの標準型と、トレーニング中に遭遇していないユーザ定義型の両方を予測できる。
論文 参考訳(メタデータ) (2020-04-29T17:48:40Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。