Ollama プラグイン

Ollama プラグインは、Ollama でサポートされているローカル LLM へのインターフェースを提供します。

前提条件

このプラグインを使用するには、まず Ollama サーバーをインストールして実行する必要があります。手順については、Ollama のダウンロードページをご覧ください。

Ollama CLI を使用して、関心のあるモデルをダウンロードします。次に例を示します。

ollama pull gemma3

開発に関しては、開発マシンで Ollama を実行できます。デプロイされたアプリは通常、Genkit を実行するアプリ バックエンドをホストするマシンとは異なる GPU アクセラレータを搭載したマシンで Ollama を実行します。

構成

このプラグインを使用するには、Genkit イニシャライザで ollama.OllamaWithPlugins() に渡し、Ollama サーバーのアドレスを指定します。

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"}))

使用方法

コンテンツを生成するには、まず、インストールした使用するモデルに基づいてモデル定義を作成する必要があります。たとえば、Gemma 2 をインストールした場合は、次のようにします。

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

次に、モデルのリファレンスを使用して Ollama サーバーにリクエストを送信できます。

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

log.Println(resp.Text())

詳しくは、コンテンツの生成をご覧ください。