Skip to main content
Wir wissen, dass die Integration einiger Frage-Antwort-APIs auf dem Markt relativ schwierig sein kann, wie zum Beispiel die Chat Completions API von OpenAI. Sie hat ein 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 wir uns um die Übermittlung von Nachrichten kümmern müssen, 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 AI Frage-Antwort-API zu nutzen, gehen Sie zuerst zur Ace Data Cloud Konsole, um Ihr API-Token zu erhalten, das Sie für später aufbewahren sollten. Wenn Sie noch nicht eingeloggt oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, wo Sie sich registrieren und anmelden können. Nach Abschluss werden Sie automatisch zur aktuellen Seite zurückgeleitet. Ein API-Token reicht aus, um auf alle Dienste der Plattform zuzugreifen, ohne dass für jeden Dienst separat beantragt werden muss. Bei der ersten Beantragung erhalten Sie ein kostenloses Kontingent, um es kostenlos auszuprobieren; wenn das Kontingent nicht ausreicht, können Sie im Dashboard Ihr Guthaben aufladen.
📘 Vollständige Dokumentation: AI Frage-Antwort-API →

Grundlegende Nutzung

Zuerst sollten Sie die grundlegende Nutzung verstehen, nämlich eine Frage einzugeben und eine Antwort zu erhalten. Dazu müssen Sie einfach ein question-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-Header festgelegt, einschließlich:
  • accept: In welchem Format Sie die Antwort erhalten möchten, hier als application/json, also im JSON-Format.
  • authorization: Der Schlüssel zur API, den Sie nach der Beantragung direkt auswählen können.
Außerdem haben wir den Request-Body festgelegt, einschließlich:
  • model: Die Auswahl des Modells, wie das gängige GPT 3.5, GPT 4 usw.
  • question: Die zu stellende Frage, die beliebigen reinen Text enthalten kann.
Nach der Auswahl können wir sehen, dass auf der rechten Seite der entsprechende Code generiert wurde, wie im Bild gezeigt:

Klicken Sie auf die Schaltfläche „Try“, um einen Test durchzuführen, wie im obigen Bild gezeigt, und wir erhalten folgendes Ergebnis:
Hier sehen wir, dass das zurückgegebene Ergebnis ein answer-Feld enthält, das die Antwort auf die Frage ist. Wir können beliebige Fragen eingeben und erhalten beliebige Antworten. Wenn Sie keine Unterstützung für mehrfache Dialoge benötigen, kann diese API Ihre Integration erheblich erleichtern. Wenn Sie den entsprechenden Integrationscode generieren möchten, können Sie ihn direkt kopieren, zum Beispiel sieht der CURL-Code wie folgt aus:
Der Python-Integrationscode sieht wie folgt aus:

Mehrfache Dialoge

Wenn Sie die Funktion für mehrfache Dialoge integrieren möchten, müssen Sie einen zusätzlichen Parameter stateful ü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 wir nur diese ID als Parameter übermitteln, um mehrfache Dialoge 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:
Sie erhalten folgende Antwort:
Bei der zweiten Anfrage übermitteln Sie das in der ersten Anfrage zurückgegebene 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:
Das Ergebnis sieht wie folgt aus:
Wie Sie sehen können, kann die Antwort auf die entsprechende Frage basierend auf dem Kontext gegeben werden.

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 Ausgabe zeilenweise anzuzeigen. Wenn Sie eine Stream-Antwort zurückgeben möchten, können Sie den accept-Parameter im Request-Header auf application/x-ndjson ändern. Die Änderung sieht wie im Bild gezeigt aus, jedoch muss der Aufrufcode 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:
Die Ausgabe sieht wie folgt aus:
Man sieht, dass die 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:
Java-Beispielcode:
Andere Sprachen können ebenfalls selbst umgeschrieben werden, das Prinzip ist dasselbe.

Modellvorgaben

Wir wissen, dass die OpenAI-API ein entsprechendes Konzept von system_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:
Das Ergebnis sieht wie folgt aus:
Man sieht, dass wir hier GPT gesagt haben, dass es ein Roboter ist, und dann gefragt haben, was es für uns tun kann, und es kann die Rolle eines Roboters übernehmen, um Fragen zu beantworten.

Bilderkennung

Diese AI unterstützt auch das Hinzufügen von Anhängen zur Bilderkennung, indem Sie über references 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:
Das Ergebnis sieht wie folgt aus:
Man sieht, dass wir erfolgreich die entsprechende Antwort auf das Bild erhalten haben.

Internetfragen

Diese API unterstützt auch internetfähige Modelle, einschließlich GPT-3.5 und GPT-4, die beide unterstützt werden. Im Hintergrund der API gibt es einen automatischen Suchprozess im Internet und eine Zusammenfassung. Wir können das Modell auf gpt-3.5-browsing setzen, um es auszuprobieren, wie im Bild gezeigt: Der Code sieht wie folgt aus:
Die Ausführungsergebnisse sind wie folgt:
Es ist zu sehen, dass es automatisch die Website von The Weather Channel durchsucht hat und die Informationen daraus erhalten hat, und dann die aktuellen Ergebnisse zurückgegeben hat.
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.