プロジェクト Digging 21 - 軽量 LLM エージェントの構築方法

プロジェクト Digging 21 - 軽量 LLM エージェントの構築方法

8 月 12 日、Juli プロジェクト シリーズの第 21 回「大規模言語モデルのトレーニングとアプリケーションの分析」共有セッションで、CNCF WasmEdge プロジェクトのメンテナーであり Second State の創設者でもある Michael Yuan 博士が招待され、「軽量 LLM エージェントの構築方法」と題した技術共有を行いました。

まとめ

大規模言語モデル (LLM) の台頭により、LLM エージェントは LLM アプリケーションを構築するための重要な方向性となりました。この記事は、Michael Yuan 博士の技術共有からまとめたものです。WebAssembly などの軽量ランタイムを使用して LLM エージェントを構築する利点を概説し、LLM エージェントの構築における Python の制限を分析し、Rust などのシステム プログラミング言語を使用して LLM エージェントを構築することを推奨しています。

導入

近年、GPT-3 や ChatGPT などの大規模言語モデル (LLM) が AI に革命を起こしています。強力なテキスト理解および生成機能を備えており、さまざまな自然言語処理タスクをサポートします。ただし、LLM自体はあくまでも受動的なモデルであり、その機能を発揮するにはLLMエージェントを構築する必要があります。 LLM エージェントは、LLM と対話し、ユーザーからの入力を取得し、推論のために LLM を呼び出し、結果をユーザーに返す役割を担います。

現在主流の LLM エージェントは Python を使用して構築され、Kubernetes などのクラウドネイティブ インフラストラクチャにデプロイされます。ただし、このアプローチには一定の制限があります。 Jueli プロジェクトの第 21 回イベントでは、「ビッグ モデルの台頭: ビッグ言語モデルのトレーニングとアプリケーションの分析」をテーマに、Michael Yuan 博士を招いて、軽量 LLM エージェントを構築するための新しいアイデアについて議論しました。

Michael Yuan 博士は、CNCF WasmEdge プロジェクトのメンテナーであり、Second State の創設者です。 彼は、Addison-Wesley、Prentice-Hall、O'Reilly から出版された 5 冊のソフトウェア エンジニアリングの本を執筆しています。 Michael は長年オープンソースの開発者および貢献者として活動しています。 彼はこれまで、OpenSourceSummit、The Linux Foundation Member Summit、KubeCon など、数多くの業界カンファレンスで講演を行ってきました。

LLM エージェントの役割は何ですか?

LLM は、記憶、感覚器官、行動能力のない脳に例えることができます。 LLM エージェントは、LLM にこれらの主要な機能を提供するコンポーネントです。具体的には、LLM エージェントには次の機能が含まれます。

  1. メモリ: ユーザーインタラクションの履歴コンテキスト (短期記憶) とプロジェクトまたはドメインの知識 (長期記憶) を保存する役割を担います。これにより、LLM は会話を継続したり、特定のタスクを完了したりできるようになります。
  2. 知覚: IM メッセージや GitHub イベントを聞くなど、外界 (目、耳) からの入力を取得する役割を担います。
  3. アクション: LLM の出力を、ユーザーに結果を返す、API を呼び出すなど、外部世界のアクション (手) に変換する役割を担います。
  4. 計画: 曖昧なタスクを LLM が処理できる特定のステップに分解する責任を負います。

ご覧のとおり、LLM エージェントは LLM と外部との間のやり取りを処理する役割を担っており、LLM アプリケーションの重要なコンポーネントです。効率的な LLM エージェントを構築することは非常に重要です。

Pythonの限界

現在、LLM エージェントの作成に最もよく使用される言語は Python です。しかし、Python にはいくつかの制限があります。

  1. Python は、特にネットワーク IO を集中的に使用するタスクではパフォーマンスが低いインタープリタ言語です。
  2. Python アプリケーションは多数の依存ライブラリに依存することが多く、Docker イメージのサイズが大きすぎます。
  3. Python はネイティブにコンパイルするのが容易ではないため、真のクロスプラットフォームを実現するのは困難です。

さらに、Python エコシステムにおける LLM エージェントの主流の選択肢は LangChain です。しかし、LangChain は研究に重点を置きすぎており、まれなユースケースに対して機能が多すぎるため、使用するのが非常に複雑です。

ご覧のとおり、Python は軽量で効率的な LLM エージェントの構築にはあまり適していません。

軽量ランタイムの利点

対照的に、一部の軽量ランタイムには次のような利点があります。

  1. パフォーマンス向上のため、Rust や Go などのシステム プログラミング言語を使用して構築されています。
  2. ネイティブにコンパイルして、より軽量で移植性の高いバイナリを作成できます。
  3. ネットワーク IO を集中的に使用する非同期処理タスクに適しています。

具体的には、WebAssembly は非常に有望な軽量ランタイムです。 Rust を WebAssembly にコンパイルすると、Python よりも桁違いに小さいバイナリ サイズを実現できます。さらに、WebAssembly は、ネイティブに近いパフォーマンスを実現するために、基盤となるハードウェア機能へのアクセスもサポートします。

したがって、軽量ランタイムを使用して LLM エージェントを構築すると、Python のパフォーマンスとサイズの問題を回避し、より効率的な LLM アプリケーションを生成できます。

軽量 LLM エージェント構築の新たな方向性

上記の分析に基づくと、軽量 LLM エージェントの構築が LLM アプリケーションのパフォーマンスを向上させるための重要な方向性であることがわかります。具体的には、次のような解決策があります。

  1. Pythonの代わりにRustやGoなどのシステムプログラミング言語を使用します。パフォーマンスを大幅に向上し、サイズを縮小できます。
  2. WebAssembly などの軽量ランタイムを採用して、パフォーマンスと移植性をさらに最適化します。
  3. エージェント内のパフォーマンスの影響を受けないコンポーネントについては、https://flows.network などのサーバーレス アーキテクチャを使用して、展開と管理を簡素化できます。
  4. Vec などのベクター データベースを使用して長期メモリを実現し、単一のリクエストのオーバーヘッドを削減します。
  5. 過度に複雑な機能を避けるために、シンプルでモジュール化されたエージェント アーキテクチャを設計します。研究よりもエンジニアリングに重点を置きます。

これらの方法により、既存の Python エージェントよりも軽量で、導入が容易で、パフォーマンスの高い LLM エージェントを構築できます。これにより、LLM アプリケーションの導入障壁が下がり、より多くの組織が LLM によってもたらされる価値の恩恵を受けることができるようになります。

要約する

LLM エージェントは、LLM アプリケーションを構築するための重要なコンポーネントです。過大な Python エージェントは多くのシナリオでパフォーマンスが低下するため、軽量の LLM エージェントを構築することがパフォーマンスを向上させるための重要な方向性となります。これは、コンパイル言語や軽量ランタイムなどのテクノロジーを使用することで実現できます。より効率的な LLM エージェント アーキテクチャとベスト プラクティスが登場し、LLM の広範な適用が促進されることを期待しています。

<<: 

>>: 

ブログ    
ブログ    

推薦する

AI生成画像に追加されたデジタル透かしは簡単に解読できると研究で判明

10月6日、EngadgetやWiredなどの海外メディアの報道によると、メリーランド大学の研究チー...

ローコード機械学習ツール

機械学習は、ビジネスや世界中のさまざまな問題の解決に役立つ可能性があります。通常、機械学習モデルを開...

2021 年の機械学習の 6 つのトレンド

機械学習は今日ではよく知られた革新的な技術となっています。ある調査によると、現在人々が使用しているデ...

ChatGPT と ReactJS を統合してよりスマートな会話型インターフェースを実現

翻訳者 |李睿レビュー | Chonglouテクノロジーの世界が進化し続けるにつれて、チャットボット...

...

深層学習におけるチューリング賞受賞後のベンジオ氏の研究の核心は何ですか?因果表現学習

最近発表された論文で、チューリング賞受賞者のヨシュア・ベンジオ氏らは、チームの現在の研究の焦点である...

AIがデータセンターの設計をどう変えるか

AI システムへの世界的な支出は 2023 年から 2026 年の間に 2 倍になると予想されており...

VRの悪夢にさよならしましょう! Meta Reality Labs は仮想世界の問題点を解決し、新しい VR の世界を再構築します

「世の中には2種類の人がいます。VRが世界を変えると考える人と、まだVRを試したことがない人です。」...

...

ホワイトボードに描くだけでコードに変換されます。AI は UI デザイナーに取って代わるのでしょうか?

「新製品のホームページについてどう思いますか?」あなたは、UI、フロントエンド、マーケティング、運...

AIが建物の運営に及ぼす影響

昨年、ChatGPT とその他の AI 搭載サービス エンジンがリリースされて以来、このテクノロジー...

機械学習の背後にある数学的な柱を理解するには、この 5 冊の本が役立ちます。

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

AIとIoT:共生関係

Transforma Insights では、2020 年の大半を、最も優れた詳細な IoT 予測の...

機械学習エンジニアとデータサイエンティストの違い

今日では、データ サイエンティストの仕事は非常に一般的になり、機械学習もその中に完全に含まれる可能性...