今年はジェネレーティブAIの飛躍の年
まあ、控えめに言っても、今年は LLM モデルをローカルで実行する方法について選択肢に恵まれました。
はじめましょう:
すべての画像は Bing Image Creator によって作成されました
インターネットにアクセスせずにHugging Face Transformersをオフラインで実行するには、次の手順に従ってください。インストール中に自動更新に依存しないようにしながら、必要な依存関係を持つTransformersをインストールします。Hugging Faceのドキュメントに記載されているように、pipまたはcondaを使用してインストールできます。
pip install transformers==4.xy
インターネット接続を使用して Hugging Face Hub から事前トレーニング済みモデルをダウンロードした後、ローカル マシンからモデルを読み込みます。save_pretrained() を使用してモデルを保存し、後でオフライン モードで読み込みます。
from transformers import AutoModelForSequenceClassification, BertTokenizerFast
model = AutoModelForSequenceClassification.from_pretrained("bert-base-uncased") model.save_pretrained("/my/local/directory/bert-base-uncased")
model = AutoModelForSequenceClassification.from_pretrained("/my/local/directory/bert-base-uncased") tokenizer = BertTokenizerFast.from_pretrained("/my/local/directory/bert-base-uncased")
オフライン使用を有効にするには、環境変数 TRANSFORMERS_OFFLINE と HF_DATASETS_OFFLINE を設定します。
export TRANSFORMERS_OFFLINE=1 export HF_DATASETS_OFFLINE=1
個々のファイルをダウンロードしたくない場合は、モデル リポジトリを直接複製します。
git clone https://huggingface.co/<username>/<repository> /my/local/directory
スクリプトを実行する予定のディレクトリに必要なファイルがすべて存在することを確認してください。モデルがローカルでまだ使用できない場合は、TRANSFORMERS_OFFLINE を 1 に設定するだけでは機能しないことに注意してください。インターネット アクセスを使用してモデルをダウンロードしてローカルに保存するか、モデル リポジトリを複製する必要があります。
gpt4allは、誰でも GPT-3 のような強力な AI モデルにアクセスして使用できるようにするオープンソース プロジェクトです。gpt4all をインストールして使用するための手順は次のとおりです。
pip install gpt4all
OPENAI_API_KEY
という名前の環境変数を設定します。 export OPENAI_API_KEY="YOUR_API_KEY_HERE"
from gpt4all import completions summary = completions.generate(engine="text-davinci-003", prompt="Summarize this text: [insert long text here]", max_tokens=50) print(summary.text)
Ollamma は、GPT-3 のような大規模な言語モデルに簡単にアクセスできるオープンソース ライブラリです。システム要件、インストール、使用方法の詳細は次のとおりです。
システム要求:
インストール:
pip install ollamma
使用法:
import os os.environ["OPENAI_API_KEY"] = "<YOUR_API_KEY>"
from ollamma import Client client = Client()
response = client.generate( engine="text-davinci-003", prompt="Hello world", max_tokens=100 ) print(response.generations[0].text)
生成メソッドを使用すると、エンジン、プロンプト、最大トークンなどのパラメータを指定してリクエストを構成できます。
また、エンジンを微調整したり、コンテンツをモデレートしたりすることもできます。利用可能なすべての方法の詳細については、Ollamma のドキュメントを参照してください。
まとめると、Ollamma はインストールして構成すれば、わずか数行の Python コードで GPT-3 やその他のモデルを簡単に活用できるようになります。
LM Studio は、最先端の言語モデルをローカルでトレーニング、評価、使用するプロセスを効率化するオープン ソース ツールです。LM Studio をローカルで実行する手順は次のとおりです。
a. マシンにDocker EngineとDocker Composeをインストールする
b. LM Studio GitHub リポジトリをクローンします。
git clone https://github.com/lm-studio/lm-studio.git
config/
フォルダの下の構成ファイルに依存します。一般的なファイルには次のものがあります。 a. model.yaml
: モデルアーキテクチャを指定する
b. training.yaml
: トレーニングパラメータを設定する
c. evaluation.yaml
: 評価設定を調整する
a. イメージのビルド: docker-compose build
b. すべてのサービスを開始します: docker-compose up -d
c. ログの表示: docker-compose logs -f
d. サービスを停止する: docker-compose down
サービスは、UI、API、ノートブックなどと対話するために使用できるさまざまなポートを公開します。
まとめると、LM Studio はローカル言語モデルの実験を効率化します。ユーザーはリポジトリをクローンし、設定ファイルを構成し、簡単な Docker コマンドを使用するだけで、モデルのトレーニング、評価、使用を開始できます。
これが最も便利で簡単な方法だと思います。詳しい説明は以下のリンク先をご覧ください。
要約:
localllm
と Cloud Workstations を組み合わせることで、Google Cloud 環境内の CPU とメモリ上で LLM をローカルに使用できるようになり、AI 主導のアプリケーション開発に革命が起こります。GPU が不要になることで、GPU 不足による課題を克服し、LLM の潜在能力を最大限に引き出すことができます。生産性、コスト効率、データ セキュリティが向上した localllm を使用すると、革新的なアプリケーションを簡単に構築できます。
ローカルトレーニングと推論のために Llama.cpp をインストールして使用するには、次の手順に従います。
依存関係をインストールします:
Python 3 CMake Optional (for GPU acceleration) NVIDIA drivers, CUDA, and cuDNN For Windows, use Visual Studio Community with Desktop C++ Environment and Python 3 Clone the repository:
git clone --recursive https://github.com/abetlen/llama-cpp-python.git GPU アクセラレーションを使用する場合は、リポジトリの説明に従って環境変数を設定します (たとえば、Linux の場合)。
export CMAKE_ARGS="-DLLAMA_CUBLAS=ON" Install Llamma.cpp:
ローカルビルドとシステムコンパイルの場合:
cd llama-cpp-python pip install -e . For Windows, or if you want prebuilt binaries, consider the following: No GPU support: pip install llama-cpp-python[server]
python -m llama_cpp.server --model models/7B/llama-model.gguf With GPU support: set FORCE_CMAKE=1 set CMAKE_ARGS=-DLLAMA_CUBLAS=ON pip install --upgrade --force-reinstall llama-cpp-python --no-cache-dir
python -m llama_cpp.server --model "path/to/your/model" Download and place Llama models in the models/ subdirectory within the Llama.cpp repository if they are not included (models like llama-model.gguf or ggml-* files are available on Hugging Face or GGML).
The llama_cpp/llama_cpp.py script provides a simple high-level interface in Python. Replace llama-model.gguf with your downloaded Llama model to test inference. If you want to train your own Llama model, you'll need to train it according to the official documentation and manually convert the GGML files into GGUF files (for GPU deployment).
これは、langchain を使用してテキストを生成する WebUI のオープン ソース gradio 実装です。
README.md ファイルからの抜粋:
これは拡張機能のディレクトリです
独自の拡張機能を作成する場合は、PR でこのリストに送信してください。
チャット モードでボットの長期メモリを作成する洗練された拡張機能です。
AllTalk は、テキスト生成 WebUI の Coqui_tts 拡張機能に似た Coqui TTS エンジンに基づいていますが、さまざまな高度な機能をサポートしています。
ボットがインターネットに素早くアクセスできるようにするための、acheong08 による EdgeGPT に基づくテキスト生成 Webui の拡張機能。
メイン リポジトリの coqui_tts 拡張機能のバリアントです。どちらも XTTSv2 モデルを使用しますが、こちらには *アスタリスクの間に* 記述されたテキスト用の「ナレーター」機能があります。
この拡張機能は、常に上部のタブに表示される独立した高度なノートブックを提供します。ノートブックにはない多くの機能があります。
他にも探索できるものがたくさんあります: チェックしてください:
https://github.com/oobabooga/text-generation-webui-extensions
まだまだあります!まだまだあります!LangChain、llm、ollamma、リストはどんどん大きくなっています!
素晴らしい創造性に溢れた素晴らしい一年になりますように。乾杯!