Ollama
Maven 依存関係
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-ollama</artifactId>
<version>1.18.1</version>
</dependency>
API
OllamaEmbeddingModel
使い方
EmbeddingModel embeddingModel = OllamaEmbeddingModel.builder()
.baseUrl("http://localhost:11434")
.modelName("all-minilm")
.build();
Response<Embedding> response = embeddingModel.embed("Hello, world!");
Embedding embedding = response.content();
リクエスト/レスポンス API と可観測性
OllamaEmbeddingModel は便利メソッドに加え embed(EmbeddingRequest) もサポートします。Ollama の埋め込み API はテキストのみのため、入力タイプや画像入力を設定したリクエストは UnsupportedFeatureException で即座に失敗します。トークン使用量(prompt_eval_count)はレスポンスのメタデータに報告されます。
Ollama のオプション出力 dimensions はモデル依存(出力サイズ縮小をサポートするモデルのみ)のため、呼び出しごとのパラメータではなく、ビルダーの .dimensions(...) で設定します。
listeners を付けてリクエスト・レスポンス・エラーを観測できます:
EmbeddingModel embeddingModel = OllamaEmbeddingModel.builder()
.baseUrl("http://localhost:11434")
.modelName("all-minilm")
.listeners(List.of(myEmbeddingModelListener))
.build();