🚀 TinyAgent: エッジでの関数呼び出し
TinyAgentは、エッジで安全かつプライベートに展開できる小型言語モデル(SLM)に、複雑な推論と関数呼び出し機能を持たせることを目指しています。GPT - 4やGemini - 1.5のような従来の大規模言語モデル(LLM)は強力ですが、エッジ展開には大きすぎてリソースを大量に消費し、プライバシー、接続性、レイテンシーの面で課題があります。TinyAgentは、高品質で精選されたデータで特殊なSLMを学習させ、LLMCompilerを用いた関数呼び出しに焦点を当てることで、これらの課題を解決します。具体的なアプリケーションとして、TinyAgentは様々なMacOSアプリケーションと対話し、メールの作成、連絡先の管理、カレンダーイベントのスケジューリング、Zoom会議の組織などの日常的なタスクをユーザーに支援します。
デスクトップアプリを入手
|
ブログ記事を読む

モデル開発者: カリフォルニア大学バークレー校のSqueeze AI Lab
バリエーション: TinyAgentモデルには2種類のサイズがあります。TinyAgent - 1.1BとTinyAgent - 7B
ライセンス: MIT
🚀 クイックスタート
デモ
使い方
TinyAgentモデルの使用方法の詳細については、Githubを参照してください。TinyAgentモデルは、プログラム的に使用することも、ユーザーインターフェースを通じて使用することもできます。
✨ 主な機能
TinyAgentは、エッジデバイスでの展開に適した小型言語モデルに関数呼び出し機能を実装することで、大規模言語モデルの問題を解決します。具体的には、高品質なデータセットを用いた学習と、LLMCompilerを用いた関数呼び出しにより、エッジでの安全かつプライベートな展開を可能にします。また、ToolRAGを用いて適切なツールとサンプルを取得することで、モデルの精度を向上させます。
🔧 技術詳細
学習詳細
データセット
私たちは、40,000の実生活のユースケースからなるデータセットを作成しました。GPT - 3.5 - Turboを使用して実世界の命令を生成し、それを用いてGPT - 4 - Turboで合成実行計画を取得します。データセットの詳細については、ブログ記事を参照してください。
ファインチューニング手順
TinyAgentモデルは、ベースモデルからファインチューニングされます。以下は、各TinyAgentモデルとそのベースモデルの表です。
モデル |
成功率 |
GPT - 3.5 - turbo |
65.04% |
GPT - 4 - turbo |
79.08% |
[TinyLLama - 1.1B - 32K - Instruct](https://huggingface.co/Doctor - Shotgun/TinyLlama - 1.1B - 32k - Instruct) |
12.71% |
[WizardLM - 2 - 7b](https://huggingface.co/MaziyarPanahi/WizardLM - 2 - 7B - GGUF) |
41.25% |
TinyAgent - 1.1B + ToolRAG / [[hf](https://huggingface.co/squeeze - ai - lab/TinyAgent - 1.1B)] [[gguf](https://huggingface.co/squeeze - ai - lab/TinyAgent - 1.1B - GGUF)] |
80.06% |
TinyAgent - 7B + ToolRAG / [[hf](https://huggingface.co/squeeze - ai - lab/TinyAgent - 7B)] [[gguf](https://huggingface.co/squeeze - ai - lab/TinyAgent - 7B - GGUF)] |
84.95% |
上記の合成データ生成プロセスを使用して、LoRAを用いたパラメータ効率的なファインチューニングを3エポック行います。ファインチューニング手順の詳細については、[ブログ記事](https://bair.berkeley.edu/blog/2024/05/29/tiny - agent/)を参照してください。
🛠️ ToolRAG
難しいタスクに直面したとき、SLMエージェントは適切なツールとコンテキスト内のサンプルが必要です。モデルが関係のないサンプルを見ると、幻覚を起こす可能性があります。同様に、モデルが必要のないツールの説明を見ると、通常混乱し、これらのツールが不要なプロンプトスペースを占有します。これを解決するために、TinyAgentはToolRAGを使用して、与えられたクエリに適した最適なツールとサンプルを取得します。このプロセスはレイテンシーが最小限で、TinyAgentの精度を大幅に向上させます。詳細については、[ブログ記事](https://bair.berkeley.edu/blog/2024/05/29/tiny - agent/)と[ToolRAGモデル](https://huggingface.co/squeeze - ai - lab/TinyAgent - ToolRAG)を参照してください。
📚 ドキュメント
ブログ記事: https://bair.berkeley.edu/blog/2024/05/29/tiny - agent/
Github: https://github.com/SqueezeAILab/TinyAgent
📄 ライセンス
このプロジェクトはMITライセンスの下で公開されています。