Ollama eklentisi

Ollama eklentisi, Ollama tarafından desteklenen yerel LLM'lerden herhangi birine arayüz sağlar.

Ön koşullar

Bu eklenti için önce Ollama sunucusunu yükleyip çalıştırmanız gerekir. Oluşturma sayfasında verilen talimatları uygulayabilirsiniz.

İlgilendiğiniz modelleri indirmek için Ollama CLI'yi kullanın. Örneğin:

ollama pull gemma3

Geliştirme için Ollama'yı geliştirme makinenizde çalıştırabilirsiniz. Dağıtılan uygulamalar genellikle Ollama'yı, Genkit çalıştıran uygulama arka ucunu barındıran makineden farklı bir GPU hızlandırmalı makinede çalıştırır.

Yapılandırma

Bu eklentiyi kullanmak için Genkit başlatıcısında ollama.Ollama değerini WithPlugins() değerine aktarın ve Ollama sunucunuzun adresini belirtin:

import "github.com/firebase/genkit/go/plugins/ollama"
g, err := genkit.Init(context.Background(), genkit.WithPlugins(&ollama.Ollama{ServerAddress: "http://127.0.0.1:11434"}))

Kullanım

İçerik oluşturmak için öncelikle yüklediğiniz ve kullanmak istediğiniz modele dayalı bir model tanımı oluşturmanız gerekir. Örneğin, Gemma 2'yi yüklediyseniz:

model := ollama.DefineModel(
    ollama.ModelDefinition{
        Name: "gemma3",
        Type: "chat", // "chat" or "generate"
    },
    &ai.ModelInfo{
        Multiturn:  true,
        SystemRole: true,
        Tools:      false,
        Media:      false,
    },
)

Ardından, Ollama sunucunuza istek göndermek için model referansını kullanabilirsiniz:

resp, err := genkit.Generate(ctx, g, ai.WithModel(model), ai.WithPrompt("Tell me a joke."))
if err != nil {
    return err
}

log.Println(resp.Text())

Daha fazla bilgi için İçerik üretme bölümüne bakın.