AIがPythonの記述を手助けし、インストールはたった5ステップで完了し、自由に調整できます。

AIがPythonの記述を手助けし、インストールはたった5ステップで完了し、自由に調整できます。

[[269874]]

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

コードを 1 行ずつ入力するのは、素手でレンガを動かすようなものです。賢いプログラマーはこう言います。「生産性を解放したいのです!」

たとえば、次のようになります。

機械学習の時代では、AI によるインテリジェントなコード補完はもはや夢ではありません。さまざまな IDE やプラグインが、プログラマーのキー入力回数を減らし、キーボードの寿命を延ばすために懸命に取り組んでいます。

スリランカのプログラマーもキーボードケア協会に参加しました。彼はシンプルなディープラーニングモデルを使用して、Pythonコードの自動補完という目標を達成しようとしましたが、その効果は驚くほど良好でした。プロジェクトはオープンソースになりました!

シンプルなモデルは強力

実験的な考え方から、このプロジェクトでは、スリランカ人は単純な LSTM (Long Short-Term Memory) モデルのみを使用しました。

予測を行うために使用されるアルゴリズムは、ヒューリスティックなグラフ検索アルゴリズムであるビーム検索です。深度拡張の各ステップを実行する際、ビーム検索では品質の高いノードのみが保持されるため、スペースの消費が削減され、時間効率が向上します。ビーム検索アルゴリズムは最大 10 文字の予測を実現できます。

モデルに入力されるデータはトークン化された Python コードであり、コメント、文字列、空白行は事前にクリーンアップされています。

トレーニング効果は以下のとおりです。

緑色の文字が自動補完の開始位置です。TAB キーを押して補完を選択します。灰色でハイライトされた部分は AI によって追加されたコードです。

彼によると、このような単純なモデルでも、ディープラーニングを使用して Python コードを自動的に補完することで、キー入力回数を 30 ~ 50% 削減できるとのことで、これは本当に驚きです。

GitHub では、この人物が Python パーサーを提供しており、他の言語用のパーサーが書かれていれば、このソリューションを他の言語に拡張して、Java の自動補完、C の自動補完などを実現できます。

使い方

効果を自分で試してみませんか?

問題ありません。わずか 5 つのステップで独自のオートコンプリート モデルをトレーニングできます。

[[269875]]

1. 機械学習の実験環境(ラボ、記事の最後にあるアドレスを参照)をインストールします。

2. データを ./data/source にコピーします。

3. extract_code.py を実行してすべての Python ファイルを収集し、エンコードして all.py にマージします。

4.evaluate.py を実行してモデルを評価します。

5. train.py を実行してモデルをトレーニングします。

まだ成長が必要

方法は簡単で効果もかなり良いです。このプロジェクトには大きな可能性があるようです。しかし、理想は満ち溢れているが、現実はまだ少し足りない。この新しい AI は、まだ多くの成長上の課題に直面しています。

課題1: 効率の低さ

1 つ目は、そのパフォーマンスが実際の使用のニーズをまだ満たしていないことです。エディター インテグレーターの制限により、ビーム検索アルゴリズムの効率は低く、コードが完了するまで待つ時間よりも、数行のコードを手動で入力する時間の方が長くなります。

これに対してスリランカの担当者は、次のステップでは異なるアーキテクチャを使用して推論パフォーマンスを向上させるつもりであり、誰もがアイデアや提案を共有することを歓迎すると述べました。

課題2: 強力な先人

Redditのユーザーはまた、機械学習を使ってコードを完成させるというアイデアには、Trith Venturesから投資を受けたKiteなど、すでに比較的成功した実装ソリューションが存在すると指摘した。

世界中で 30,000 人を超える Python 開発者が、現在最高の Python 自動補完ツールとして知られている Kite を使用しています。 Kite はコードを完成させるだけでなく、ドキュメントを省略して他のユーザーが関数をどのように使用しているかをリアルタイムで理解するのにも役立ちます。同時に、カスタム コード ベースでの定義と使用方法も提供できます。

Python の作者でさえ、Kite に賛成せずにはいられませんでした。これは本当に素晴らしいです。

前身のKiteと比較すると、このプロジェクトはまだ非常に未熟です。しかし、Kiteはオープンソースではなく、補助として使用されるクラウドエンジンもセキュリティに関する疑問を引き起こしています。一部のネットユーザーは次のように述べています。

職場で Kite を使用すると、会社の法務部門が激怒する可能性が高いです。

さらに、一部のネットユーザーは、AI と Pycharm を比較するとどうなるのか興味を持っています。結局のところ、Pycharm の自動補完はすでに非常に便利です。

ポータル

GitHub: https://github.com/vpj/python_autocomplete より

ラボ: https://github.com/vpj/lab

<<:  人工知能やロボットによって仕事が奪われた後、人々の収入はどこから来るのでしょうか?考えるための材料

>>:  AIが科学研究を「行う」ことを学習し、ネイチャー誌に発表。知湖ネットユーザー:水を見るのは耐えられない

ブログ    

推薦する

【就職活動】データサイエンスと機械学習のための最も包括的な面接ガイド

[[234501]]この記事では、データサイエンスと機械学習の面接で遭遇する可能性のあるさまざまな質...

...

リアルタイムの犯罪警報: ディープラーニングで安全を守る方法

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

コインの端を歩くこともできます!陸上最小のカニ型ロボットが開発され、将来的には低侵襲手術に利用できるようになる。

この「横歩き」マイクロロボットはとってもかわいいです!サイエンス・ロボティクス誌5月号に、サブミリメ...

機械学習をマスターするのに役立つ13のフレームワーク

人工知能の重要な分野として、機械学習はますます利用されています。この技術をより早く習得するにはどうす...

...

Appleは以前から独自のChatGPT AIツールを開発してきた。

何年もの間、自社のソフトウェアとデバイスすべてに機械学習を統合してきたAppleは、WWDCでは自社...

AI ソリューションはビジネスの成長にどのように役立ちますか?

企業はどのように AI ソリューションを使用して効率性を向上させ、プロセスを合理化できるのでしょうか...

業界規模のナレッジグラフ:経験と課題

[[355133]] 【導入】この記事は、Stone Brothersが推奨するナレッジグラフに関す...

ナレッジグラフの過去と現在: ナレッジグラフがなぜ人気なのか?

[51CTO.com からのオリジナル記事] 近年、ナレッジグラフは、その強力な表現力、優れたスケ...

7億7千万パラメータ、5400億PaLMを超えます! UW Google はトレーニング データの 80% のみを必要とする「ステップ蒸留」を提案 | ACL 2023

大規模言語モデルは優れたパフォーマンスを持ち、ゼロショットまたは少数ショットのプロンプトで新しいタス...

生体認証ウェアラブルでCOVID-19の発生を予測できると研究で判明

米国の研究チームは最近、ウェアラブルデバイスから得られる生体認証データを分析することで、一見健康そう...

...

速度が1000倍になりました!拡散モデルは物質の錬金術プロセスを予測し、システムが複雑になればなるほど加速が大きくなる

拡散モデルを使用して化学反応を予測すると、速度が1,000 倍向上します。かつてはコンピューターで計...

人工知能の時代では、機械学習とAIアルゴリズムが「80/20ルール」を変えるだろう

[[186517]]ハーバード・ビジネス・レビューは、機械学習と AI アルゴリズムの進歩により、私...