このガイドでは、ローカル マシンで大規模言語モデル (LLM) を実行し、独自の LLM を作成する方法を学習します。 Node.js の ollama-js ライブラリを使用してカスタム モデルの API を作成する方法についても説明します。
Ollama は、そのシンプルさと GPU を多用しないマシンとの互換性により、LLM をローカルで実行するのに理想的な選択肢です。まずは公式 Web サイトから Ollama をインストールします:
オラマ公式サイト
Ollama をインストールすると、利用可能なさまざまな LLM モデルから選択できます。利用可能なモデルのリストは、GitHub リポジトリで見つけることができます:
Ollama GitHub リポジトリ
モデルをローカルで実行するには、ターミナルで次のコマンドを使用します。 Ollama がモデルをローカルにダウンロードして保存するため、最初の実行には時間がかかる場合があることに注意してください。モデルはローカルにアクセスされるため、後続の実行は高速になります。
ollama run {model_name}
カスタム LLM を作成するには、モデル ファイルを作成する必要があります。以下はモデルを定義する方法の例です:
FROM# Define your parameters here PARAMETER temperature 0.5 SYSTEM """ You are an English teaching assistant named Mr. Kamal Kishor. You help with note-making, solving English grammar assignments, and reading comprehensions. """
これをモデルファイルとして保存します。このファイルからモデルを作成するには、ターミナルで次のコマンドを実行します:
ollama create mrkamalkishor -f ./modelfile
モデルを作成した後、次を使用してローカルでモデルを操作できます:
ollama run mrkamalkishor
このステップでは、ollama-js ライブラリを使用して Node.js で API を作成します。
npm install ollama
import express from 'express'; import ollama from 'ollama'; const app = express(); const router = express.Router(); app.use(express.json()); router.post('/ask-query', async (req, res) => { const { query } = req.body; try { const response = await ollama.chat({ model: 'mrkamalkishor', messages: [{ role: 'user', content: query }], }); res.json({ reply: response.message.content }); } catch (error) { res.status(500).send({ error: 'Error interacting with the model' }); } }); app.use('/api', router); const PORT = process.env.PORT || 3000; app.listen(PORT, () => { console.log(`Server is running on port ${PORT}`); });
このコードは、カスタム モデルと対話するためのエンドポイントを備えた Express.js サーバーをセットアップします。ユーザーのクエリを含む JSON 本文を使用して /ask-query に対して POST リクエストが行われると、サーバーはモデルの出力で応答します。
これらの手順に従うことで、Ollama をインストールし、LLM をローカルで選択して実行し、カスタム LLM を作成し、それと対話するための Node.js API をセットアップできます。このセットアップにより、GPU を大量に使用するハードウェアを必要とせずに、ローカル マシン上で強力な言語モデルを活用できるようになります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3