Rumah  >  Artikel  >  hujung hadapan web  >  Menjalankan dan Mencipta LLM Anda Sendiri Secara Tempatan dengan API Node.js menggunakan Ollama

Menjalankan dan Mencipta LLM Anda Sendiri Secara Tempatan dengan API Node.js menggunakan Ollama

WBOY
WBOYasal
2024-07-19 12:15:11514semak imbas

Running and Creating Your Own LLMs Locally with Node.js API using Ollama

Dalam panduan ini, anda akan belajar cara menjalankan Model Bahasa Besar (LLM) pada mesin tempatan anda dan mencipta LLM anda sendiri. Kami juga akan membincangkan cara membuat API untuk model tersuai anda menggunakan perpustakaan ollama-js dalam Node.js.

Langkah 1: Memasang Ollama

Ollama ialah pilihan ideal untuk menjalankan LLM secara tempatan kerana kesederhanaan dan keserasiannya dengan mesin intensif bukan GPU. Mulakan dengan memasang Ollama dari tapak web rasmi:

Tapak Rasmi Ollama

Langkah 2: Memilih Model LLM Pilihan Anda

Selepas memasang Ollama, anda boleh memilih daripada pelbagai model LLM yang tersedia. Anda boleh mencari senarai model yang tersedia pada repositori GitHub mereka:

Repositori GitHub Ollama

Langkah 3: Menjalankan Model Secara Setempat

Untuk menjalankan model secara setempat, gunakan arahan berikut dalam terminal anda. Ambil perhatian bahawa larian pertama mungkin mengambil masa yang lebih lama apabila Ollama memuat turun dan menyimpan model secara setempat. Larian berikutnya akan menjadi lebih pantas kerana model itu diakses secara setempat.

ollama run {model_name}

Langkah 4: Mencipta LLM Anda Sendiri

Untuk mencipta LLM tersuai anda, anda perlu mencipta fail model. Di bawah ialah contoh cara untuk menentukan model anda:

FROM <name_of_your_downloaded_model>

# 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.
"""

Simpan ini sebagai fail model. Untuk mencipta model daripada fail ini, jalankan arahan berikut dalam terminal anda:

ollama create mrkamalkishor -f ./modelfile

Selepas mencipta model, anda boleh berinteraksi dengannya secara setempat menggunakan:

ollama run mrkamalkishor

Langkah 5: Mencipta API Node.js untuk Model Tersuai

Untuk langkah ini, kami akan menggunakan perpustakaan ollama-js untuk mencipta API dalam Node.js.

  1. Pasang perpustakaan Ollama dalam projek Node.js anda:
npm install ollama
  1. Buat titik akhir API anda:
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}`);
});

Kod ini menyediakan pelayan Express.js dengan titik akhir untuk berinteraksi dengan model tersuai anda. Apabila permintaan POST dibuat kepada /ask-query dengan badan JSON yang mengandungi pertanyaan pengguna, pelayan bertindak balas dengan output model.

Ringkasan

Dengan mengikuti langkah ini, anda boleh memasang Ollama, memilih dan menjalankan LLM secara setempat, mencipta LLM tersuai anda dan menyediakan API Node.js untuk berinteraksi dengannya. Persediaan ini membolehkan anda memanfaatkan model bahasa yang berkuasa pada mesin tempatan anda tanpa memerlukan perkakasan intensif GPU.

Atas ialah kandungan terperinci Menjalankan dan Mencipta LLM Anda Sendiri Secara Tempatan dengan API Node.js menggunakan Ollama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah Set dalam JS?Artikel seterusnya:Apakah Set dalam JS?