論文の概要: RightTyper: Effective and Efficient Type Annotation for Python
- arxiv url: http://arxiv.org/abs/2507.16051v1
- Date: Mon, 21 Jul 2025 20:37:35 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-07-23 21:34:13.883649
- Title: RightTyper: Effective and Efficient Type Annotation for Python
- Title(参考訳): RightTyper: Pythonの効率的かつ効率的な型アノテーション
- Authors: Juan Altmayer Pizzorno, Emery D. Berger,
- Abstract要約: RightTyperは実際のプログラムの振る舞いに基づいて正確な型アノテーションを生成する。
RightTyperは高速で空間効率が良いため、平均的なパフォーマンスオーバーヘッドは30%に過ぎません。
- 参考スコア(独自算出の注目度): 0.7673339435080445
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Python type annotations bring the benefits of static type checking to the language. However, manually writing annotations can be time-consuming and tedious. The result is that most real-world Python code remains largely untyped. Past approaches to annotating types in Python code fall short in a number of ways. Static approaches struggle with dynamic features and infer overly broad types. AI-based methods are inherently unsound and can miss rare or user-defined types. Dynamic methods can impose extreme runtime overheads, degrading performance by up to 270x, abort execution as they exhaust resources, and even infer incorrect types that lead to runtime errors. Crucially, all prior work assumes implicitly that the code to be annotated is already correct. This assumption is generally unwarranted, especially for large codebases that have been untyped. This paper presents RightTyper, a novel approach for Python that overcomes these disadvantages. RightTyper not only generates precise type annotations based on actual program behavior, improving recall in type checking relative to prior approaches. It also turns type checking into anomaly detection, allowing the type checker to identify corner cases that the programmer can audit for unintended behavior. RightTyper is also fast and space-efficient, imposing just 30% performance overhead on average. RightTyper achieves these characteristics by a principled yet pervasive use of sampling--guided by self-profiling--along with statistical filtering and careful resolution and aggregation of type information.
- Abstract(参考訳): Pythonの型アノテーションは静的型チェックの利点を言語にもたらす。
しかし、手動でアノテーションを書くのは時間と手間がかかります。
その結果、現実世界のPythonコードは、ほとんど型付けされていない。
Pythonコードの型アノテートに対する過去のアプローチは、いくつかの点で不足している。
静的アプローチは動的な特徴と過度に広い型を推測する。
AIベースのメソッドは本質的に無音であり、稀な型やユーザ定義型を見逃す可能性がある。
動的メソッドは、極端なランタイムオーバーヘッドを課し、パフォーマンスを最大270倍に低下させ、リソースを消費するときに実行を中止させ、実行時のエラーにつながる不正な型を推測する。
重要なことに、事前の作業はすべて、アノテートすべきコードがすでに正しいと暗黙的に仮定している。
この仮定は、特に非型付けされた大規模なコードベースでは、一般的には保証されていない。
本稿では,これらの欠点を克服するPythonの新しいアプローチであるRightTyperを提案する。
RightTyperは、実際のプログラム動作に基づいて正確な型アノテーションを生成するだけでなく、以前のアプローチと比較して型チェックのリコールを改善する。
また、型チェックを異常検出に変換することで、型チェッカーはプログラマが意図しない振る舞いを監査できるコーナーケースを特定することができる。
RightTyperは高速で空間効率も良いので、平均的なパフォーマンスオーバーヘッドは30%に過ぎません。
RightTyperは、統計的フィルタリングと注意深い解決と型情報の集約とともに、自己プロファイリングによって誘導されるサンプリングの原則的かつ普及した利用により、これらの特性を達成する。
関連論文リスト
- Type-Constrained Code Generation with Language Models [51.03439021895432]
本稿では,型システムを利用してコード生成を誘導する型制約デコード手法を提案する。
そこで本研究では,新しい接頭辞オートマトンと,在来型を探索する手法を開発し,LLM生成コードに適切な型付けを強制するための健全なアプローチを構築した。
提案手法は,コード合成,翻訳,修復作業において,コンパイルエラーを半分以上削減し,機能的正しさを著しく向上させる。
論文 参考訳(メタデータ) (2025-04-12T15:03:00Z) - Toward a Corpus Study of the Dynamic Gradual Type [0.0]
本稿では,mypy型チェッカーを使用する221のGitHubプロジェクトを対象とする,Pythonの動的型に関する社内調査について報告する。
この研究は、動的型のための8つのパターンを明らかにし、このパターンは、mypy型システムの今後の改良や、正確な型アノテーションを促進するためのツールサポートに影響を及ぼす。
論文 参考訳(メタデータ) (2025-03-11T22:18:51Z) - Understanding prompt engineering may not require rethinking
generalization [56.38207873589642]
言語モデルによって与えられるPAC-Bayesと組み合わさったプロンプトの離散的性質は、文献の標準によって非常に厳密な一般化境界をもたらすことを示す。
この研究は、プロンプトエンジニアリングの広範な実践を正当化する可能性がある。
論文 参考訳(メタデータ) (2023-10-06T00:52:48Z) - Learning Type Inference for Enhanced Dataflow Analysis [6.999203506253375]
我々は、型アノテーションを確実に予測するように訓練されたTransformerベースのモデルであるCodeTIDAL5を提案する。
私たちのモデルは、MaryTypes4TypeScriptベンチマークで現在の最先端を7.85%上回っています。
JoernTIは、オープンソースの静的解析ツールであるJoernへの私たちのアプローチの統合です。
論文 参考訳(メタデータ) (2023-10-01T13:52:28Z) - Mitigating Word Bias in Zero-shot Prompt-based Classifiers [55.60306377044225]
一致したクラス先行は、オラクルの上界性能と強く相関していることを示す。
また,NLPタスクに対するプロンプト設定において,一貫したパフォーマンス向上を示す。
論文 参考訳(メタデータ) (2023-09-10T10:57:41Z) - 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) - 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。