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

ブログ    

推薦する

ChatGPTはAmazonに「オンラインストアを開設」し、一夜にしてインターネットの有名人になった

「当社の [製品] は、[タスク 1]、[タスク 2]、[タスク 3] など複数のタスクに使用できる...

TFとPyTorchだけを知っているだけでは不十分です。PyTorchから自動微分ツールJAXに切り替える方法を見てみましょう。

現在のディープラーニング フレームワークに関しては、TensorFlow と PyTorch を避け...

ビッグデータとディープラーニングは、仕事帰りの交通渋滞の回避にどのように役立つのでしょうか?

携帯電話のバスアプリでバス路線 112 の残りの停留所の数を確認するとき、バスに GPS をインスト...

...

不正使用を防ぐため、DJIはロシアとウクライナへの販売を停止すると発表した。

DJIは4月26日、ロシアとウクライナでの事業を一時停止すると発表した。戦闘で使用されないように注...

小紅書探索チームが新たな枠組みを提案:大規模モデル蒸留のためのネガティブサンプルの価値を検証

大規模言語モデル (LLM) はさまざまな推論タスクで優れたパフォーマンスを発揮しますが、ブラックボ...

マルチモーダルな大型モデルの幻覚が 30% 減少しました。 USTCらが初の錯視補正フレームワーク「Woodpecker」を提案

視覚幻覚は、マルチモーダル大規模言語モデル (MLLM) でよく見られる典型的な問題です。簡単に言え...

ラマ2 ビッグバン!バークレーは実機テストで8位、iPhoneでローカル実行可能、多数のアプリが無料でプレイ可能、ルカンも夢中

昨日、Meta は Llama 2 の無料商用バージョンをリリースし、再びオープンソース コミュニテ...

脳とコンピューターのインターフェースのための新しい「接着剤」が発明され、人間と機械の融合「サイボーグ」における新たな進歩がもたらされる

マスク氏の脳コンピューターインターフェースは「人間でテスト」されようとしているが、侵襲的な脳コンピュ...

ロボットを活用する3つの革新的な方法

ロボットは、高齢の両親を助けたり、子供を教育したり、料理をしたりすることができます。ロボット産業は創...

人工知能技術はCOVID-19の流行との戦いで重要な役割を果たしてきた

ハイテクである人工知能(AI)は、医療と健康の分野、特にCOVID-19の流行との闘いにおいて非常に...

一般的な MapReduce データマイニングアルゴリズム: 平均と分散

平均と分散のマップ削減一連の数値の平均と分散の式は誰にとっても明らかだと思います。マップ関数とリデュ...

...

私の国のロボット産業には隠れた懸念があります。すべての関係者が協力して高品質の開発を推進します

近年、我が国のロボット産業は急速な発展傾向を示していますが、一方で、中核技術の弱さや粗利益率の低下な...