Плагин Оллама

Плагин Ollama предоставляет интерфейсы для любого локального LLM, поддерживаемого Ollama .

Предварительные условия

Этот плагин требует, чтобы вы сначала установили и запустили сервер Ollama. Вы можете следовать инструкциям на странице загрузки Ollama .

Используйте интерфейс командной строки Ollama для загрузки интересующих вас моделей. Например:

ollama pull gemma2

Для разработки вы можете запустить Ollama на своей машине разработки. Развернутые приложения обычно запускают Ollama на другом компьютере с ускорением графического процессора, отличном от серверной части приложения, на которой работает Genkit.

Конфигурация

Чтобы использовать этот плагин, вызовите ollama.Init() , указав адрес вашего сервера Ollama:

import "github.com/firebase/genkit/go/plugins/ollama"
// Init with Ollama's default local address.
if err := ollama.Init(ctx, "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:

genRes, err := model.Generate(ctx, ai.NewGenerateRequest(
    nil, ai.NewUserTextMessage("Tell me a joke.")), nil)
if err != nil {
    return err
}

Дополнительную информацию см. в разделе Создание контента .