ollama4j/docs/docs/intro.md
amithkoujalgi f114181fe2
Update documentation and refactor code to replace OllamaAPI with Ollama
- Replaced all instances of `OllamaAPI` with `Ollama` in documentation and code examples for consistency.
- Enhanced the configuration for handling broken markdown links in Docusaurus.
- Updated integration tests and example code snippets to reflect the new class structure.
2025-09-29 09:31:32 +05:30

148 lines
3.8 KiB
Markdown

---
sidebar_position: 1
title: Introduction
---
import LatestRelease from '@site/src/components/LatestRelease';
import AddToYourProject from '@site/src/components/AddToYourProject';
# Introduction
### 🦙 What is Ollama?
[Ollama](https://ollama.ai/) is an advanced AI tool that allows users to easily set up and run large language models
locally (in CPU and GPU
modes). With Ollama, users can leverage powerful language models such as Llama 2 and even customize and create their own
models.
### 👨‍💻 Why Ollama4j?
Ollama4j was built for the simple purpose of integrating Ollama with Java applications.
```mermaid
flowchart LR
o4j[Ollama4j]
o[Ollama Server]
o4j -->|Communicates with| o;
m[Models]
p[Your Java Project]
subgraph Your Java Environment
direction TB
p -->|Uses| o4j
end
subgraph Ollama Setup
direction TB
o -->|Manages| m
end
```
### Getting Started
#### What you'll need
- **[Ollama](https://ollama.ai/download)**
- **[Oracle JDK](https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html)** or
**[Open JDK](https://jdk.java.net/archive/)** 11.0 or above.
- **[Maven](https://maven.apache.org/download.cgi)**
#### Start Ollama server
The easiest way of getting started with Ollama server is with [Docker](https://docs.docker.com/get-started/overview/).
But if you choose to run the
Ollama server directly, **[download](https://ollama.ai/download)** the distribution of your choice
and follow the installation process.
#### With Docker
##### Run in CPU mode:
```bash
docker run -it -v ~/ollama:/root/.ollama -p 11434:11434 ollama/ollama
```
##### Run in GPU mode:
```bash
docker run -it --gpus=all -v ~/ollama:/root/.ollama -p 11434:11434 ollama/ollama
```
You can type this command into Command Prompt, Powershell, Terminal, or any other integrated
terminal of your code editor.
The command runs the Ollama server locally at **http://localhost:11434/**.
#### Setup your project
Add the dependency to your project's `pom.xml`.
<AddToYourProject/>
<div style={{ marginTop: '2rem', marginBottom: '2rem', fontSize: '1em', textAlign: 'left', display: 'flex', justifyContent: 'left'}}>
<LatestRelease showReleaseDate={true} style={{textAlign: 'left', fontWeight: 'normal'}}/>
</div>
Find the latest version of the library from [Maven Central Repository](https://central.sonatype.com/artifact/io.github.ollama4j/ollama4j).
You might want to include an implementation of [SL4J](https://www.slf4j.org/) logger in your `pom.xml` file. For
example,
Use `slf4j-jdk14` implementation:
```xml
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>2.0.9</version> <!--Replace with appropriate version-->
</dependency>
```
or use `logback-classic` implementation:
```xml
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.3.11</version> <!--Replace with appropriate version-->
</dependency>
```
or use other suitable implementations.
Create a new Java class in your project and add this code.
```java
import io.github.ollama4j.Ollama;
public class OllamaTest {
public static void main(String[] args) {
Ollama ollama = new Ollama();
boolean isOllamaServerReachable = ollama.ping();
System.out.println("Is Ollama server running: " + isOllamaServerReachable);
}
}
```
This uses the default Ollama host as `http://localhost:11434`.
Specify a different Ollama host that you want to connect to.
```java
import io.github.ollama4j.Ollama;
public class OllamaTest {
public static void main(String[] args) {
String host = "http://localhost:11434/";
Ollama ollama = new Ollama(host);
boolean isOllamaServerReachable = ollama.ping();
System.out.println("Is Ollama server running: " + isOllamaServerReachable);
}
}
```