Konfigurieren Sie einen generischen LLM-Connector (Large Language Model).

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 4 Minuten Lesedauer
  • Verbinden Sie ein externes LLM über einen generischen LLM-Connector mit dem Now Platform. Mit einem -Connector können Sie Ihre eigenen Aufforderungen schreiben, die an das LLM gesendet werden, und Ihre eigenen generativen KI-Fähigkeiten erstellen.

    Vorbereitungen

    Sie müssen API-Anmeldeinformationen für Ihr LLM konfigurieren, bevor Sie den Connector einrichten. Weitere Informationen finden Sie unter API-Anmeldeinformationen für generisches LLM konfigurieren.

    Erforderliche Rolle: Administrator

    Warum und wann dieser Vorgang ausgeführt wird

    Generative-KI-Controller bietet mehrere Basissystemverbindungen zu beliebten KI-Service Providern wie Azure OpenAI und Google Vertex. Möglicherweise möchten Sie jedoch ein Branchen-LLM, ein fallspezifisches LLM in Ihre anwenderdefinierten Workflows oder ein LLM integrieren, das den Datenverarbeitungsrichtlinien Ihrer Organisation entspricht.
    Hinweis:
    Generative-KI-Controller unterstützt nur die Textgenerierung.

    Prozedur

    1. Wechseln Sie im Navigationsfilter zur Tabelle „Generative KI-Modellkonfiguration“ [sys_generative_ai_model_config], indem Sie sys_generative_ai_model_config.listeingeben.
    2. Wählen Sie Neu.
    3. Geben Sie im Feld Modell den Namen des Modells ein.
      Wenn Sie Azure OpenAI verwenden, ist der Modellname der Bereitstellungsname Ihrer Ressource.
    4. Wählen Sie im Feld Anbieterdie Option Anwenderdefiniertes LLMaus.
    5. Wählen Sie im Feld Alias für Verbindungen und Anmeldeinformationen den Alias aus, den Sie beim Einrichten Ihrer Anmeldeinformationen erstellt haben.
      Wenn Sie Ihre API-Anmeldeinformationen noch nicht konfiguriert haben, erfahren Sie unter API-Anmeldeinformationen für ein generisches umfangreiches Sprachmodell konfigurieren, um zu erfahren, wie. Generatives KI-Modellkonfigurationsdatensatz, bei dem das Feld „Anbieter“ auf „Anwenderdefiniertes LLM“ und das Feld „Alias für Verbindungen und Anmeldeinformationen“ auf „My_Model_Alias“ festgelegt ist.
    6. Erstellen Sie die Modellkonfiguration, indem Sie Absendenwählen.
      Die Modellkonfiguration ist mit dem API-Schlüssel des externen Modells verknüpft.
    7. Wechseln Sie im Navigationsfilter zur Tabelle „Generative KI-Konfiguration“ [sys_generative_ai_config], indem Sie sys_generative_ai_config.listeingeben.
    8. Wählen Sie Neu.
    9. Wählen Sie das Listensuchsymbol ( Listensuchsymbol mit Lupe.) neben dem Feld Definition aus.
    10. Wählen Sie im Modal „Dokument auswählen“ eine Fähigkeit aus, die Sie mit dem Anbieter des anwenderdefinierten LLM konfigurieren möchten.
      Wenn Sie beispielsweise eine Zusammenfassungsfähigkeit konfigurieren, wählen Sie Summarize (Custom LLM) (Zusammenfassen (Anwenderdefiniertes LLM)).
    11. Wählen Sie OK, um Ihre Auswahl zu speichern und das Modal zu schließen.
    12. Wählen Sie im Feld Modell die Modellkonfiguration aus, die Sie in Schritt 6 erstellt haben.
      Nachdem Sie eine Definitionausgewählt haben, ändert sich das Feld Modell in ein Dropdown-Menü mit Optionen, die den Anbieter des anwenderdefinierten LLM verwenden. Die von Ihnen vorgenommene Modellkonfiguration sollte in dieser Liste angezeigt werden. Ist dies nicht der Fall, kehren Sie zu Schritt 1 zurück, und vergewissern Sie sich, dass bei Ihrer Modellkonfiguration das Feld Anbieter auf Custom LLMfestgelegt ist.
    13. Geben Sie im Feld Aufforderungsvorlage die Aufforderung für die Fähigkeit ein.
      Die Prompt-Vorlage ist die Anweisung, die an das LLM gesendet wird, um eine Fähigkeit auszuführen. Verwenden Sie zwei geschweifte Klammern um die Fähigkeitsattributnamen, um sie in die Prompt-Vorlage aufzunehmen. Wenn Sie beispielsweise eine Zusammenfassungsfähigkeit konfigurieren, könnte Ihre Eingabeaufforderungsvorlage „Folgendes für mich zusammenfassen“ in einem freundlichen und hilfsbereiten Ton lauten: {{textToSummarize}}. Um zu erfahren, welche Attribute für die Aufnahme in die Eingabeaufforderung verfügbar sind, wechseln Sie zur Tabelle „OneExtend-Fähigkeit“ [sys_one_extend_capability], suchen Sie den Datensatz für die Fähigkeit, die Sie konfigurieren, und sehen Sie sich die zugehörige Liste OneExtend-Fähigkeitsattribute an. Generative KI-Konfigurationsdatensatz mit ausgefüllten Feldern „Definition“, „Modell“ und „Aufforderungsvorlage“. Zusammenfassen des Fähigkeitsdatensatzes geöffnet mit hervorgehobener zugehöriger Liste „OneExtend-Fähigkeitsattribute“ und den identifizierten Attributen: error, errorCode, provider, response, status und textToSummarize. Unter Umständen müssen Sie mit verschiedenen Aufforderungen experimentieren, um herauszufinden, welche für Ihre Anwendungsfälle am besten geeignet ist.
    14. Erstellen Sie die neue Generative KI-Konfiguration, indem Sie Absendenauswählen.
    15. Wechseln Sie im Navigationsfilter zur Tabelle „Generative KI – Anwenderdefinierter LLM-Umwandler“ [sys_generative_ai_custom_llm_transformer], indem Sie sys_generative_ai_custom_llm_transformereingeben.
    16. Wählen Sie Neu.
    17. Schreiben Sie Umwandlerskripts.
      Damit Generative-KI-Controller das Format der Eingaben und Ausgaben Ihres anwenderdefinierten LLM versteht, müssen Sie Umwandlerskripts schreiben. Wenn Sie einen Transformatordatensatz erstellen, werden Code und Kommentare bereitgestellt, die Sie bei der Bearbeitung als Leitfaden verwenden können. Diese Skripts hängen von den erwarteten Anforderungs- und Antwortobjekten ab, die von Ihrem Modell interpretiert werden.

      Die Anforderungsstruktur Azure OpenAI sieht beispielsweise wie das folgende Skript aus:

      {"messages": [{"role":"user", "content":"Summarize the following text: <<content>>"}], "max_tokens": 800, "temperature": 0.7}
      Das Anforderungs-Umwandlerskript für diese Anforderungsstruktur ist das folgende Skript:
      (function(inputs) {
          /* write code here to construct the request body and any custom headers needed using the inputs object.
          inputs structure: {
              prompt_data: object,
              request_data: object
          } */
          var requestData = inputs.request_data;    
          var promptData = inputs.prompt_data;
          var prompt = promptData.prompt;
          var model = promptData.model;
      
          // construct body using the inputs
          var body = {
              messages: [{
              "role": "user",
              "content": prompt
              }],
              max_tokens: parseInt(promptData.max_tokens),
              temperature: parseInt(promptData.temperature)    
          };
      
          //construct headers using the inputs
          var headers = {};                        
          return {
              body: body,
              headers: headers
          };
      })(inputs);
      Die Antwortstruktur von Azure OpenAI sieht wie folgt aus:
      {
          "choices": [{
          "finish_reason": "stop",
          "index": 0,
          "message": {
              "content": "<<response>>",
              "role": "assistant"
              }
          }],
          "created": 1714994995,
          "id": "chatcmpl-9LqpXeLVXDAi6kciPfLeIDjmALeea",
          "model": "gpt-35-turbo-16k",
          "object": "chat.completion",
          "usage": {    
              "completion_tokens": 47,
              "prompt_tokens": 70,
              "total_tokens": 117
          }
      }
      Aufgrund dieser Antwortstruktur sieht das Antwort-Umwandlerskript wie folgt aus:
      (function(inputs) {
          /* write code here to transform the llm response into an array of text responses, using the inputs object
          inputs structure: {
              prompt_data: object,
              request_data: object,
              response_body: string,
              response_headers: string
          } */
          var requestData = inputs.request_data;
          var promptData = inputs.prompt_data;
          var responseBody = JSON.parse(inputs.response_body);
          gs.info("response : " + inputs.response_body);
          var responseTexts = [];
      
          // write code here to populate the responseTexts array.
          responseTexts.push(responseBody.choices[0].message.content);
      
          return responseTexts;
      
      })(inputs);
    18. Erstellen Sie die Umwandlerskripts, indem Sie Absendenwählen.

    Ergebnisse

    Ihr externes LLM ist mit Generative-KI-Controllerverbunden. Sie können den KI-Service Provider für generative KI-Fähigkeiten in Now Platformverwenden.

    Nächste Maßnahme

    Nachdem Sie das LLM verbunden haben, können Sie einen Anbieter für die generativen KI-Fähigkeiten von Generative-KI-Controllerfestlegen. Die Fähigkeiten lauten „Generische Aufforderung“, „Inhalt generieren“, „Stimmungsanalyse“ und „Zusammenfassen“. Weitere Informationen zur Auswahl eines Anbieters finden Sie unter Anbieter für eine generative KI-Fähigkeit festlegen.