ollama4j/docs/docs/apis-generate/custom-roles.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

1.4 KiB

sidebar_position
sidebar_position
9

Custom Roles

Allows to manage custom roles (apart from the base roles) for chat interactions with the models.

Particularly helpful when you would need to use different roles that the newer models support other than the base roles.

Base roles are SYSTEM, USER, ASSISTANT, TOOL.

Usage

Add new role

import io.github.ollama4j.Ollama;
import io.github.ollama4j.models.chat.OllamaChatMessageRole;

public class Main {

    public static void main(String[] args) {
        String host = "http://localhost:11434/";
        Ollama ollama = new Ollama(host);

        OllamaChatMessageRole customRole = ollama.addCustomRole("custom-role");
    }
}

List roles

import io.github.ollama4j.Ollama;
import io.github.ollama4j.models.chat.OllamaChatMessageRole;

public class Main {

    public static void main(String[] args) {
        String host = "http://localhost:11434/";
        Ollama ollama = new Ollama(host);

        List<OllamaChatMessageRole> roles = ollama.listRoles();
    }
}

Get role

import io.github.ollama4j.Ollama;
import io.github.ollama4j.models.chat.OllamaChatMessageRole;

public class Main {

    public static void main(String[] args) {
        String host = "http://localhost:11434/";
        Ollama ollama = new Ollama(host);

        List<OllamaChatMessageRole> roles = ollama.getRole("custom-role");
    }
}