class

LLM::OllamaAdapter

Inherits LLM::Adapter < Reference < Object

Adapter for Ollama (LLM::Ollama) with optional context reuse.

Constructors

new(client : LLM::Ollama)
Source

Class methods

flatten_messages(messages : Messages) : Tuple(String | Nil, String)

Promoted to a class-level pure function so the flattening rule (system messages joined with \n\n, non-system/non-user roles dropped, nil system when no system messages were present) is unit-testable without standing up a real Ollama client.

Source

Instance methods

client
Source
request(prompt : String, format : String = "json") : String

Send a single prompt and get a response as a String.

Source
request_messages(messages : Messages, format : String = "json") : String

Send chat-style messages (system/user) and get a response as a String.

Source
request_with_context(system : String | Nil, user : String, format : String = "json", cache_key : String | Nil = nil) : String

Context-aware request. Adapters that support provider-side context can reuse it using a cache_key. Default implementation falls back to request_messages without context reuse.

Source
supports_context?

Whether this adapter supports server-side KV context reuse across calls.

Source