Zum Inhalt springen

FAQ

Zuletzt aktualisiert am

Wir möchten unseren Kunden die Informationen geben, die sie benötigen, um das Beste aus unserem STACKIT AI Model Serving herauszuholen. Dieser FAQ-Bereich beantwortet häufig gestellte Fragen. Dies hilft Ihnen, schnell Lösungen zu finden und Ihre Erfahrung zu verbessern. Wir empfehlen Ihnen, diese FAQ zu prüfen, bevor Sie unser Support-Team kontaktieren, da Sie hier möglicherweise bereits Ihre Antwort finden.

  • Allgemein

    Welche Clients können mit STACKIT AI Model Serving verwendet werden?

    STACKIT AI Model Serving bietet eine OpenAI-kompatible API. Daher lässt sich der Dienst gut in die meisten OpenAI-kompatiblen Clients integrieren. Um Modelle von STACKIT AI Model Serving anstelle von OpenAI zu verwenden, müssen die folgenden Konfigurationen entsprechend angepasst werden:

    • API-Basis-URL: https://api.openai-compat.model-serving.eu01.onstackit.cloud/v1
    • API-Schlüssel / Authentifizierungstoken / Secret Key: STACKIT AI Model Serving Auth Token (Informationen zum Erstellen eines STACKIT AI Model Serving Auth Token im STACKIT Portal UI finden Sie unter Erste Schritte mit der STACKIT Portal UI)

    Wohin gehen meine Daten?

    Wir speichern keine Kundendaten aus den Anfragen. Ihre Daten gehören ausschließlich Ihnen und werden von uns weder gespeichert noch verwendet. Wir trainieren keine Modelle mit Ihren Daten.

    Welche Daten werden zum Trainieren der LLMs verwendet?

    Wir stellen nur Open-Source-Modelle bereit. Diese Modelle sind auf Hugging Face öffentlich verfügbar, zusammen mit ihren individuellen Modellkarten, die beispielsweise Informationen zu Trainingsdaten, Trainingsverfahren, Modellarchitektur und vielen weiteren Details enthalten. Wir trainieren diese Modelle mit keinen Daten, noch speichern wir Kundendaten.

    Warum wird die Ausgabe des Modells abgeschnitten und wie erhalte ich die vollständige Antwort?

    Alle LLM-Modelle haben ein bestimmtes Limit an generierten Token. Wenn ein Modell dieses Limit erreicht, bevor die Generierung abgeschlossen ist, wird die Antwort abgeschnitten.

    Sie können diesen Zustand identifizieren, indem Sie das Feld finish_reason in der API-Antwort überprüfen. Wenn dieses auf "length" gesetzt ist, wurde die Generierung aufgrund der Token-Obergrenze gestoppt.

    Um die vollständige Ausgabe abzurufen, implementieren Sie die folgende Logik:

    1. Auf Kürzung prüfen: Überwachen Sie die Antwort auf finish_reason: "length".
    2. Einen Fortsetzungs-Prompt senden: Senden Sie den Chatverlauf – einschließlich der unvollständigen Antwort – zurück an das Modell.
    3. Vervollständigung auslösen: Verwenden Sie eine Prompt-Anweisung wie “continue”.

    Das Modell setzt die Generierung dann an der Stelle fort, an der sie unterbrochen wurde. Dieser iterative Ansatz stellt sicher, dass Sie vollständige Antworten für komplexe Argumentations-Aufgaben erfassen können. Diese können die Limits einer einzelnen Anfrage überschreiten. Dieser Ansatz erfordert unter Umständen ein auf den Anwendungsfall spezifisches Fine-Tuning, um die besten Ergebnisse zu erzielen.

    Welche Modelle werden angeboten?

    Mit dem STACKIT AI Model Serving ist es unser Ziel, unseren Kunden hochmoderne LLMs bereitzustellen. Die angebotenen Modelle werden sorgfältig ausgewählt. Eine aktuelle Tabelle der Shared Models finden Sie unter Erste Schritte mit Shared Models. Wir konzentrieren uns auf die besten Open-Source-Modelle von OpenAI und pflegen dabei ein stabiles Portfolio. Falls Sie zusätzliche Modelle benötigen, die das Shared Models-Angebot überschreiten, erstellen Sie bitte eine Serviceanfrage im STACKIT Help Center.

    Ich benötige ein bestimmtes Modell. Können Sie es für mich bereitstellen?

    Falls unser Modell-Portfolio Ihre Anforderungen nicht abdeckt, erstellen Sie bitte eine Serviceanfrage im STACKIT Help Center; wir freuen uns, von Ihren Anforderungen zu hören und eine Lösung zu finden, die Ihre Bedürfnisse abdeckt.

    Kann ich mehrere Modelle mit einem einzigen Authentifizierungstoken verwenden? / Benötige ich unterschiedliche Authentifizierungstoken für unterschiedliche Modelltypen (z. B. Embedding-Modelle, Chat-Modelle)?

    Ein Authentifizierungstoken, bekannt als STACKIT AI Model Serving Auth Token, ist für alle Shared Models, einschließlich aller Modelltypen, gültig. Ein einziges STACKIT AI Model Serving Auth Token kann zum Erstellen von Embeddings, zum Testen und zum Beantworten von Fragen in der Chat Completions API verwendet werden.

    Warum antwortet der Nextcloud Assistant erst nach circa 5 Minuten?

    Der Nextcloud Assistant arbeitet mit Hintergrundaufgaben in Nextcloud. Standardmäßig werden diese Aufgaben alle 5 Minuten übernommen. Hinweise zur Leistungsverbesserung finden Sie in der Offiziellen Nextcloud-Dokumentation.

    Warum wird meine Anfrage mit einer leeren Antwort abgelehnt?

    Unterstriche in Headern entsprechen nicht den Best Practices, weshalb Anfragen mit Unterstrichen in den Header-Feldern abgelehnt werden. Überprüfen Sie Ihre Header und stellen Sie sicher, dass Sie keine Header senden, die Unterstriche („_”) enthalten.

  • Fehler

    Warum funktioniert mein Authentifizierungstoken (alias API-Schlüssel) nicht?

    Um das STACKIT AI Model Serving zu nutzen, benötigen Sie ein gültiges STACKIT AI Model Serving Auth Token. Befolgen Sie unsere Anleitung Erste Schritte mit der STACKIT Portal UI, um ein gültiges STACKIT AI Model Serving Auth Token für Shared Models zu erstellen. Beachten Sie, dass wir zwischen dem allgemeinen STACKIT Authentifizierungstoken und dem produktspezifischen STACKIT AI Model Serving Auth Token unterscheiden, das mit der OpenAI-kompatiblen API verwendet wird. Details dazu finden Sie auch in den Anleitungen Auth Token verwalten und Modelle verwenden.

    Wie kann ich einen „404 Not Found“-Fehler von der API beheben?

    Dieser Fehler tritt auf, wenn eine angeforderte Ressource nicht gefunden werden kann. Dies liegt höchstwahrscheinlich an einem falschen „model“-Parameter im Anfragetext. Beachten Sie, dass alle unsere Modelle exklusiv für ihren Modelltyp (z. B. Chat, Embedding) sind. Das bedeutet, ein Chat-Modell kann nicht zur Berechnung von Embeddings verwendet werden und umgekehrt. Eine Liste der verfügbaren Modelle und ihrer Typen finden Sie in der Dokumentation Erste Schritte mit Shared Models.

    Meine Anfrage führt zu einem „LengthFinishReasonError“, insbesondere bei der Arbeit mit strukturierter Ausgabe.

    Dieses Problem kann durch Anpassen des Parameters frequency_penalty gelöst werden. Ein Wert von 0,7 oder höher hat sich als ausreichend erwiesen.

  • Bekannte Probleme

    Unerwarteter Tool-Aufruf bei leerem `tools`-Parameter

    Wir haben ein inkonsistentes Verhalten bei bestimmten Llama-basierten Modellen beobachtet, wenn der Parameter tools im Request-Body vorhanden ist, aber als leeres Array ("tools": []) bereitgestellt wird. Im Gegensatz zum erwarteten OpenAI-kompatiblen Verhalten – bei dem eine leere Tool-Liste ignoriert werden sollte – interpretieren diese Modelle das Vorhandensein des Parameters als Signal, in den „Tool-Calling-Modus“ zu wechseln. Infolgedessen ignoriert das Modell unter Umständen den Prompt in natürlicher Sprache und generiert stattdessen einen halluzinierten JSON-Funktionsaufruf.

    Dieses Verhalten betrifft derzeit die folgenden für Tool-Calling aktivierten Modelle:

    • neuralmagic/Meta-Llama-3.1-8B-Instruct-FP8
    • cortecs/Llama-3.3-70B-Instruct-FP8-Dynamic

    Um halluzinierte Tool-Aufrufe zu vermeiden, senden Sie den Parameter tools nicht mit einer leeren Liste. Wenn Ihre Client-Logik Requests dynamisch erstellt, stellen Sie sicher, dass der Key tools vollständig aus dem JSON-Body weggelassen wird, wenn keine Tools verfügbar sind, anstatt [] oder null zu übergeben.

    Das Senden eines leeren Arrays zwingt das Modell dazu, einen Funktionsaufruf zu versuchen.

    payload = {
    "model": "cortecs/Llama-3.3-70B-Instruct-FP8-Dynamic",
    "messages": [{"role": "user", "content": "What is the capital of Germany?"}],
    "tools": [] # Dies verursacht das Problem
    }