Dieser Artikel beschreibt, wie man die Ollama Dieses Dokument soll Entwicklern helfen, sich schnell zurechtzufinden und die Möglichkeiten von Ollama voll auszuschöpfen. Sie können die Ollama-API direkt aus Ihrer Anwendung heraus aufrufen, oder Sie können Ollama von einer Spring AI-Komponente aus aufrufen.
I. Vorbereitung der Umwelt
Um die Ollama-API in Java zu verwenden, müssen Sie sicherstellen, dass Sie die folgende Umgebung und die folgenden Werkzeuge bereit haben:
- Java-Entwicklungskit (JDK) Installieren Sie JDK Version 1.8 oder höher.
- Bauwerkzeuge : wie z.B. Maven oder Gradle, für die Verwaltung von Projektabhängigkeiten.
- HTTP-Client-Bibliothek Wählen Sie eine geeignete HTTP-Client-Bibliothek, z. B. Apache HttpClient oder OkHttp.
II. direkte Verwendung von Ollama
Es gibt viele von Drittanbietern entwickelte Komponenten auf github, die es einfach machen, Ollama in Ihre Anwendung zu integrieren, hier ist ein Beispiel mit dem Asedem Zum Beispiel können die folgenden 3 Schritte befolgt werden (Maven wird hier für das Projektmanagement verwendet):
- Hinzufügen der ollama-Abhängigkeit in pom.xml
jitpack.io
https://jitpack.io
</repository
</repositories
<dependencies
com.github.Asedem
OllamaJavaAPI</artifactId
master-SNAPSHOT
</dependency
</dependencies
- Initialisierung von Ollama
// Standardmäßig wird eine Verbindung zu localhost:11434 hergestellt.
Ollama ollama = Ollama.initDefault();
// Für benutzerdefinierte Werte
Ollama ollama = Ollama.init("http://localhost", 11434);
- Ollama verwenden
- Dialoge
String model = "llama2:latest"; // Angabe des Modells
String prompt = "Warum ist der Himmel blau?" ; // Eingabeaufforderung angeben
GenerationResponse response = ollama.generate(new GenerationRequest(model, prompt)); // Ausdruck der generierten Antwort.
// Drucken Sie die generierte Antwort
System.out.println(response.response());
- Liste der lokalen Modelle
List models = ollama.listModels(); // Gibt eine Liste von Model-Objekten zurück.
- Anzeige von Modellinformationen
ModelInfo modelInfo = ollama.showInfo("ollama2:latest"); // Rückgabe ModelInfo-Objekt
- Replikationsmodelle
boolean success = ollama.copy("ollama2:latest", "ollama2-backup"); // gibt true zurück, wenn der Kopiervorgang erfolgreich war
- Modell löschen
boolean success = ollama.delete("ollama2-backup"); // true, wenn die Löschung erfolgreich war
Ollama mit Spring AI anrufen
Einführung in Spring AI
Spring AI ist ein Anwendungsframework, das für die KI-Entwicklung entwickelt wurde. Die wichtigsten Funktionen sind unten aufgeführt:
- API-Unterstützung für verschiedene KI-Anbieter: Spring AI bietet eine Reihe portabler APIs, die die Interaktion mit Chats, Text-zu-Bild- und eingebetteten Modellen von verschiedenen KI-Anbietern unterstützen.
- Synchrone und Streaming-API-Optionen: Das Framework unterstützt synchrone und Streaming-APIs und bietet Entwicklern flexible Interaktionsmethoden.
- Zugriff auf modellspezifische Funktionen: Ermöglicht Entwicklern den Zugriff auf modellspezifische Funktionen über Konfigurationsparameter und bietet somit eine genauere Kontrolle.
Verwendung von Spring AI
- Hinzufügen der Spring AI-Abhängigkeit in pom.xml
io.springboot.ai
spring-ai-ollama-spring-boot-starter
1.0.3</version
</dependency
</dependencies
Hinweis: Wenn Sie IDEA verwenden, um ein Projekt zu erstellen, können Sie die Abhängigkeiten direkt angeben, das System vervollständigt automatisch die pom.xml-Datei, Sie müssen sie nicht manuell ändern, wie in der folgenden Abbildung gezeigt:
- Fügen Sie die Konfiguration für Spring AI und Ollama in die Konfigurationsdatei Ihrer Spring Boot-Anwendung ein. Beispiel:
ai.
ollama.
base-url: http://localhost:11434
chat: ollama: base-url:
Optionen: ollama: base-url: chat.
Modell: llama3.1:latest
- Verwenden Sie Ollama zur Texterstellung oder für Dialoge:
Erstellen Sie zunächst einen Spring Boot-Controller, um die Ollama-API aufzurufen:
import jakarta.annotation.Resource;
import org.springframework.ai.chat.model.ChatResponse; import org.springframework.ai.chat.model.
importieren org.springframework.ai.chat.prompt.
import org.springframework.ai.ollama.OllamaChatModel; import org.springframework.ai.ollama.
importieren org.springframework.ai.ollama.api.OllamaOptions; importieren org.springframework.ai.ollama.api.
importieren org.springframework.web.bind.annotation.RequestMapping; importieren org.springframework.web.bind.annotation.
importieren org.springframework.web.bind.annotation.RequestParam; importieren org.springframework.web.bind.annotation.
import org.springframework.web.bind.annotation.RestController; @RestController; import org.springframework.web.bind.annotation.
@RestController
public class OllamaController {
@Ressource
private OllamaChatModel ollamaChatModel; @RequestMapping(value); ollamaChatModel; @RestController
@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") // Angabe des zu verwendenden großen Modells
.withTemperature(0.5F)))));
System.out.println(chatResponse.getResult().getOutput().getContent());
return chatResponse.getResult().getOutput().getContent();
}
}
Starten Sie dann das Projekt und geben Sie die URL in Ihrem Browser ein http://localhost:8080/ai/ollama?msg= "Stichwort"
Das Ergebnis ist unten dargestellt:
Referenzdokument