著者: 碧翔
2024 年に入り、AI の人気は高まり続けています。科学技術分野の記事を読んでみると、AI はそれぞれに名前が付けられた 12 冊の軍事書であると言えます。マッキンゼーの最近の調査レポートでは、ソフトウェア エンジニアリングが AI の影響を最も大きく受けている分野の 1 つであることが示されており、AI はソフトウェア エンジニアリングに不可欠なものとなっており、開発者が日常のトランザクション作業の約 70% を占めている可能性があるとも述べています。一方的な書き込みですが、この部分はたまたま AI の得意分野です。大規模なモデルを使用してエンジニアがコーディングを高速化し、品質を向上できるようにすることで、残りの 30% のビジネスおよび技術革新にさらに集中できるようになります。
日々の業務の中で、エンジニアから不満や悩みの声をよく聞きます。たとえば、単体テストの作成には時間がかかり、新しいコード ベースを引き継ぎ、一部の先祖コードを理解するのに比較的コストがかかり、トラブルシューティングでは情報を見つけるために一部のブラウザにアクセスする必要があり、適切な答えを見つけるのが難しいと感じます。圧倒された。インテリジェントコーディングの研究者および開発者として、今回私はついに華佗に点滴を与えることができ、医師は治癒しました。
要約すると、開発者には 3 つの主要な要求があります。1) 迅速なコーディング、迅速な問題解決、および要件の迅速な完了。 2) IDE のポップアップを減らし、没入型のフローをお楽しみください。 3) コーディングの繰り返しを減らし、言語の制限を排除します。
たとえば、フロントエンドについてはわかりませんが、大規模なモデルを使用して Web ページを作成したい場合、HTML と JS コードを記述するのに役立ち、ビジネスの実装と革新。一言で言えば、開発者が IDE にアクセスするのは、コードを書く、コードを書く、またはコードを書くという 3 つのことだけです。Tongyi Lingma は、コーディング アシスタントの形で開発者の品質と効率の向上を支援します。
Tongyi Lingma のコア機能には、行レベル/関数レベルの自動継続、自然言語コーディング、コメント生成、単体テスト生成、コード説明、コード最適化、例外レポート、インテリジェントなトラブルシューティング、技術文書検索などが含まれます。同時に、レポート表示やプライベートクラウドのさまざまな導入形態など、企業固有の機能も提供します。
Tongyi Lingma は、Java、Python、Go などの 200 以上の主流プログラミング言語をサポートしており、現在、皆様からの要望が高いVS Code および JetBrains Family Bucket IDE のプラグイン マーケットで利用可能です。も来月リリースされる予定で、これらの IDE のリモート開発モード (リモート、SSH、WSL など) もサポートされています。
一般に、Tongyi Lingma は、Tongyi の大規模モデルに基づいて開発され、膨大なオープンソースの知識と Alibaba Cloud のドキュメント SDK を組み合わせて、上位レベルのコード補完と質疑応答の研究開発の中核機能を備えています。上位レベルは、質問と回答の意図認識、ユーザー習慣学習、プロンプト エンジニアリング、クロスファイル学習などのエンジニアリング面です。基本モデルから垂直分野のモデル、そしてエンド側のコア機能の全体的な同時構築に至るまで、IDE 上で Tongyi Lingma 製品を使用できます。
トンイリンマの能力のデモンストレーション
クラスメートからは「机上で習ったことは結局浅いのですが、実践的な練習はできますか?」と尋ねられる人もいます。
01/ Spring Bootを使用して新しいプロジェクトを作成する
次に、Tongyi Lingma の機能を皆さんに見せるケースとして、Spring Boot を使用して新しいプロジェクトを作成します。まず、Lingma に「Spring Boot 経由で写真をアップロードおよびダウンロードするための Web プログラムを作成するにはどうすればよいですか?」と尋ねました。まず、Spring Boot の XML ファイルといくつかのデータ構造構成ファイルを記述し、次にコントローラー層、サービス インターフェイス、サービス実装クラスを記述すると、スピリット コードがすぐに反応して生成され始めます。コードの記述は非常に速く、どのようなファイルと手順が必要か、Web サービスをデプロイする方法がわかっているため、アイデアは非常に明確です。
私たちは、いつでもどこでも、質疑応答を通じて Lingma と対話することができます。何らかの形でその答えに満足できない場合、または Lingma にいくつかのより一般的なコードを拡張して書き込みを続行させたい場合、または何らかのエラーや解決策を見つけるための特別なリクエストが発生した場合など、さらに連絡することができます。 Lingma に質問してください。質問と回答のプロセス中に Lingma が喜んでお手伝いします。
たとえば、mysql データベースを使用する代わりにメモリ データベースを介したストレージの例があるかどうかを尋ねたところ、Lingma は私の意味を理解し、このストレージ用の Redis ソリューションを提供してくれました。
02/ レガシーシステムのコードベースを維持する
もう 1 つの一般的なシナリオは、エンジニアとして、他の人が残した古いシステムを保守することが多く、そのシステムには祖先のコードも含まれている可能性があります。そうすれば、コードを解釈するタスクを予測する Lingma の能力をより適切に反映できるようになります。
たとえば、次のようなコードがあります。if else がたくさんあり、非常に面倒です。メソッドの上にあるショートカット エントリをクリックすると、Lingma に説明してもらうことができます。ここには設計があります。つまり、 開発者がこのコードの意味をより早く理解できるように、 Lingma は最初に比較的短い概要の説明を行います。開発者がより具体的な説明を必要とする場合は、下の質問ボタンを使用して、より詳細な回答を得ることができます。英語のシステムは詳細に呼び出され、Lingma がより具体的な説明を行います。
単体テストも一般的なトピックです。単体テストが良いことは誰もが知っていますが、実際に実行できる人は多くありません。単体テストにより、コードの保守性が向上し、コードがより堅牢になり、他の人が引き継いだ場合でもより適切に保守できるようになりますが、エンジニアの日々の開発ニーズはより大きくなります。
客観的に見て、単一のテストは確かに短期的には比較的時間がかかるものですが、多くの開発者は短期的な利便性を追求し、長期的なメリットを放棄する傾向があります。 Lingma は、エンジニアが単体テストをより迅速に作成し、単体テストのカバレッジを向上させ、コード ベースの保守性を向上させるのに役立ちます。
コードの最適化も高頻度のシナリオであり、これまでにもそのような機能を望むユーザーからの要望が数多くありました。ユーザーはボックスを右クリックするか、メソッドの上にあるショートカット エントリをクリックして、コードの最適化をトリガーできます。しかし、客観的に見ると、コードの最適化は、スタイルの最適化、欠陥の修復、プログラムの再構築、セキュリティの最適化などを設計する非常に幅広い用語です。したがって、開発者がより高いコード品質を実現できるように、コード最適化のモデル機能を改善するために最善を尽くしています。
最後に、実行中のデバッグ エラーのトラブルシューティング機能を紹介しましょう。 IDE でランタイム エラーが発生した場合、Lingma はエラー スタック内のワンクリック トラブルシューティング機能を提供します。ワンクリック トラブルシューティング ボタンをクリックすると、Lingma はエラー スタックを自動的に収集し、ユーザーが生成するエラー コードのコンテキストを見つけます。モデルについて質問し、解決策を求めるためのエラー報告のプロンプト。この機能は現在IDEAとJavaでリリースされており、今後様々な端末や言語でもリリースされる予定です。
Tongyi Lingma の製品ハイライトと利点
まず第一に、Tongyi Lingma 製品は開発者のエクスペリエンスに特別な注意を払っており、開発者は当社のユーザーです。私たちは、開発者の使用習慣に合わせて、IDE のネイティブ ビジュアルのインタラクション デザインに多大な努力を払ってきました。同時に、コーディング プロセス中に、開発者がコーディング フローを体験できるように、完了トリガーのタイミング、長さの選択、モデルの速度などの側面が処理されます。
朱熹氏はかつて、読書には3つの方法がある、すなわち、心から目から口へ、と述べました。スピリット コードを正確に生成するには、次のものが必要です。
- 1 つ目は、内なるスキルを磨き、強力なモデルを構築し、Alibaba Cloud 独自の SDK や OpenAPI などのより高品質なデータを学習することです。
- 2つ目は、プロンプトワードプロジェクトです。丁寧に作成されたプロンプトワードをモデルトレーニングと連携させて、生成される効果を倍増します。
- 3 つ目は 6 つの方法を検討することです。たとえば、実際の開発者がコードの次の行を正しく記述したい場合、現在のファイルのコンテキストを確認するだけでなく、ファイル間の情報も把握する必要があります。別のファイルのメソッドを呼び出すなど、一部の問題が発生するのを軽減できます。
最も重要なことは、開発者がより懸念するセキュリティと制御可能な要素です。 Tongyi Lingma の大規模モデルの生成プロセス中、すべてのコード データはモデル推論にのみ使用され、トレーニングはおろか途中での保存も行われません。同時に、大規模なクラウド モデルと、インターネット アクセスなしで純粋にローカルで高速に実行される小規模なモデルの 2 つのモデルも提供します。これら 2 つのモデルは、ワンクリックの切り替えをサポートしており、異なるネットワーク環境や異なる補完強度要件でのコーディング ニーズに対応します。
ここをクリックしてトンイリンマをすぐに体験してください
Google Python Foundation チームが解雇されたことを Google が確認し、Flutter、Dart、Python に関与するチームが GitHub のホット リストに殺到しました - オープンソースのプログラミング言語とフレームワークはどうしてこんなにも魅力的なのでしょうか? Xshell 8 が ベータ テストを開始: RDP プロトコルをサポートし、Windows 10/11 にリモート接続 できる Rail WiFi の最初の長期サポート バージョン 8.4 GA AI 検索ツール Perplexica : 完全にオープンソースで無料、Perplexity の代替となるオープンソースの価値をファーウェイ幹部が評価 : 継続的な抑制にもかかわらず、依然として独自のオペレーティング システムを持っています。ドイツの自動車ソフトウェア会社 Elektrobit が、Ubuntu をベースとした自動車オペレーティング システム ソリューションをオープンソース化しました。