Das Modell-Gateway programmgesteuert einrichten

Speichern Sie die Konfigurationsdetails für verschiedene Modellanbieter unter IBM Cloud Secrets Manager und fügen Sie anschließend Modelle über eine API hinzu, die mit OpenAI kompatibel ist.

Vorbereitende Schritte

  • Erstellen Sie Anmeldedaten für die Authentifizierung bei den APIs von „ watsonx.ai “. Weitere Informationen finden Sie unter „Erstellen eines Bearer-Tokens “.
  • Besorgen Sie sich die Anmeldedaten für jeden unterstützten Modellanbieter, den Sie nutzen möchten.
  • Rufe die Liste der verfügbaren Modellanbieter und deren UUIDs ab. Weitere Informationen finden Sie unter „Anbieter und Modelle auflisten “.

Vorgehensweise

  1. Definieren und erstellen Sie im Tresor unter IBMSoftware Hub ein Geheimnis für einen Modellanbieter, den Sie konfigurieren möchten. Wenn Sie einen externen Tresor verwenden, geben Sie beim Erstellen des Secrets die Argumente für den Modellanbieter an. Weitere Informationen finden Sie unter „Verwalten von Geheimnissen und Tresoren “.

    Die folgende Tabelle zeigt die Konfigurationsanforderungen für jeden unterstützten Modellanbieter. Weitere Informationen finden Sie in der Inferenzdokumentation des jeweiligen Anbieters.

    Tabelle 1. Schlüssel der unterstützten Modellanbieter, die für die Einrichtung ihrer Geheimnisse benötigt werden
    Providername Erforderliche Argumente Optionale Argumente Hinweise
    OpenAI apikey base_url
    IBM watsonx.ai base_url apikey
    project_id
    space_id
    auth_url
    api_version
    space_id Unterstützt project_id die Authentifizierung pro Anfrage über Header (X-IBM-Project-Id, X-IBM-Space-Id)
    Azure OpenAI apikey
    resource_name
    api_version
    subscription_id
    resource_group_name
    account_name
    api_version Standardmäßig 2024-10-21; Abonnement/Ressourcengruppe/Konto für die Modellauflistung erforderlich
    Anthropic apikey
    AWS Bedrock access_key_id
    secret_access_key
    region
    session_token
    base_url
    Cerebras apikey
    Cohere apikey
    Groq apikey
    Mistral apikey
    NVIDIA NIM apikey
    Ollama host keep_alive
    clean_on_close
    Selbst gehostete/lokale Bereitstellung; keine Authentifizierung; verwendet ein benutzerdefiniertes Ollama-API-Format (nicht OpenAI-compatible ); keep_alive Standardwert: 5 Minuten
    xAI apikey
    Google Gemini apikey

    Vault_URNSetzen Sie die Umgebungsvariable. Sie können den Vault_URN auf der Seite „Administration > Konfigurationen und Einstellungen > Tresore und Geheimnisse“ kopieren, indem Sie auf das Kop iersymbol Symbol „Kopieren“ neben dem Namen Ihres Geheimnisses klicken. Siehe zum Beispiel den folgenden Befehl:

    export Vault_URN="<user-id>:<secret-name>"
    
  2. Führen Sie die folgende REST-API-Anfrage aus, um einen Modellanbieter zu konfigurieren:

      curl -sS https://cpd-<namespace-name>.apps.<OCP-domain>/ml/gateway/v1/providers/<provider> \
        -H "Authorization: Bearer ${TOKEN}" \
        -H "Content-Type: application/json" \
        -d "$(jq -n \
          --arg resource "${Vault_URN}" \
          --arg name "<custom-name-for-provider>" \
          '{name: $name, data_reference: {resource: $resource}}')"
    

    Wenn der interne Tresor aktiviert ist, können Sie Anmeldedaten auch direkt konfigurieren, indem Sie den folgenden Befehl ausführen:

      curl --request POST \
        --url https://cpd-<namespace-name>.apps.<OCP-domain>/ml/gateway/v1/providers/<provider>  \
        -H 'Authorization: Bearer ${TOKEN}' \
        -H 'Content-Type: application/json' \
        --data '{
        "data": {
          "apikey": "<model-provider-api-key>"
        },
        "name": "<custom-name-for-model-provider>"
      }'
    
  3. Nachdem ein Modellanbieter hinzugefügt wurde, können Sie Modelle dieses Anbieters hinzufügen, indem Sie in der Anfrage die UUID des Anbieters und die ID des Modells angeben. Die Modell-ID muss eine bereits vorhandene eindeutige Kennung sein, die vom Anbieter erkannt wird. Da einige Modelle von mehreren Anbietern bereitgestellt werden, können Sie Modell-Aliase verwenden – das sind benutzerdefinierte Namen, die auf Modelle verweisen, anstatt deren Modell-IDs zu verwenden. Siehe zum Beispiel den folgenden Befehl:

    curl -X POST "https://cpd-<namespace-name>.apps.<OCP-domain>/ml/gateway/v1/providers/${PROVIDER_UUID}/models" \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer ${TOKEN}" \
      -d '{ "alias": "<custom-name-for-model>", "id": "<model_id>"}'
    

    Weitere Informationen zu den einzelnen unterstützten Modellanbietern finden Sie in der API-Referenzdokumentation zu „ watsonx.ai “.

Weitere Schritte

Sie können nun Anfragen über das Modell-Gateway an Modelle senden. Weitere Informationen finden Sie unter „Inferenz von Gateway-Modellen “. Sie können außerdem bestehende Verbindungen und Modelle verwalten, Lastenausgleich aktivieren, Zugriffsrichtlinien erstellen und Ratenbegrenzungen festlegen.