Skip to main content
Vi vet att integrationen av vissa fråge- och svar-API:er på marknaden fortfarande inte är så enkel, som till exempel OpenAI:s Chat Completions API, som har ett messages-fält. För att slutföra en kontinuerlig konversation måste vi skicka hela kontexthistoriken, samtidigt som vi också måste hantera problemet med att token överskrider gränsen. AceDataCloud:s AI-fråge- och svar-API har optimerats för ovanstående situationer. Utan att påverka fråge- och svarsresultatet har implementeringen av kontinuerliga konversationer kapslats in, så att man vid integrationen inte längre behöver oroa sig för att skicka messages, och inte heller för att token överskrider gränsen (API:t hanterar detta automatiskt internt). Dessutom erbjuder det funktioner för att fråga, ändra och mer, vilket gör hela integrationen mycket enklare. Detta dokument kommer att introducera integrationsbeskrivningen för AI-fråge- och svar-API:t.

Ansökningsprocess

För att använda API:t måste du först gå till AI-fråge- och svar-API motsvarande sida för att ansöka om den tjänst som behövs. När du kommer till sidan, klicka på knappen “Acquire”, som visas i bilden: Om du inte har loggat in eller registrerat dig kommer du automatiskt att omdirigeras till inloggningssidan för att registrera dig och logga in. Efter att du har loggat in eller registrerat dig kommer du automatiskt att återvända till den aktuella sidan. Vid första ansökan kommer det att finnas en gratis kvot som ges, så att du kan använda API:t gratis.

Grundläggande användning

Först och främst, förstå den grundläggande användningsmetoden, vilket är att ställa en fråga och få ett svar. Du behöver bara enkelt skicka ett question-fält och ange motsvarande modell. Till exempel, fråga: “What’s your name?”, så kan vi fylla i motsvarande innehåll på gränssnittet, som visas i bilden: Här kan vi se att vi har ställt in Request Headers, inklusive:
  • accept: vilken typ av format du vill ta emot som svar, här anges application/json, det vill säga JSON-format.
  • authorization: nyckeln för att anropa API:t, efter ansökan kan du direkt välja från rullgardinsmenyn.
Dessutom har vi ställt in Request Body, inklusive:
  • model: valet av modell, som till exempel de populära GPT 3.5, GPT 4 osv.
  • question: frågan som ska ställas, kan vara vilken ren text som helst.
När du har gjort ditt val kan du se att det också har genererats motsvarande kod till höger, som visas i bilden:

Klicka på knappen “Try” för att testa, som visas i bilden ovan, här får vi följande resultat:
Vi kan se att det returnerade resultatet innehåller ett answer-fält, vilket är svaret på frågan. Vi kan ställa vilken fråga som helst och få vilket svar som helst. Om du inte behöver något stöd för fleromgångs-konversationer kan detta API avsevärt förenkla din integration. Om du dessutom vill generera motsvarande integrationskod kan du direkt kopiera den som genererats, till exempel CURL-koden nedan:
Python-integrationskoden ser ut så här:

Fleromgångs-konversation

Om du vill integrera fleromgångs-konversationsfunktionen måste du skicka ett extra parameter stateful, vars värde är true. Varje efterföljande begäran måste också inkludera detta parameter. När stateful-parametern har skickats kommer API:t att returnera ett extra id-parameter, som representerar ID:t för den aktuella konversationen. Därefter behöver vi bara skicka detta ID som parameter för att enkelt genomföra fleromgångs-konversationer. Låt oss demonstrera den specifika operationen. Vid första begäran, ställ in stateful-parametern till true, och skicka normalt model och question-parametrarna, som visas i bilden: Motsvarande kod ser ut så här:
Vi får följande svar:
Vid andra begäran, skicka id-fältet som returnerades från första begäran som parameter, samtidigt som stateful-parametern fortfarande är inställd på true, och fråga “What I asked you just now?”, som visas i bilden: Motsvarande kod ser ut så här:
Resultatet blir:
Vi kan se att vi kan svara på motsvarande frågor baserat på kontexten.

Strömmande svar

Detta API stöder också strömmande svar, vilket är mycket användbart för webbintegration och kan göra att webbsidan visar resultatet tecken för tecken. Om du vill ha strömmande svar kan du ändra accept-parametern i begärans huvud till application/x-ndjson. Ändringen visas i bilden, men anropskoden behöver göras motsvarande ändringar för att stödja strömmande svar. När accept har ändrats till application/x-ndjson, kommer API:t att returnera motsvarande JSON-data rad för rad, och på kodnivå behöver vi göra nödvändiga ändringar för att få radresultaten. Python-exempel på anropskod:
Utdataeffekten ser ut som följer:
Vi kan se att svaret i answer är det senaste svaret, medan delta_answer är det nya svaret, och du kan använda resultaten för att integrera dem i ditt system. JavaScript stöds också, till exempel Node.js strömmande anrop kod ser ut som följer:
Java exempel kod:
Andra språk kan skrivas om på egen hand, principen är densamma.

Modellförinställningar

Vi vet att OpenAI relaterade API:er har ett motsvarande koncept av system_prompt, vilket är att ställa in en förinställning för hela modellen, till exempel vad den heter osv. Denna AI-fråge-API har också exponerat denna parameter, kallad preset, med hjälp av den kan vi lägga till förinställningar till modellen, vi använder ett exempel för att uppleva detta: Här lägger vi till preset-fältet, innehållet är Du är en professionell konstnär, som visas i bilden: Motsvarande kod ser ut som följer:
Körningsresultatet ser ut som följer:
Vi kan se att vi här berättade för GPT att den är en robot och sedan frågade vad den kan göra för oss, så kan den spela en robots roll för att svara på frågor.

Bildigenkänning

Denna AI kan också stödja att lägga till bilagor för bildigenkänning genom att överföra motsvarande bildlänk via references, till exempel har jag här en bild av ett äpple, som visas i bilden: Länken till bilden är https://cdn.acedata.cloud/ht05g0.png, vi överför den direkt som references-parameter, samtidigt som vi behöver notera att modellen måste välja en modell som stöder visuell igenkänning, för närvarande stöds gpt-4-vision, så inmatningen ser ut som följer: Motsvarande kod ser ut som följer:
Körningsresultatet ser ut som följer:
Vi kan se att vi framgångsrikt fått det motsvarande svaret på bilden.

Internetfrågor

Denna API stöder också internetmodeller, inklusive både GPT-3.5 och GPT-4, som kan stödja, i API:et finns en automatisk sökning på internet och sammanfattning, vi kan välja modellen som gpt-3.5-browsing för att uppleva detta, som visas i bilden: Koden ser ut som följer:
Körningsresultatet är som följer:
Det kan ses att den automatiskt sökte på The Weather Channel-webbplatsen och fick information därifrån, och sedan vidare returnerade realtidsresultatet.
Om du har högre krav på modellens svarskvalitet kan du byta modellen till gpt-4-browsing, svaret kommer att bli bättre.