Ollama プラグイン

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

前提条件

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

Ollama CLI を使用して、目的のモデルをダウンロードします。例:

ollama pull gemma2

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

構成

このプラグインを使用するには、ollama.Init() を呼び出して、その際に Ollama サーバーのアドレスを指定します。

import "github.com/firebase/genkit/go/plugins/ollama"
// Init with Ollama's default local address.
if err := ollama.Init(ctx, &ollama.Config{
	ServerAddress: "http://127.0.0.1:11434",
}); err != nil {
	return err
}

用途

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

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

次に、モデル参照を使用して Ollama サーバーにリクエストを送信できます。

text, err := ai.GenerateText(ctx, model, ai.WithTextPrompt("Tell me a joke."))
if err != nil {
	return err
}

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