Rumah > pembangunan bahagian belakang > Tutorial Python > Ollama - Model Tersuai - llama

Ollama - Model Tersuai - llama

Mary-Kate Olsen
Lepaskan: 2024-12-03 02:16:09
asal
835 orang telah melayarinya

Import perpustakaan ollama.

import ollama

Salin selepas log masuk
Salin selepas log masuk

Buat kelas untuk mengkonfigurasi model tersuai.

Kaedah:

  • init: Memulakan model dengan atribut seperti nama, sistem dan suhu.
  • name_custom: Mengembalikan nama tersuai.
  • get_description: Mencipta struktur ModelFile.
class ModelFile:
    def __init__(self, model: str, name_custom: str, system: str, temp: float = 0.1) -> None:
        self.__model = model
        self.__name_custom = name_custom
        self.__system = system
        self.__temp = temp

    @property
    def name_custom(self):
        return self.__name_custom

    def get_description(self):
        return (
            f"FROM {self.__model}\n"
            f"SYSTEM {self.__system}\n"
            f"PARAMETER temperature {self.__temp}\n"
        )

Salin selepas log masuk
  • Buat fungsi untuk menyenaraikan semua model yang tersedia.
  • Output: Mengembalikan senarai model yang didaftarkan dalam ollama.
def ollama_list() -> None:
    response_ollama = ollama.list()
    return response_ollama['models']
Salin selepas log masuk

Buat fungsi untuk membina model tersuai berdasarkan konfigurasi yang diluluskan.

def ollama_build(custom_config: ModelFile) -> None:
    ollama.create(
        model=custom_config.name_custom,
        modelfile=custom_config.get_description()
    )
Salin selepas log masuk

Buat fungsi untuk menyemak sama ada model tersuai wujud.

def check_custom_model(name_model) -> None:
    models = ollama_list()
    models_names = [model['name'] for model in models]
    if f'{name_model}:latest' in models_names:
        print('Exists')
    else:
        raise Exception('Model does not exists')

Salin selepas log masuk

Buat fungsi untuk menjana respons berdasarkan templat dan gesaan yang disediakan.

def ollama_generate(name_model, prompt) -> None:
    response_ollama = ollama.generate(
        model=name_model,
        prompt=prompt
    )
    print(response_ollama['response'])

Salin selepas log masuk

Buat fungsi untuk memadam model dengan nama.

def ollama_delete(name_model) -> None:
    ollama.delete(name_model)

Salin selepas log masuk

Buat fungsi untuk Memerintahkan langkah membina, mengesahkan dan menggunakan model.

def main(custom_config: ModelFile, prompt) -> None:
    ollama_build(custom_config)
    check_custom_model(custom_config.name_custom)
    ollama_generate(custom_config.name_custom, prompt)
    # ollama_delete(custom_config.name_custom)

Salin selepas log masuk

Tetapkan gesaan dan konfigurasikan templat Fail Model.

Input:

  • Model: llama3.2
  • Nama tersuai: xeroxvaldo_sharopildo
  • Sistem: Pembantu anime pintar.

Output: Menjalankan fungsi utama untuk mencipta model, menyemak kewujudannya dan menjana respons kepada gesaan.

if __name__ == "__main__":
    prompt: str = 'Who is Naruto Uzumaki ?'
    MF: ModelFile = ModelFile(
        model='llama3.2',
        name_custom='xeroxvaldo_sharopildo',
        system='You are very smart assistant who knows everything about Anime',
    )
    main(MF, prompt)

Salin selepas log masuk

output:

Naruto Uzumaki ialah protagonis utama siri manga dan anime Jepun yang popular "Naruto," yang dicipta oleh Masashi Kishimoto. Dia seorang ninja muda dari Kampung Daun Tersembunyi, yang bercita-cita menjadi Hokage, ketua kampungnya.

Naruto terkenal dengan keazaman, keberanian dan rasa keadilan yang kuat. Dia juga terkenal dengan gaya ninjanya yang unik, yang melibatkan penggunaan chakra Nine-Tails (tenaga kuat yang dimilikinya) untuk meningkatkan kebolehan fizikalnya.

Sepanjang siri ini, Naruto menghadapi pelbagai cabaran dan musuh, termasuk ninja lain dari kampung yang berbeza, serta musuh yang kuat seperti ahli Akatsuki dan jinchuriki Ekor Sepuluh. Walaupun menghadapi banyak halangan dan kegagalan, Naruto tabah dan menjadi lebih kuat dengan setiap cabaran yang ditempuhinya.

Pembangunan watak Naruto ialah tema utama siri ini, kerana dia mempelajari pelajaran berharga tentang persahabatan, pengorbanan dan erti sebenar menjadi seorang ninja. Hubungannya dengan rakan sepasukannya, Sakura Haruno dan Sasuke Uchiha, amat penting dalam membentuk personaliti dan pertumbuhannya.

Siri Naruto terdiri daripada dua arka utama: arka "Naruto" asal (2002-2007) dan arka "Naruto Shippuden" (2007-2014). Yang terakhir adalah kesinambungan daripada arka pertama, dengan Naruto kini lebih tua dan lebih berkuasa.

Secara keseluruhannya, Naruto Uzumaki ialah watak anime ikonik yang telah menawan hati jutaan orang di seluruh dunia. Kisahnya yang memberi inspirasi dan personaliti yang tidak dapat dilupakan telah menjadikannya salah satu watak yang paling digemari dalam sejarah anime!

import ollama

Salin selepas log masuk
Salin selepas log masuk

Rujukan

  • Ollama
  • Buku nota projek ini
  • Tersuai Model Ollama

Nota pengarang

Terima kasih banyak kerana membaca sejauh ini. Jika anda boleh suka dan berkongsi, saya akan sangat berterima kasih. Jika anda tidak menyukainya, saya tidak tahu sama ada anda menyukai siaran itu. Dengan cara ini, anda membantu saya mengetahui di mana saya harus memperbaiki siaran saya. Terima kasih.


Catatan Terkini Saya

Ollama - Custom Model - llama

Adakah anda mengatakan GPU Percuma?

sc0v0ne ・ 29 Feb

#python #gpu #ai #pembelajaran mesin
Ollama - Custom Model - llama

Kuasa Super Saya sebagai Pembangun Perisian - 2024

sc0v0ne ・ 6 Jan

#alat #pembangunan perisian #stesen kerja #produktiviti
Ollama - Custom Model - llama

Menjadi Cekap dengan Pomodoro

sc0v0ne ・ 12 Feb

#alat #produktiviti #pembangunan perisian

Projek Kegemaran Sumber Terbuka

  • ? Python
  • ?️ Pembelajaran Mendalam
  • ? Penglihatan Komputer
  • ?️ Linux
  • ? Siri Masa
  • ? Pangkalan data
  • ? Karat
  • ?️ Pembelajaran Mesin
  • ?️ Pelan Jalan

Mengenai pengarang:

sc0v0ne image

sc0v0ne

Blog ini adalah untuk membuat beberapa post tentang subjek yang sedang saya pelajari dan saya kongsikan untuk membantu pengguna lain.

Sedikit lagi tentang saya...

Berlulus dalam Sarjana Muda Sistem Maklumat, di kolej saya mempunyai hubungan dengan teknologi yang berbeza. Sepanjang perjalanan, saya mengikuti kursus Kecerdasan Buatan, di mana saya mempunyai hubungan pertama dengan pembelajaran mesin dan Python. Dari sinilah menjadi minat saya untuk mempelajari bidang ini. Hari ini saya bekerja dengan pembelajaran mesin dan pembelajaran mendalam membangunkan perisian komunikasi. Sepanjang perjalanan, saya mencipta blog di mana saya membuat beberapa siaran tentang subjek yang saya pelajari dan berkongsinya untuk membantu pengguna lain.

Saya sedang belajar TensorFlow dan Computer Vision

Perasaan ingin tahu: Saya suka kopi

  • Kaggle
  • Gitlab
  • Github
  • Mastodon

Atas ialah kandungan terperinci Ollama - Model Tersuai - llama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan