Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

Usando a API Ollama em Java

Este artigo descreve como usar o Ollama Este documento foi elaborado para ajudar os desenvolvedores a se familiarizarem rapidamente e aproveitarem ao máximo os recursos do Ollama. Você pode chamar a API do Ollama diretamente de dentro do seu aplicativo, ou pode chamar o Ollama a partir de componentes Spring AI.

 

I. Preparação ambiental

Para usar a API Ollama em Java, certifique-se de que você tenha o ambiente e as ferramentas a seguir prontos:

  • Kit de desenvolvimento Java (JDK) Instale o JDK versão 1.8 ou posterior.
  • Ferramentas de construção como o Maven ou o Gradle, para o gerenciamento de dependências do projeto.
  • Biblioteca do cliente HTTP Escolha uma biblioteca de cliente HTTP adequada, como Apache HttpClient ou OkHttp.

 

II. uso direto da Ollama

Há muitos componentes desenvolvidos por terceiros no github que facilitam a integração do Ollama em seu aplicativo. Asedem Por exemplo, as três etapas a seguir podem ser seguidas (o maven é usado aqui para o gerenciamento de projetos):

  1. Adicionar a dependência do ollama no pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.Asedem</groupId>
<artifactId>OllamaJavaAPI</artifactId>
<version>master-SNAPSHOT</version>
</dependency>
</dependencies>
  1. Inicialização do Ollama
// 默认情况下,它将连接到 localhost:11434
Ollama ollama = Ollama.initDefault();
// 对于自定义值
Ollama ollama = Ollama.init("http://localhost", 11434);
  1. Usando Ollama
  • diálogos
String model = "llama2:latest"; // 指定模型
String prompt = "为什么天空是蓝色的?"; // 提供提示
GenerationResponse response = ollama.generate(new GenerationRequest(model, prompt));
// 打印生成的响应
System.out.println(response.response());
  • Lista de modelos locais
List<Model> models = ollama.listModels(); // 返回 Model 对象的列表
  • Exibição de informações do modelo
ModelInfo modelInfo = ollama.showInfo("llama2:latest"); // 返回 ModelInfo 对象
  • Modelos de replicação
boolean success = ollama.copy("llama2:latest", "llama2-backup"); // 如果复制过程成功返回 true
  • Excluir modelo
boolean success = ollama.delete("llama2-backup"); // 如果删除成功返回 true

 

Chamando o Ollama com o Spring AI

Introdução ao Spring AI

O Spring AI é uma estrutura de aplicativos projetada para engenharia de IA. Os principais recursos estão listados abaixo:

  • Suporte a APIs entre provedores de IA: o Spring AI oferece um conjunto portátil de APIs que suportam a interação com bate-papo, texto para imagem e modelos incorporados de vários provedores de serviços de IA.
  • Opções de API síncronas e de streaming: a estrutura oferece suporte a APIs síncronas e de streaming, proporcionando aos desenvolvedores métodos de interação flexíveis.
  • Acesso a funções específicas do modelo: permite que os desenvolvedores acessem funções específicas do modelo por meio de parâmetros de configuração, proporcionando um controle mais granular.

Usando o Spring AI

  1. Adicionar a dependência do Spring AI no pom.xml
<dependencies>
<dependency>
<groupId>io.springboot.ai</groupId>
<artifactld>spring-ai-ollama-spring-boot-starter</artifactld>
<version>1.0.3</version>
</dependency>
</dependencies>

 


Observação: ao usar o IDEA para criar um projeto, você pode especificar diretamente as dependências, o sistema completa automaticamente o arquivo pom.xml, não é necessário modificá-lo manualmente, conforme mostrado na figura a seguir:

Usando a API Ollama em Java-1

 

  1. Adicione a configuração do Spring AI e do Ollama ao arquivo de configuração do seu aplicativo Spring Boot. Exemplo:
ai:
ollama:
base-url: http://localhost:11434
chat:
options:
model: llama3.1:latest
  1. Use o Ollama para geração de texto ou diálogo:

Primeiro, crie um controlador do Spring Boot para chamar a API do Ollama:

import jakarta.annotation.Resource;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.ai.ollama.api.OllamaOptions;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class OllamaController {
@Resource
private OllamaChatModel ollamaChatModel;
@RequestMapping(value = "/ai/ollama")
public Object ollama(@RequestParam(value = "msg")String msg){
ChatResponse chatResponse=ollamaChatModel.call(new Prompt(msg, OllamaOptions.create()
.withModel("llama3.1:latest")//指定使用哪个大模型
.withTemperature(0.5F)));
System.out.println(chatResponse.getResult().getOutput().getContent());
return chatResponse.getResult().getOutput().getContent();
}
}

Em seguida, execute o projeto e digite o URL em seu navegador http://localhost:8080/ai/ollama?msg="提示词" O resultado é mostrado abaixo:

Usando a API Ollama em Java-2

 

documento de referência

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Usando a API Ollama em Java
pt_BRPortuguês do Brasil