Ollama と AnythingLLM を使用して DeepSeek をローカルで実行する
はじめに
急速に進化する人工知能の世界では、オープンソースの大規模言語モデル(LLM)が、柔軟性、コスト削減、およびプライバシーの観点から注目を集めています。その中でも強力なモデルの一つが DeepSeek-R1 です。このモデルは Ollama を使用してローカル環境で実行できます。さらに AnythingLLM と統合することで、AI を活用したチャット環境を簡単に構築できます。
本記事では、これらのツールの概要を説明し、DeepSeek-R1 をオフライン環境で使用する方法について詳しく解説します。
主要コンポーネントの理解
1. DeepSeek-R1 とは?
DeepSeek-R1 は、中国の AI スタートアップ DeepSeek によって開発されたオープンソースの LLM です。このモデルは、推論、テキスト生成、コードアシスタンスなど、多様な自然言語処理タスクを実行できます。
DeepSeek-R1 は MIT ライセンス のもとで公開されており、自由に修正・商用利用が可能です。OpenAI の o1 などの最先端モデルと同等の性能を持ちながら、ローカル環境で完全に制御できるのが特徴です。
2. Ollama とは?
Ollama は、LLM をローカル環境で実行できるオープンソースツールです。llama.cpp をベースに構築されており、モデルの管理、キャッシュ、実行を効率的に処理するため、オフライン AI の実行に適しています。
Ollama を使用する理由
- データプライバシー: データが外部に送信されないため、完全なセキュリティを確保できます。
- コスト削減: クラウドベースの AI サービスと比較して、運用コストが削減されます。
- 低遅延: ネットワーク遅延がなく、即座に応答を得ることができます。
3. AnythingLLM とは?
AnythingLLM は、LLM をより簡単に活用できるユーザーフレンドリーなアプリケーションです。ドキュメントのアップロード、質問応答、情報の検索など、LLM の活用を直感的に行えます。
コマンドラインでの対話に慣れていない方でも、AnythingLLM を使えば AI アシスタントを簡単に構築できます。
DeepSeek-R1 をローカル環境で実行する方法
ステップ 1: Ollama のインストール
macOS の場合:
Ollama を公式サイトからインストールします。
curl -fsSL https://ollama.com/install.sh | sh
Linux の場合:
次のコマンドを実行します。
curl -fsSL https://ollama.com/install.sh | sh
Windows の場合:
- Ollama 公式サイト からインストーラーをダウンロードします。
- 画面の指示に従ってインストールを完了します。
インストール後、次のコマンドで確認します。
ollama --version
ステップ 2: DeepSeek-R1 モデルのダウンロード
Ollama のインストールが完了したら、DeepSeek-R1 モデル をダウンロードします。
ollama pull deepseek-r1:1.5b
このコマンドで 1.5B パラメータ版 の DeepSeek-R1 を取得できます。
ステップ 3: DeepSeek-R1 をオフラインで実行
モデルのダウンロードが完了したら、対話モードで実行できます。
ollama run deepseek-r1:1.5b
また、プログラム経由で利用したい場合は、Ollama の API サービスを起動します。
ollama serve
次に、cURL を使用して API にリクエストを送信します。
curl -X POST http://localhost:11434/api/generate -d '{
"model": "deepseek-r1:1.5b",
"prompt": "こんにちは、自己紹介をしてください。"
}'
この API 設定により、AnythingLLM との統合が可能になります。
AnythingLLM との統合
ステップ 1: AnythingLLM のインストール
AnythingLLM をインストールするには、次のコマンドを実行します。
git clone https://github.com/Mintplex-Labs/anything-llm.git
cd anything-llm
npm install
npm start
ステップ 2: LLM バックエンドの設定
- AnythingLLM のダッシュボードを開きます。
- 設定 から カスタム LLM を選択します。
- 以下の情報を入力します。
-
API URL:
http://localhost:11434/api/generate
-
モデル名:
deepseek-r1:1.5b
-
API URL:
- 設定を保存します。
ステップ 3: チャットの開始
AnythingLLM のインターフェースを使い、DeepSeek-R1 との対話が可能になります。質問を入力すると、リアルタイムで回答が生成されます。
次回: LLaMA-Factory を使ったファインチューニング
DeepSeek-R1 はそのままでも高性能ですが、特定のデータセットでファインチューニングすることで、精度や適応性を向上させることができます。
次回のブログでは、LLaMA-Factory を使用したファインチューニング手法について解説します。特に LoRA (Low-Rank Adaptation) ファインチューニング のプロセスを詳しく説明し、最小限のハードウェアリソースで効果的にモデルを調整する方法を紹介します。
次回の LLaMA-Factory を使用した DeepSeek-R1 のファインチューニング記事をお楽しみに!