Heim > Backend-Entwicklung > Python-Tutorial > Ollama – Sondermodell – Lama

Ollama – Sondermodell – Lama

Mary-Kate Olsen
Freigeben: 2024-12-03 02:16:09
Original
835 Leute haben es durchsucht

Importieren Sie die Ollama-Bibliothek.

import ollama

Nach dem Login kopieren
Nach dem Login kopieren

Erstellen Sie eine Klasse, um benutzerdefinierte Modelle zu konfigurieren.

Methoden:

  • init: Initialisiert das Modell mit Attributen wie Name, System und Temperatur.
  • name_custom: Gibt den benutzerdefinierten Namen zurück.
  • get_description: Erstellt die ModelFile-Struktur.
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"
        )

Nach dem Login kopieren
  • Erstellen Sie eine Funktion, um alle verfügbaren Modelle aufzulisten.
  • Ausgabe: Gibt eine Liste der in Ollama registrierten Modelle zurück.
def ollama_list() -> None:
    response_ollama = ollama.list()
    return response_ollama['models']
Nach dem Login kopieren

Erstellen Sie eine Funktion, um ein benutzerdefiniertes Modell basierend auf der übergebenen Konfiguration zu erstellen.

def ollama_build(custom_config: ModelFile) -> None:
    ollama.create(
        model=custom_config.name_custom,
        modelfile=custom_config.get_description()
    )
Nach dem Login kopieren

Erstellen Sie eine Funktion, um zu prüfen, ob das benutzerdefinierte Modell vorhanden ist.

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')

Nach dem Login kopieren

Erstellen Sie eine Funktion, um eine Antwort basierend auf der bereitgestellten Vorlage und Eingabeaufforderung zu generieren.

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

Nach dem Login kopieren

Erstellen Sie eine Funktion zum Löschen eines Modells nach Namen.

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

Nach dem Login kopieren

Erstellen Sie eine Funktion, um die Schritte zum Erstellen, Überprüfen und Verwenden des Modells zu ordnen.

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)

Nach dem Login kopieren

Stellen Sie die Eingabeaufforderung ein und konfigurieren Sie die Modelldateivorlage.

Eingabe:

  • Modell: llama3.2
  • Benutzerdefinierter Name: xeroxvaldo_sharopildo
  • System: Intelligenter Anime-Assistent.

Ausgabe: Führt die Hauptfunktion aus, um das Modell zu erstellen, seine Existenz zu prüfen und eine Antwort auf die Eingabeaufforderung zu generieren.

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)

Nach dem Login kopieren

Ausgabe:

Naruto Uzumaki ist der Hauptprotagonist der beliebten japanischen Manga- und Anime-Serie „Naruto“, erstellt von Masashi Kishimoto. Er ist ein junger Ninja aus dem Hidden Leaf Village, der davon träumt, der Hokage zu werden, der Anführer seines Dorfes.

Naruto ist bekannt für seine Entschlossenheit, seinen Mut und seinen ausgeprägten Gerechtigkeitssinn. Er ist auch für seinen einzigartigen Ninja-Stil bekannt, bei dem er sein Neunschwänziges Chakra (eine kraftvolle Energie, die er besitzt) nutzt, um seine körperlichen Fähigkeiten zu verbessern.

Im Laufe der Serie steht Naruto zahlreichen Herausforderungen und Gegnern gegenüber, darunter anderen Ninjas aus verschiedenen Dörfern sowie mächtigen Feinden wie Akatsuki-Mitgliedern und den Jinchuriki der Ten-Tails. Trotz vieler Rückschläge und Misserfolge hält Naruto durch und wird mit jeder Herausforderung, die er meistert, stärker.

Narutos Charakterentwicklung ist ein zentrales Thema der Serie, da er wertvolle Lektionen über Freundschaft, Opferbereitschaft und die wahre Bedeutung des Ninja-Seins lernt. Seine Beziehungen zu seinen Teamkollegen Sakura Haruno und Sasuke Uchiha sind für die Gestaltung seiner Persönlichkeit und seines Wachstums von besonderer Bedeutung.

Die Naruto-Serie besteht aus zwei Hauptbögen: dem ursprünglichen „Naruto“-Bogen (2002–2007) und dem „Naruto Shippuden“-Bogen (2007–2014). Letzteres ist eine Fortsetzung des ersten Handlungsbogens, wobei Naruto jetzt älter und mächtiger ist.

Alles in allem ist Naruto Uzumaki eine ikonische Anime-Figur, die weltweit die Herzen von Millionen Menschen erobert hat. Seine inspirierende Geschichte und seine unvergessliche Persönlichkeit haben ihn zu einem der beliebtesten Charaktere in der Anime-Geschichte gemacht!

import ollama

Nach dem Login kopieren
Nach dem Login kopieren

Referenzen

  • Ollama
  • Notizbuch für dieses Projekt
  • Ollama Model Custom

Anmerkungen des Autors

Vielen Dank, dass Sie bis hierher gelesen haben. Wenn Sie es liken und teilen könnten, wäre ich Ihnen sehr dankbar. Wenn es Ihnen nicht gefallen hat, kann ich nicht wissen, ob Ihnen der Beitrag gefallen hat. Auf diese Weise helfen Sie mir zu wissen, wo ich meine Beiträge verbessern sollte. Vielen Dank.


Meine neuesten Beiträge

Ollama - Custom Model - llama

Haben Sie kostenlose GPU gesagt?

sc0v0ne ・ 29. Februar

#Python #gpu #ai #maschinelles Lernen
Ollama - Custom Model - llama

Meine Superkräfte als Softwareentwickler – 2024

sc0v0ne ・ 6. Januar

#Werkzeuge #Softwareentwicklung #Arbeitsplätze #Produktivität
Ollama - Custom Model - llama

Effizient werden mit Pomodoro

sc0v0ne ・ 12. Februar

#Werkzeuge #Produktivität #Softwareentwicklung

Favoriten Projekte Open Source

  • ? Python
  • ?️ Deep Learning
  • ? Computer Vision
  • ?️ Linux
  • ? Times Series
  • ? Datenbank
  • ? Rost
  • ?️ Maschinelles Lernen
  • ?️ Roadmaps

Über den Autor:

sc0v0ne image

sc0v0ne

In diesem Blog möchte ich einige Beiträge zu den Themen erstellen, die ich studiere, und ich teile sie, um anderen Benutzern zu helfen.

Ein bisschen mehr über mich...

Ich habe meinen Bachelor in Wirtschaftsinformatik abgeschlossen und im College hatte ich Kontakt mit verschiedenen Technologien. Nebenbei belegte ich den Kurs Künstliche Intelligenz, wo ich meinen ersten Kontakt mit maschinellem Lernen und Python hatte. Daraus wurde meine Leidenschaft, mehr über dieses Gebiet zu erfahren. Heute arbeite ich mit maschinellem Lernen und Deep Learning und entwickle Kommunikationssoftware. Nebenbei habe ich einen Blog erstellt, in dem ich einige Beiträge zu Themen verfasse, die ich studiere, und diese teile, um anderen Benutzern zu helfen.

Ich lerne derzeit TensorFlow und Computer Vision

Neugier: Ich liebe Kaffee

  • Kaggle
  • Gitlab
  • Github
  • Mastodon

Das obige ist der detaillierte Inhalt vonOllama – Sondermodell – Lama. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage