CGCL-codes/naturalcc

NaturalCC: An Open-Source Toolkit for Code Intelligence

何を解決するか

NaturalCC は、プログラミング言語と自然言語の間のギャップを埋めるためのシーケンスモデリングツールキットです。コード生成、コード補完、要約、検索、クローン検出、型推論などのソフトウェア工学タスク向けのモデルの構築と評価を、統一されたフレームワークで可能にします。

動作方法

Fairseq のレジストリメカニズムに基づいて構築されており、モジュール化されており拡張が可能です。Hugging Face Transformers と統合されており、Code Llama、CodeT5、CodeGen、StarCoder などの大規模コードモデルをサポートします。学習には NCCLtorch.distributed を使用し、マルチGPUでの効率を実現。FP32 および FP16 の精度をサポートしています。また、LLVM などのコンパイラツールを用いた特徴抽出のための前処理ツールやスクリプトも含まれています。

対象ユーザー

コードインテリジェンスや機械学習とソフトウェア工学の交差点に注力する AI リサーチャーおよびソフトウェア開発者向けに設計されています。

特徴

  • 大規模モデル対応: Code Llama や StarCoder を含む最先端モデルとの統合。
  • 包括的なデータセット: Human-Eval、CodeSearchNet、Py150 などのベンチマークを内蔵サポート。
  • 効率的な学習: ハーフ精度計算をサポートするマルチGPU環境向けに最適化。
  • モジュールアーキテクチャ: カスタムモデル、損失関数、学習プロセスへの容易な適応が可能。

関連

  • プロジェクト
  • Dispatch
  • Dispatch
  • プロジェクト
  • プロジェクト