ollama4j/ollama4j
A simple Java library for interacting with Ollama server.
Ollama4j – Ollama LLM 服务器的 Java 客户端
What it is – 一个纯 Java 库,用于与 Ollama 服务器(开源、本地运行的 LLM 运行时)进行通信。它让 Java 应用程序能够生成文本、进行对话会话、调用工具、处理嵌入向量,甚至在底层模型支持视觉功能时处理图像。
Key capabilities
Text generation – 单次
generate调用,可选的流式输出,以及类型安全的选项构建器。Chat – 具备角色处理和“思考”模式(用于思维链风格的输出)的多轮对话。
Tool/function calling – 通过注解 Java 方法来将其暴露为 LLM 可调用的工具;同时也支持 MCP 协议以使用外部工具。
Multimodal – 将图像作为输入发送给具备视觉能力的模型。
Embeddings – 为任意文本获取向量嵌入。
Async fire‑and‑forget generation – 异步发送请求而不等待完整响应。
Model management – 列出、拉取、创建、删除以及检查 Ollama 服务器上的模型。
Server utilities – 测试伺服器连通性 (ping) 并查询进程状态。
Authentication – 基础认证 (basic auth) 或 bearer token。
Timeouts & logging – 可配置的网络超时和请求/响应钩子 (hooks)。
Metrics – 可选的 Prometheus 指标导出器,用于记录请求次数、延迟和模型使用情况(测试版)。
How it works – 该库是一个围绕 Ollama REST API 的轻量级 HTTP 封装。您的 Java 代码通过 Maven Central、GitHub Packages 或 Gradle 添加 ollama4j 依赖,创建一个指向本地服务器(例如 http://localhost:11434)的 Ollama 客户端,然后调用库提供的高层级方法。所有通信均通过标准 HTTP,因此任何 Ollama 服务器版本 0.11.10+ 均可使用。
Getting started
<!-- Maven example -->
<dependency>
<groupId>io.github.ollama4j</groupId>
<artifactId>ollama4j</artifactId>
<version>/* latest release */</version>
</dependency>
// Gradle example
implementation 'io.github.ollama4j:ollama4j:/* latest release */'
Ollama ollama = new Ollama("http://localhost:11434");
GenerateResponse resp = ollama.generate("phi", "Explain quantum tunnelling.");
System.out.println(resp.getResponse());
The README 链接到另一个 ollama4j‑examples 仓库,用于获取完整的代码片段。
Who’s using it – Datafaker、Vaadin UI 测试器、Minecraft 插件/模组、Spring‑Boot Web UI、Jenkins CLI 工具以及其他几个开源项目。
Development & contribution – 项目使用 make 快捷方式进行开发环境搭建、构建和测试(单元测试在本地运行;集成测试通过 Testcontainers 启动 Ollama Docker 容器)。CI 运行单元/集成测试、代码覆盖率和 Sonar 质量门禁。欢迎通过 GitHub issues、PRs 和 discussions 提交贡献。
Where to learn more – 完整的 API 文档、使用指南和版本发布都在项目网站 (https://ollama4j.github.io/ollama4j/) 和 GitHub 仓库。
相关
- 项目
- 项目
- 项目
- Dispatch
- 项目