Blog

xef.ai: Moderne KI für Scala und Kotlin

Alejandro Serrano Mena

Alejandro Serrano Mena

Aktualisiert Oktober 15, 2025
4 Minuten

In den letzten Monaten hat sich die Welt der modernen KI drastisch verändert. Die Auswirkungen der allgemeinen Verfügbarkeit von großen Sprachmodellen wie ChatGPT, Bard und Dolly können kaum überschätzt werden. Diese ergänzen lediglich bestehende Techniken zur Bilderzeugung, Klassifizierung, Spracherkennung und viele andere. Zum Zeitpunkt der Abfassung dieses Beitrags verfügt Hugging Face Hub, das führende Repository für Modelle, über mehr als 200.000 dieser Modelle! Die Herausforderung besteht darin, diese Techniken in ein breiteres System zu integrieren. KI ist kein Ziel an sich, sondern ein Werkzeug auf Ihrem Weg, Ihren Kunden das beste Erlebnis zu bieten.

Die Möglichkeiten sind endlos: Fassen Sie die wichtigsten Ereignisse im Konto des Kunden zusammen. Generieren Sie Abfragen an die Datenbank anhand einer Beschreibung in natürlicher Sprache. Helfen Sie dem Kundendienst, eine Abfolge von Schritten zur Lösung eines Problems anzugeben. Identifizieren Sie die wichtigen Teile einer PDF-Rechnung. Das sind Aufgaben, bei denen KI schon jetzt einen Beitrag leisten kann .

Bei Xebia sind wir begierig darauf, die Möglichkeiten dieser neuen Welt zu erkunden. Das Ökosystem ist jedoch ziemlich fragmentiert und erfordert in der Regel eine andere Bibliothek für jeden einzelnen Dienst. Hier kommt xef.ai ins Spiel: ein Projekt, dessen Ziel es ist, eine bequeme Schnittstelle zu diesen modernen KI-Techniken anzubieten, damit Ihr Team schnell von Ideen zu Proofs of Concepts übergehen und KI in Ihre Geschäftsprozesse integrieren kann. Unsere erste Version zielt auf Kotlin und Scala ab, weitere Sprachen werden in Zukunft folgen.

xef.ai Grundierung

Um ein konkreteres Beispiel zu geben, ist dies der gesamte Code, der für die Abfrage von OpenAIs ChatGPT erforderlich ist. Der ai Block initialisiert alle erforderlichen Verbindungen, so dass Sie direkt eine Nachricht abfragen können.

fun whatToWear(weather: String): List<String> = ai {
promptMessage("Knowing that today is $weather, what clothes should I wear?")
}.getOrThrow()

Sprachmodelle sind sehr leistungsfähig, aber es fehlt ihnen an Wissen über aktuelle Ereignisse oder andere Informationen innerhalb Ihres Systems. Um die besten Ergebnisse zu erzielen, müssen Ihre KI-Pipelines andere Informationen kennen. Mit xef.ai können Sie den Kontext jederzeit um die erforderlichen Informationen erweitern, die bei nachfolgenden Abfragen berücksichtigt werden. Hier sehen Sie eine Variante des obigen Codes, bei der eine normale Internetsuche durchgeführt wird, um die Wettervorhersage zu finden, bevor sie an die KI weitergegeben wird.

fun whatToWear(place: String): List<String> = ai {
context(search("Weather in $place")) {
promptMessage("Knowing this forecast, what clothes should I wear?")
}
}

Prompt-Engineering, d.h. wie man die besten Abfragen schreibt, um das gewünschte Ergebnis zu erhalten, ist ein noch junges Gebiet. Websites wie Prompting lernen bieten nützliche Tipps. Mit dem Komfort von xef.ai können Sie Ihre ganze Energie auf die Verbesserung dieser Prompts verwenden, anstatt sich mit Tonnen von Service-APIs herumzuschlagen.

Unterstützung für Deserialisierung

Eines der Probleme von Sprachmodellen ist, dass sie ihre Antworten im Klartext geben. Daher ist in der Regel ein zusätzlicher Schritt erforderlich, um diese Antwort in einen Wert oder ein Objekt in der von Ihrem System benötigten Form umzuwandeln. xef.ai geht dieses Problem an und bietet eine direkte Deserialisierung von Antworten in Ihre eigenen Klassen.

@Serializable data class Book(val title: String, val author: String)

fun books(topic: String): List<Book> = ai {
prompt("Give me a selection of books about $topic")
}.getOrThrow()

Derzeit erstellen wir spezielle Prompts, die Sprachmodelle dazu bringen, eine strukturierte Ausgabe zu produzieren, die wir dann zu parsen versuchen. Das funktioniert zwar meistens, aber wir erforschen auch leistungsfähigere Ansätze wie ReLLM und jsonformer.

Zukünftige Funktionen

Unser Ziel mit xef.ai ist es, eine Drehscheibe für moderne KI im JVM-Ökosystem zu werden. Wir lernen von Schwesterprojekten wie LangChain, aber wir versuchen, eine minimale und idiomatische Schnittstelle beizubehalten.

Wir haben mit der Integration von Large Language Models wie ChatGPT und Dolly begonnen, aber wir haben vor, auch andere Bereiche wie Bilderzeugung, Übersetzung oder Spracherkennung einzubeziehen. xef.ai ist Open Source, daher freuen wir uns über jedes Feedback, jedes Problem und jede Funktion, die Sie sich wünschen.

Weitere Informationen über xef.ai finden Sie in dieser Präsentation von Raúl Raja von den Scala Days 2023 in Seattle, Washington.

Viel Spaß beim Hacken mit moderner KI!

Verfasst von

Alejandro Serrano Mena

Contact

Let’s discuss how we can support your journey.