Complemento Ollama

El complemento Ollama proporciona interfaces para cualquiera de los LLM locales compatibles con Ollama:

Requisitos previos

Este complemento requiere que primero instales y ejecutes el servidor de Ollama. Puedes seguir las instrucciones que se indican en la página para descargar Ollama. .

Usa la CLI de Ollama para descargar los modelos que te interesan. Por ejemplo:

ollama pull gemma2

Para el desarrollo, puedes ejecutar Ollama en tu máquina de desarrollo. Las spps implementadas por lo general ejecutan Ollama en una máquina diferente acelerada por GPU desde el backend de la app que ejecuta Genkit.

Configuración

Para usar este complemento, llama a ollama.Init() y especifica la dirección de tu servidor de 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
}

Uso

Para generar contenido, primero debes crear una definición de modelo basada en el modelo que instalaste y quieres usar. Por ejemplo, si instalaste Gemma 2:

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

Luego, puedes usar la referencia del modelo para enviar solicitudes al servidor de Ollama:

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

Consulta Generación de contenido para obtener más información.