messages-Feld, und um eine fortlaufende Konversation abzuschließen, müssen wir den gesamten Kontextverlauf übermitteln und gleichzeitig das Problem der Token-Übergrenze behandeln.
Die von AceDataCloud bereitgestellte AI Frage-Antwort-API wurde für diese Situation optimiert. Sie kapselt die Implementierung fortlaufender Gespräche, ohne dass man sich um die Übermittlung von Messages kümmern muss, und auch nicht um das Problem der Token-Übergrenze (dies wird intern von der API automatisch behandelt). Außerdem bietet sie Funktionen zur Abfrage und Modifikation von Gesprächen, was die gesamte Integration erheblich vereinfacht.
Dieses Dokument wird die Integrationsanleitung der AI Frage-Antwort-API vorstellen.
Antragsprozess
Um die API zu nutzen, müssen Sie zunächst auf die entsprechende Seite der AI Frage-Antwort-API gehen und den entsprechenden Dienst beantragen. Nach dem Betreten der Seite klicken Sie auf die Schaltfläche „Acquire“, wie im Bild gezeigt:
Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach der Anmeldung werden Sie automatisch zur aktuellen Seite zurückgeleitet.
Bei der ersten Beantragung gibt es ein kostenloses Kontingent, mit dem Sie die API kostenlos nutzen können.
Grundlegende Nutzung
Zunächst sollten Sie die grundlegende Nutzung verstehen, nämlich eine Frage einzugeben und eine Antwort zu erhalten. Dazu müssen Sie einfach einquestion-Feld übermitteln und das entsprechende Modell angeben.
Zum Beispiel, wenn Sie fragen: „Wie heißen Sie?“, können wir die entsprechenden Inhalte im Interface ausfüllen, wie im Bild gezeigt:
Hier haben wir die Request Headers festgelegt, einschließlich:
accept: In welchem Format Sie die Antwort erhalten möchten, hier eingetragen alsapplication/json, also im JSON-Format.authorization: Der Schlüssel zur Nutzung der API, den Sie nach der Beantragung direkt auswählen können.
model: Die Auswahl des Modells, wie zum Beispiel das gängige GPT 3.5, GPT 4 usw.question: Die zu stellende Frage, die beliebigen reinen Text enthalten kann.

answer-Feld enthält, das die Antwort auf die Frage ist. Sie können beliebige Fragen eingeben und erhalten beliebige Antworten.
Wenn Sie keine Unterstützung für mehrstufige Gespräche benötigen, kann diese API Ihre Integration erheblich erleichtern.
Wenn Sie außerdem den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel sieht der CURL-Code wie folgt aus:
Mehrstufige Gespräche
Wenn Sie die Funktion für mehrstufige Gespräche integrieren möchten, müssen Sie einen zusätzlichen Parameterstateful übermitteln, dessen Wert true ist. Bei jeder nachfolgenden Anfrage muss dieser Parameter mit übermittelt werden. Nachdem der stateful-Parameter übermittelt wurde, gibt die API zusätzlich einen id-Parameter zurück, der die ID des aktuellen Gesprächs darstellt. Bei nachfolgenden Anfragen müssen Sie nur diese ID als Parameter übermitteln, um mehrstufige Gespräche einfach zu realisieren.
Hier zeigen wir die konkreten Schritte.
Bei der ersten Anfrage setzen Sie den stateful-Parameter auf true und übermitteln die Parameter model und question wie im Bild gezeigt:
Der entsprechende Code sieht wie folgt aus:
id-Feld als Parameter, während der stateful-Parameter weiterhin auf true gesetzt ist, und fragen „Was habe ich Ihnen gerade gefragt?“, wie im Bild gezeigt:
Der entsprechende Code sieht wie folgt aus:
Stream-Antwort
Diese Schnittstelle unterstützt auch Stream-Antworten, was für die Integration in Webseiten sehr nützlich ist, da es ermöglicht, die Ergebnisse zeilenweise anzuzeigen. Wenn Sie eine Stream-Antwort zurückgeben möchten, können Sie denaccept-Parameter im Request-Header ändern und auf application/x-ndjson setzen.
Die Änderung sieht wie im Bild gezeigt aus, aber der Aufrufcode muss entsprechend geändert werden, um Stream-Antworten zu unterstützen.
Nachdem Sie accept auf application/x-ndjson geändert haben, gibt die API die entsprechenden JSON-Daten zeilenweise zurück. Auf der Code-Ebene müssen wir entsprechende Änderungen vornehmen, um die zeilenweisen Ergebnisse zu erhalten.
Python-Beispielaufrufcode:
answer in der Antwort der neueste Antwortinhalt ist, während delta_answer den neuen Antwortinhalt darstellt, den Sie je nach Ergebnis in Ihr System integrieren können.
JavaScript wird ebenfalls unterstützt, zum Beispiel der Code für den Streaming-Aufruf in Node.js sieht wie folgt aus:
Modellvorgaben
Wir wissen, dass die OpenAI-API ein entsprechendes Konzept vonsystem_prompt hat, das dem gesamten Modell eine Vorgabe gibt, wie zum Beispiel, wie es heißt usw. Diese AI-Frage-Antwort-API hat auch diesen Parameter, der preset genannt wird. Damit können wir dem Modell Vorgaben hinzufügen. Lassen Sie uns ein Beispiel ausprobieren:
Hier fügen wir das Feld preset hinzu, dessen Inhalt Du bist ein professioneller Künstler ist, wie im Bild gezeigt:
Der entsprechende Code sieht wie folgt aus:
Bilderkennung
Diese AI unterstützt auch das Hinzufügen von Anhängen zur Bilderkennung, indem Sie überreferences den entsprechenden Bildlink übermitteln, zum Beispiel habe ich hier ein Bild von einem Apfel, wie im Bild gezeigt:
Der Link zu diesem Bild ist https://cdn.acedata.cloud/ht05g0.png, wir übergeben ihn einfach als references-Parameter. Es ist auch wichtig zu beachten, dass das Modell ein Modell zur visuellen Erkennung unterstützen muss, derzeit wird gpt-4-vision unterstützt, also sieht die Eingabe wie folgt aus:
Der entsprechende Code sieht wie folgt aus:
Online-Fragen und -Antworten
Diese API unterstützt auch Online-Modelle, einschließlich GPT-3.5 und GPT-4, die beide unterstützt werden. Im Hintergrund der API gibt es einen automatischen Prozess, der das Internet durchsucht und zusammenfasst. Wir können das Modell aufgpt-3.5-browsing setzen, um es auszuprobieren, wie im Bild gezeigt:
Der Code sieht wie folgt aus:
Wenn höhere Anforderungen an die Qualität der Modellantworten bestehen, kann das Modell auf gpt-4-browsing geändert werden, die Antwortqualität wird besser sein.

