ローカルDeepseek AI推論サーバーの構築
まずは朗報です!Digital Spaceportは前回のレビューで使用したAMD EPYC Romeプラットフォームで素晴らしいパフォーマンスを発揮しました :😁:このセットアップはクラシックです!フルQ4 671bモデルで4.25~3.5pc/secを実行しているのだ! トークン (TPS)。これは重要なことだ。なぜなら、それらの "ライト "モデルは同列にはまったくないからだ。他のモデルが簡単に上回ってしまうからだ。本当に大きなモデルを体験するには、できれば大きなコンテキストウィンドウ(16K以上)を持つフルモデルを使うことだ。フルモデルはCPUだけで動かしても問題ないので、GPUで画像認識モデルのような小さなモデルを動かしながら、フルモデルを動かしておくこともできる。繰り返しますが、超豪華なリグがない限り、GPUメモリだけでフルバージョンを実行することはできません! ディープシーク デジタル・スペースポートは、それを動かすためのいろいろなトリックを教えてくれる。決して "簡単 "ではないが、テクノロジーをいじるのが好きなら楽しいだろう。
正誤表 (2024/02/01)
- アイドル時の消費電力:60W(Digital Spaceportの予想より低い。)
- 全負荷時消費電力:260W
- デジタル・スペースポート 現在のメモリー周波数:2400MHz(3200MHzの方が良いかもしれない)
ローカルAIサーバーCPUハードウェア
Digital Spaceportのクアッド3090グラフィックスサーバ構成ガイドを見たことがある人はラッキーです。そのEPYC 7702 CPUは、現在でもまだ打ち負かすことができます。Digital Spaceportは、価格がほぼ同じになり、パフォーマンスが大幅に向上したため、より優れたCPUを推奨しています。しかし、この記事の結果は、Digital Spaceport独自の7702 CPUで実行されたもので、MZ32-AR0マザーボードは、3200MHzの周波数でフルに動作する16個のメモリスロットを備えているため、512GBから1TBのメモリを入手するコストを削減することができ、当時は良い推奨品でした。Digital Spaceportは2400MHzのDDR4メモリースティックを使用していますが、3200MHzのDDR4 ECCメモリースティックを使用すれば、パフォーマンスを上げることができるはずです。注意:LRDIMM と RDIMM メモリスティックを混在させることはできません! (LRDIMMとRDIMMは2つの異なるタイプのサーバーメモリースティックであり、混在させないでください。)
ローカルAIサーバー・リグ構成部品一覧
- ラック $55
- MZ32-AR0マザーボード $500
- CPU水冷420mm Corsair h170i elite capellixxt $170
- EPYC CPUウォータークーラーヘッダーブラケット
- 64コアAMD EPYC 7702 $650または64コアAMD EPYC 7V13 $599 または64コアAMD EPYC 7C13 $735
- 512GB 2400 ECCメモリー $400
- 1TB NVMe SSD - Samsung 980 Pro $75
- 850W電源 $80(CPU推論だけなら850Wで十分。GPUを使う場合は、1500Wか1600Wの電源を用意することをお勧めする)
(価格は2025年1月29日現在)
総費用:約2,000ドル* 512GBの2400RAMとEPYC 7702 CPUを使用している場合、Digital Spaceportはメモリ周波数をアップグレードする代わりに7C13または7V13 CPUを入手することを推奨します。768GBのRAMにアップグレードするのは2番目の選択で、3200MHzのRAMは最後に検討することになります。最上位のCPU(7C13または7V13)と1TBの2400MHz RAMを使用した場合、合計価格は約2500ドルになります。**.
リグラックアセンブリ
組み立て工程は前のビデオと同じで、まだGPUと拡張カードはありません。後でGPUを追加したい場合は、最初から1500Wまたは1600Wの電源を用意することをお勧めします。GPUと拡張カードを追加した後も、他の部分は変わりません。組み立て方はこちらのビデオをご覧ください。(これは、前述のクアッド3090グラフィックス・サーバー構成のビデオを指している。ビデオのGPUに関する部分は無視してください。
また、壁一面に小型ファンを設置し、ジップタイで縛ってメモリースティックに風を送り、放熱を助けるのも良いアイデアです。メモリスティックは熱融解しませんが、熱くなりすぎると過熱保護機能が作動し、パフォーマンスが低下し、データ処理速度に影響します。Digital Spaceportでは、4つの小型80mmファンを使用しています。(ファンウォールとは、複数のファンを横に並べて取り付け、空気の壁を形成することで、より大きな冷却能力を提供する。)
マザーボード・アップグレードのヒント
AMD EPYC 7V13 CPUを使用したい場合、V1を購入してからアップグレードするのではなく、MZ32-AR0マザーボードのV3バージョンを直接購入したほうがよいでしょう。 V1バージョンは工場出荷時からMilanアーキテクチャCPUをサポートしていない可能性があり、V3バージョンを使用しなければならないため、まずV2バージョンのCPUでマザーボードBIOSをアップグレードする必要があるかもしれません。BIOSは、コンピュータのマザーボードの「魂」に相当し、ハードウェアの起動や動作を制御します。 BIOSをアップグレードすることで、マザーボードが新しいハードウェアをサポートできるようになります。) Digital Spaceportは、V1バージョンがMilan CPUをサポートしないかどうかは断言できませんが、その可能性は非常に高いと思います。Digital Spaceportの経験によると、BIOSアップデートをフラッシュすることで、V1マザーボードを最新のV3バージョンにアップグレードすることができます。まず、以前のバージョンのV3 BIOSをフラッシュし、次に最新のV3 BIOSをフラッシュする必要があります。最新のBIOSバージョンはM23_R40 (執筆時点のデータ).
ローカルAIセルフホストソフトウェアのセットアップ
このソフトウェアのセットアップの部分は、Digital Spaceportの以前のチュートリアルよりも少し複雑です。はい、ベアボーン Proxmox システムに Ollama を直接インストールすることができます。Proxmoxは、単一の物理サーバ上で複数の仮想マシンを実行できるサーバ仮想化管理ソフトウェアです。しかし、Digital Spaceportは、これはやらない方が良いと提案しています。Digital Spaceportは、もう一方のオプションを推奨するかどうかを決定する前に、パフォーマンスへの影響をテストする必要があります。もう1つのオプションは、スタンドアロンのLXCコンテナまたは仮想マシン(VM)でOllamaを実行することです。LXCコンテナとVMは、ソフトウェアの実行環境を分離する仮想化技術である。) Digital SpaceportのLXCとDockerのチュートリアルを見たことがある人は、LXCを使い続けることができるが、Digital Spaceportは今のところ仮想マシン(VM)にインストールするのがベストだと提案している。 Digital Spaceportは、私たちの小さなAIサーバーですべてが幸せに自給自足できるよう、より統一された解決策を見つけ出そうとしていますが、それには時間がかかります。
ベアメタルUbuntu 24.04かProxmox VMか?
ゼロから新規インストールする余計な手間を最小限に抑えたいなら、ベアメタルUbuntu 24.04サーバーにインストールすればいい。あるいは、以前のProxmoxチュートリアルを参照することもできます。(Digital Spaceportが以前に公開したProxmoxのインストールチュートリアルを参照してください。どうするかはあなた次第です。お望みであればデスクトップ環境をインストールすることもできますが、その必要はありませんし、Digital Spaceportはそのデモを行っていません。私たちはサーバー上でサービスを動かしているので、コマンドラインインターフェイス(CLI)を怖がる必要はありません。
MZ32-AR0マザーボードのBMCを設定する
MZ32-AR0マザーボードのイーサネットポートとBMCポートをネットワークケーブルに接続します。(BMC(Baseboard Management Controller) サーバーハードウェアをリモート管理できるベースボード管理コントローラーopnsenseやpfsenseのようなファイアウォールルーターを使用している場合、ルーターのARPリストをチェックし、BMCのポートが表示されているかどうかを確認することができます。BMCのIPアドレスを見つけてください。Digital Spaceportの場合、BMCのアドレスはhttps://192.168.1.XX。このアドレスをブラウザで開くと、ユーザー名とパスワードのログインボックスがポップアップ表示されます。デフォルトのユーザー名はadminで、パスワードはマザーボード上のMZ32-AR0のロゴの下にあるステッカーに記載されています。 Digital Spaceportマザーボード上のステッカーは写真の通りです。バーコードのシールです。パスワードは「3/C/」の最初の3文字を削除し、次の6文字か11文字を削除することで、おそらく初期パスワードになります。 BMC管理インターフェイスへのログインに成功したら、次のページに進みます。
ホーム > 設定 > ネットワーク > ネットワークIP設定
マザーボードの静的IPアドレスを設定します。ローカルのDNSサーバーとNTPサーバーを使用している場合は、それらも設定します。(ドメイン名解決のためのDNSサーバーと時刻同期のためのNTPサーバーBMCの管理インターフェイスは今後よく使うので、ブックマークしておくといいだろう。
次に、サイドバーの "remote control "をクリックします。 ページに "HTML5 viewer "オプションが表示されます。 ページには "HTML5ビューア "オプションが表示されます。 Digital Spaceportでは、Ubuntu 24.04システムの2.5GB ISOイメージをネットワーク経由でアップロードし、後でシステムをインストールするため、有線接続の使用を推奨しています。(ISOイメージ・ファイルは、ディスクまたはハード・ドライブの完全なバックアップである。) Ubuntuのウェブサイトにアクセスし、以下をダウンロードする。 Ubuntu 24.04サーバー版ISOイメージそのサイズは約2.5GBです。BMC管理インターフェイスのHTML5ビューアで、右上をクリックし、このISOイメージを読み込みます。
読み込みが完了したら、「開始(スタート)」をタップします。まだサーバーの電源を入れていない場合は、今すぐ電源を入れてください。電源がオンになると、HTML5ビューアのインターフェイスにアップロードの進捗状況が表示され始め、数字が徐々に増えていきます。screen」ウィンドウをマウスでクリックし、Gigabyte boot логоが表示されるのを待ちます。 логоが表示されたら、キーボードのDELキーを押してBIOSセットアップに入ります。BIOSでデフォルトをロードし、保存して再起動します。 コンピュータが再起動したら、もう一度BIOSに入り、今度はいくつかの設定を変更します。まず、ブートディスクを設定します。ブートモードはUEFIかLegacyのどちらかを選ぶことができ、おそらくトラブルが少なく、問題が起こりにくい方を選ぶ。(UEFIとLegacyは2つの異なるBIOSブートモードで、UEFIの方がよりモダンで先進的です。)
以下は、BIOSセットアップ項目を見つけ、変更する必要があるものです:
- NPSは1(NPS(Nodes Per Socket) ソケットあたりのノード数。)
- CCDがオート(CCD(Core Complex Die)CPUコア・コンプレックス、AMD CPUのモジュール設計)
- SMTオフ(AMD版ハイパースレッディングであるSMT(Simultaneous Multithreading)は、より安定したシングルコア性能のためにオフになっている。)
- SVMオフ(Proxmox VMを使用している場合はオンにすることができます。SVM (Secure Virtual Machine) セキュア仮想マシンモード、仮想化技術ハードウェアアクセラレーション)
- IOMMUオフ(Proxmox VMを使用している場合はオンにすることができます。IOMMU (Input-Output Memory Management Unit) 仮想化技術によりハードウェアアクセラレーションされた入出力メモリ管理ユニット)
- cTDPを200Wに調整(EPYC 7702 CPU用)(cTDP (コンフィギュラブルTDP) CPUパワーとパフォーマンスを調整するコンフィギュラブルTDP)
- 決定論的コントロールをマニュアルに設定し、スライダーをパフォーマンスに寄せる。
- クイックパワーポリシーをパフォーマンスに設定
- BoostFMaxがマニュアルに設定されているBoostFMax CPUアクセラレーション周波数の上限設定)
- boostFmax は 3400 に設定されています(EPYC 7702 CPU の場合) (CPUのアクセラレーション周波数の上限を3.4GHzに設定する。)
上記のBIOS設定を変更した後、保存してもう一度再起動します。この再起動で、F12/11/10(Digital Spaceportはどのキーか覚えていません、ブートлогоページの一番下に表示されています)を押してブートメニューに入ります。AMI Virtual CD "オプションを選択して仮想CD-ROMドライブから起動します。有線のインターネット接続があれば、すぐにUbuntuのインストール画面にアクセスできるはずです。次のステップは、Ubuntuのインストールです。ユーザー名とパスワードを設定する。 インストール完了後にリモートでログインしやすくするため、「setup ssh server」オプションにチェックを入れる。(SSH (Secure Shell) サーバーへのリモートログインと管理のためのセキュア・シェル・プロトコル) システムのインストールが完了するまで待ちます。インストールが完了するとシステムは再起動し、やがてEnterキーを押して続行するよう促されます。Enterを押した後、システムは再び再起動し、コマンドライン・ターミナルに入り、ユーザー名の入力を求められます。設定したユーザー名とパスワードを入力してログインする。 ログインに成功したら、次のコマンドを入力する。
a
表示されたIPアドレスを覚えておいてください。 これで、Windows/macOS/Linuxコンピュータに戻り、BMC管理インターフェイスのHTML5ビューアウィンドウを閉じることができます。 コンピュータのターミナル・ソフトウェアで、次のように入力します (put)。 ユーザー名
をユーザー名に置き換えてください。 アイピーアドレス
IPアドレスに置き換えてください)。
ssh ユーザー名@IPアドレス
よく使われるソフトウェアのインストール
ここにコマンドの大きなリストがあるので、ターミナルにコピー&ペーストして実行してください。NVIDIAグラフィックカードをお持ちの場合は、以下のステップを完了した後、ドライバをインストールすることができます。
sudo apt update && sudo apt upgrade -y && sudo apt install -y htop git glances nano lsof unzip
sudo apt update
ソフトウェア・ソースのリストを更新し、最新のパッケージがダウンロードできるようにします。sudo apt upgrade -y
インストールされているすべてのパッケージを最新バージョンにアップグレードする。-y
パラメーターは、すべての操作が自動的に確認されることを示す。sudo apt install -y htop git glances nano lsof unzip
一般的なLinuxソフトウェアをインストールします。htop
システムリソースの使用状況をリアルタイムで確認できる、より使いやすいプロセスマネージャーです。ギット
コードのダウンロードと管理のためのコード・バージョニング・ツール。チラ見
よりも強力なシステム監視ツールです。htop
より豊かな機能性。ナノ
設定ファイルを編集するための使いやすいテキストエディタです。lsof
ポート占有などのトラブルシューティングに使用できる、オープンファイルを表示するツール。解凍
ZIPファイルを解凍するツール。
固定IPアドレスの設定
コマンドライン・ターミナルに入力する:
sudo netplan generate
このコマンドはデフォルトのネットワーク・コンフィギュレーション・ファイルを生成する。次に ナノ
エディターが設定ファイルを開きます:
sudo nano /etc/netplan/50-cloud-init.yaml
デフォルトのコンフィギュレーション・ファイルの中身は大体こんな感じだ。私たちは エノ1
ネットワークカードのコンフィギュレーション。エノ1
マザーボード上の物理的なネットワークポートに対応する。無視 enp65s0np0
それは外部ネットワークカードだ。
キーボードの矢印キーを使ってカーソルを移動させ、設定ファイルを以下のようなものに変更する。IPアドレスには現在のIPアドレスを使い、操作を簡単にし、物事を複雑にしないようにする。digital spaceportはここで静的IPを 192.168.1.200
ルーターのゲートウェイは 192.168.1.1
これはごく一般的なホームネットワークの構成だ。
修正が完了したら Ctrl+X
アボート ナノ
エディターで保存を求められたら Y
キーで確定する。
端末に戻ったら、コマンドを入力して新しいネットワーク設定を適用する:
sudo netplan apply
これでサーバーに固定IPアドレスが設定されました。サーバーを再起動し、SSHを使ってリモート・ログインして、静的IP設定が有効になっていることを確認してください。
Ollamaをインストールする
次のインストール オーラマ 大規模なモデルランニングフレームワーク。
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
Ollamaのインストールパッケージをダウンロードしてください。カール
はコマンドラインのダウンロードツールである。-L
パラメータはフォローリダイレクトリンクを示します。-o
パラメーターは保存するファイル名を指定する。sudo tar -C /usr -xzf ollama-linux-amd64.tgz
Ollamaのインストールパッケージを以下に展開します。/usr
カタログタール
は、Linuxシステム用の一般的な圧縮/解凍ツールである。-C /usr
解凍ディレクトリを/usr
属-xzf
パラメータを使って gzip 圧縮された tar ファイルを解凍する。sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
という名前のファイルを作成する。オラマ
Ollama サービスを実行するシステム・ユーザー。sudo useradd
ユーザーを作成するコマンド。-r
システムユーザーを作成する場合、UIDとGIDは自動的に割り当てられます。-s /bin/false
ユーザーのシステムへのログインを禁止する。-U
同じ名前のユーザーグループを作成します。-m
ユーザーのホームディレクトリを自動的に作成します。-d /usr/share/ollama
ユーザーのホーム・ディレクトリを/usr/share/ollama
.オラマ
ユーザー名
sudo usermod -a -G ollama $(whoami)
現在のユーザーをオラマ
ユーザーグループ。sudo usermod
ユーザー情報を修正するコマンド。-a
オーバーライドの代わりにユーザーグループに追加。-G ollama
追加オラマ
ユーザーグループ。$(フーアミ)
現在のユーザー名を取得します。
このコマンドは オラマ
ユーザーにOllamaをインストールします。 /usr/share/ollama
ディレクトリに置かれます。 デフォルトでは、モデルファイルは /usr/share/ollama/.ollama/models/
カタログ
環境変数とサービスの設定
ここで、Ollamaの起動時に使用するいくつかの環境変数を設定する必要がある。 これは並列処理の問題を解決するために重要である。
sudo nano /etc/systemd/system/ollama.service
支出 ナノ
エディターがOllamaのsystemdサービス設定ファイルを開く。設定ファイルに環境変数を追加する必要があります。 以下は設定可能な環境変数のリストです。すべて使う必要はありません。
環境変数:
-OLLAMA_DEBUG
より多くのデバッグ情報を表示する。OLLAMA_DEBUG=1
)-OLLAMA_HOST
Ollama サーバがリッスンする IP アドレス (デフォルト)127.0.0.1:11434
)-ollama_keep_alive
モデルがメモリにロードされたままになる時間 (デフォルトは"5m"
(5分)-ollama_max_loaded_models
GPUごとにロードできるモデルの最大数-ollama_max_queue
リクエストキューの最大長-OLLAMA_MODELS
モデルファイルが保存されているディレクトリ-ollama_num_parallel
最大並列リクエスト数-オラマ・ノプルーン
起動時にモデルのキャッシュをクリーンアップしない-オラマ
: クロスドメインリクエストを許可するソースのコンマ区切りリスト-ollama_sched_spread
: モデルをすべてのGPUに均等に分散させるかどうか-オラマ_フラッシュ_アテンション
フラッシュ・アテンション・アクセラレーションを有効にするかどうか。フラッシュ・アテンションは最適化 変圧器 計算効率をモデル化する技術)-ollama_kv_cache_type
K/V キャッシュの定量化タイプ(デフォルト)f16
) (K/Vキャッシュは、推論を高速化するために使用されるTransformerモデルの重要なコンポーネントであり、定量化によってメモリフットプリントは削減されるが、精度が低下する可能性がある。)-ollama_llm_library
自動検出をバイパスする LLM ライブラリを指定する (LLMライブラリーは、以下のような大規模なモデルを実行するために使用される基礎となる計算ライブラリーである。ラマ.cpp
,エクスラマ
他)-ollama_gpu_オーバーヘッド
GPUごとに確保されたメモリ容量(バイト)-ollama_load_timeout
モデルのロードタイムアウト(デフォルト)"5m"
(5分)
デジタル・スペースポートの設定ファイルの内容は以下の通り。 注:GPUカードを持っていない限り、GPU関連の環境変数を埋める必要はない(はず)。
プレス Ctrl+X
を押してから Y
設定ファイルを保存します。 次に以下のコマンドを実行する:
sudo systemctl daemon-reload
sudo systemctl start ollama
nproc
sudo systemctl daemon-reload
変更を有効にするには、systemd サービス設定ファイルをリロードしてください。sudo systemctl start ollama
スタートアップollama.service
サービス、オラマ・ビッグモデル・フレームワーク。エヌプロック
CPUコア数を表示します。
これで環境変数が設定された。 エヌプロック
コマンドは次の数字を出力する。 64
これは64CPUコアを意味する。 もし出力が 128
これは、SMTハイパースレッディングがオフになっていないことを意味するので、BIOSでオフにする必要がある。 出力が 32
もしかしたら 96
出力が同じ状態でない場合は、BIOSのNPSとCCDの設定を確認してください。 出力が 64
CPUコア数が正しければ、次のステップ(LFG=Let's Fucking Go)に進むことができる。
ダウンロード Deepseek 671b モデル
次に、Deepseek 671bラージモデルをダウンロードします。このモデルは約400GBのディスク容量を使用するので、NVMe SSDが十分なサイズであることを期待します。
オラマ・プル ディープシークR1:671b
オラマ・プル・ディープシーク-R1:671b
Ollamaクライアントを使用してダウンロードdeepseek-r1:671b
モデルプル
コマンドでモデルをダウンロードする。deepseek-r1:671b
はモデル名とバージョン。
ダウンロードには時間がかかりますので、しばらくお待ちください。 ところで、驚異的なデータ通信料をお嘆きください...(大きなモデルのダウンロードは、特に海外のサーバーから多くのネットワークトラフィックを消費し、高いトラフィックコストが発生する可能性があります。)
OpenWEBUIのインストール
OpenWEBUIを実行するには、DockerかPythonを使う必要があります。 ここでは、Digital SpaceportはDockerを使ってデプロイします。 競合を避けるため、システムに他のDocker関連ソフトウェアがインストールされていないことを確認してください。
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
競合を避けるため、インストールされている可能性のあるDocker関連パッケージをアンインストールする。for pkg in ... ... 完了
パッケージのリストを反復するforループ文。docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
インストール可能なDocker関連パッケージのリスト。sudo apt-get remove $pkg
パッケージをアンインストールします。apt-get remove
はDebian/Ubuntuシステムでパッケージをアンインストールするコマンドです。$pkg
は、現在走査中のパッケージ名を表すループ変数である。
公式Dockerソースをインストールする:
# Dockerの公式GPGキーを追加する。
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Aptのソースにリポジトリを追加します。
エコー
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu ¦Apt
$(. $(. /etc/os-release && echo "$VERSION_CODENAME") stable" ¦$をインストールします。
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
- このコマンドは、Dockerの最新バージョンのインストールを容易にするために、公式Dockerリポジトリを追加するために使用する。
- 最初の部分は公式のDocker GPGキーを追加し、パッケージの完全性とオリジンを検証するために使用されます。
- 2つ目のパートでは、APT(Advanced Package Tool)のソースリストにDockerソースを追加する。
- 究極
sudo apt-get update
ソフトウェアソースのリストを更新して、新しく追加されたDockerソースを有効にする。
Docker Engineをインストールします:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Docker Engineと関連コンポーネントをインストールします。ドッカーシー
Docker Community Editionエンジン。docker-ce-cli
Dockerコマンドラインクライアント。コンテナドットアイオー
コンテナ実行時に、Dockerの基礎となる依存関係。docker-buildx-plugin
マルチアーキテクチャのDockerイメージをビルドするためのDocker Buildxプラグイン。docker-compose-plugin
マルチコンテナDockerアプリケーションを管理するDocker Composeプラグイン。-y
すべての操作を自動的に確認します。
Dockge Dockerコンテナ・マネージャーをインストールする。
Dockgeのデータディレクトリはデフォルトでは /opt/dockge
ディレクトリにあり、Docker関連のデータも /オプト
カタログの管理も簡単だ。
sudo mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
sudo curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml -output compose.yaml
docker compose up -d
sudo mkdir -p /opt/stacks /opt/dockge
カタログの作成/opt/stacks
歌で応える/opt/dockge
これはDockge関連のファイルを保存するために使用される。-p
パラメータは、親ディレクトリが存在しない場合、そのディレクトリも作成されることを意味する。cd /opt/dockge
現在の作業ディレクトリを/opt/dockge
.sudo curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml -output compose.yaml
ダウンロードcompose.yaml
ドキュメンテーションcompose.yaml
はDocker Composeの設定ファイルで、Dockerコンテナの設定を定義します。docker compose up -d
Docker Composeを使ってDockgeコンテナを起動します。上
コマンドでコンテナを起動する。-d
パラメータはバックグラウンド動作を示す。
これでブラウザ経由でDockge管理インターフェイスにアクセスし、残りのDockerコンテナ管理手順を完了することができます。 サーバーのIPアドレスが分からない場合は、サーバーのネットワーク設定を確認してください。 ブラウザのアクセス・アドレスは http://服务器IP:5001
例えば、Digital SpaceportのサーバーIPは、Digital SpaceportのサーバーIPと同じです。 例えば、Digital SpaceportのサーバーIPは 192.168.1.200
するとアクセスアドレスは http://192.168.1.200:5001
. 初回はユーザー名とパスワードを設定する必要がありますので、忘れないようにしてください。 次のステップは オープンウェブユーアイ 今すぐDockerコンテナの
DockgeのComposeエディタに、OpenwebUIのCompose設定として以下を貼り付けます:
バージョン: "3.3
サービス
open-webui.
services: open-webui.
- 7000:8080
ボリューム: open-webui:/app/backend/data
- open-webui:/app/backend/data
コンテナ名: open-webui
再起動: 常に
イメージ: ghcr.io/open-webui/open-webui:latest
ボリューム: open-webui: {}
open-webui:{}。
ネットワーク: dockge_default: {}。
dockge_default: 外部: true
外部: true
- このComposeコンフィギュレーションでは
オープンウェブイ
OpenWEBUI を実行するための Docker コンテナ。バージョン:"3.3"
Docker Composeファイルのバージョン。サービス
サービスのリストを定義する。オープンウェブイ
サービス名ポート
ポートマッピングは、コンテナの8080番ポートをホストの7000番ポートにマッピングする。ボリューム
データボリュームはホストのオープンウェブイ
ボリュームはコンテナの/アプリ/バックエンド/データ
ディレクトリに OpenWEBUI のデータを永続的に保存します。コンテナ名
コンテナ名。オープンウェブイ
.再起動:常に
コンテナは常に自動的に再起動される。image: ghcr.io/open-webui/open-webui:latest
使用したDockerイメージ。ghcr.io/open-webui/open-webui:latest
はOpenWEBUIの最新のDockerイメージです。
ボリューム
データ量の定義open-webui: {}
という名前のファイルを作成する。オープンウェブイ
データボリュームの
ネットワーク
ネットワークの定義デフォルト
ネットワーク名。external: true
外部ネットワークの利用デフォルト
デフォルトでは、Dockge はデフォルト
ネットワークの
保存」と「実行」をクリックする。 Dockerイメージをダウンロードする必要があるため、最初の実行は遅くなります。 後でOpenWEBUIイメージを更新するには、Dockgeインターフェースの "update "ボタンをクリックするだけです。 コンテナが起動したら http://服务器IP:7000
OpenWEBUIのインターフェイスを開くことができるようになります。 例えば、Digital Spaceport のサーバ IP は次のようになります。 192.168.1.200
するとアクセスアドレスは http://192.168.1.200:7000
. 初めてアクセスするときは、ユーザー名とパスワードを設定する必要があります。 それでは 只今 ほとんど終わった! ふぅー!ふぅー!)
OpenWEBUIとOllamaの接続
OpenWEBUI 管理画面の "/admin/settings" -> "connections" ページで、"+" 記号をクリックして新しいサーバ接続を追加します。 サーバのアドレスを入力します。 サーバーIP:11434
. 例えば。192.168.1.200:11434
(自分のサーバーのIPアドレスに置き換えることに注意してください)。 (自分のサーバーの IP アドレスに置き換えることに注意してください)。 接続に成功すると、OpenWEBUI インタフェースに "connection success" という緑色のメッセージがポップアップ表示されます。
接続が完了したら、Connection Manager アイコンをクリックして、接続されている Ollama サーバーを確認します。 Deepseekモデルがすでにダウンロードされている場合は、「モデルの削除」ドロップダウンメニューに表示されます。 deepseek-r1:671b
モデル
おめでとう! でも 慌てて設定ページから離れないように!
高度なパラメータの設定
編集(ペン)アイコンをクリックする。
高度なパラメータが編集可能に 終わったら「SAVE!」をクリックするのをお忘れなく。
- GPUの数(GPUs)GPUカードを持っていない場合は、次のように変更してください。
0
. - 推理の努力オプション
ロー
(低い)ミディアム
(M)または高い
(デフォルトはミディアム
(中央)。 - コンテキストの長さに設定する。
16364
コンテキストの長さは16Kで問題ありません。 コンテキスト長が大きくなると、より多くのメモリまたはGPU RAMが必要になります。 - スレッド数 (num_thread)に設定する。
62
さらに、システム用に2つのCPUコアが確保されている。 - メモリロックを有効にする (use_mlock)メモリデータがディスクにスワップアウトされ、パフォーマンスに影響するのを防ぐために有効にすることができます。 (メモリ・ロック(mlock)は、オペレーティング・システムによってメモリ・ページがディスクにスワップアウトされるのを防ぐ。)
その他のパラメーターは、モデルカードの指示に従って調整することができる。 注:2TBのRAMがない限り、160Kのコンテキスト長をフルに使おうとしないでください! たとえうまくいったとしても、スピードは落ちる。 むしょうに 遅い。
重要:"SAVE!"をタップするのをお忘れなく。
ユーザー設定の設定
ユーザー設定」をクリックして、ユーザー設定を変更します。 キープアライブ」の設定を3時間など長めに設定することをお勧めします。 設定変更後、「保存」をクリックします。
ユーザー設定は、以前の管理者設定と少し紛らわしいので、区別するように注意してください。
テストを実施する。
なんということでしょう、ここまで来られたなんて! 素晴らしい!Digital Spaceportはあなたを賞賛します! OpenWEBUI インタフェースの左上にある "new chat" をクリックしてください。 モデルリストにはすでに deepseek-r1:671b
わかったよ。 ランダムに "hello "を送ってみてください。 うまくいったよ!
Deepseek R1 671b パフォーマンステスト
Ollama + OpenWEBUIローカルビッグモデルサービスのインストールと実行に成功しました! Digital Spaceportでは、他にも以下のような素晴らしいローカルビッグモデル実行ソリューションがたくさんあると考えています。 ラマ.cpp
, エクソ
歌で応える ブイエルエルエム
チュートリアルはDigital Spaceportがより深く掘り下げた後に公開されます。 チュートリアルはDigital Spaceportがより深く掘り下げた後に公開されます。 ラマ.cpp
デジタル・スペースポート社は、最近、コンパイル、テスト、実行を行った。 ラマ.cpp
結果はとてもいい! ただパラメータが多すぎて、うまくいかない。 ブイエルエルエム
ちょっと複雑なんだ。エクソ
とてもシンプルなんだけど、起動後にクラッシュし続けて、まだデバッグする時間がないんだ。 とにかく、よく言われるように ご期待ください! (もうすぐ!)