Hoppa till huvudinnehåll
xAI Grok är ett mycket kraftfullt AI-dialogsystem som kan generera flytande och naturliga svar på bara några sekunder genom att ange en prompt. Grok utmärker sig i branschen med sin unika humorstil och förmåga att hämta information i realtid från nätet. Idag har Grok gjort sig ett namn inom flera innovativa områden, och dess inflytande växer snabbt. Oavsett om det handlar om vardagliga samtal, kreativt skrivande eller teknisk analys och kodavlusning, kan Grok erbjuda insiktsfullt och intelligent stöd som ger användarnas beslut och skapande en ny dimension. Detta dokument beskriver huvudsakligen användningsflödet för Grok Chat Completion API, vilket gör att vi enkelt kan använda den officiella Grok-dialogfunktionen.

Ansökningsprocess

För att använda Grok Chat Completion API, börja med att gå till Ace Data Cloud-konsolen för att hämta din API-token, som du kan spara för framtida bruk. Om du inte har loggat in eller registrerat dig kommer du automatiskt att omdirigeras till inloggningssidan för att registrera dig och logga in. När detta är klart kommer du automatiskt att återvända till den aktuella sidan. En API-token räcker för att anropa alla plattformens tjänster, du behöver inte ansöka separat för varje tjänst. Första gången du ansöker får du en gratis kvot för att prova; när kvoten är slut kan du ladda på allmän balans i konsolen.
📘 Fullständig dokumentation: Grok Chat Completion API →

Grundläggande Användning

Nu kan du fylla i motsvarande innehåll på gränssnittet, som visas i bilden:

Vid första användning av detta gränssnitt behöver vi fylla i tre saker: en är authorization, som du enkelt väljer från rullgardinsmenyn. Den andra parametern är model, där model är den Grok-modellkategori vi väljer att använda. Här har vi huvudsakligen 8 olika modeller, detaljer kan ses i de modeller vi tillhandahåller. Den sista parametern är messages, där messages är en array av våra frågeord, vilket innebär att vi kan ladda upp flera frågeord samtidigt. Varje frågeord innehåller role och content, där role representerar frågeställarens roll. Vi erbjuder tre olika roller: user, assistant, system. Den andra content är det specifika innehållet i vår fråga. Samtidigt kan du notera att det finns motsvarande anropskod som genereras till höger, du kan kopiera koden och köra den direkt, eller klicka på “Try” knappen för att testa. Vanliga valfria parametrar:
  • max_tokens: begränsar det maximala antalet tokens för ett enstaka svar.
  • temperature: genererar slumpmässighet, mellan 0-2, ju högre värde desto mer spritt.
  • n: hur många kandidatsvar som genereras åt gången.

Efter anropet ser vi att returresultatet ser ut som följer:
Returresultatet innehåller flera fält, som beskrivs nedan:
  • id, ID för den genererade dialoguppgiften, används för att unikt identifiera denna dialoguppgift.
  • model, den valda Grok-modellen.
  • choices, Groks svarsinformation på frågeordet.
  • usage: statistik över tokens för denna fråge- och svarssession.
Där choices innehåller Groks svarsinformation, och choices inuti den innehåller den specifika informationen om Groks svar, vilket kan ses i bilden.

Det kan ses att content-fältet i choices innehåller det specifika innehållet i Groks svar.

Strömmande Svar

Detta gränssnitt stöder också strömmande svar, vilket är mycket användbart för webbgränssnitt och kan ge en tecken-för-tecken visningseffekt. Om du vill ha strömmande svar kan du ändra stream-parametern i begärningshuvudet till true. Ändringen visas i bilden, men anropskoden behöver också ändras för att stödja strömmande svar.

När stream ändras till true, kommer API:et 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:
Det kan ses att svaret innehåller många data, där data innehåller choices som är det senaste svaret, vilket är i linje med den tidigare beskrivna informationen. choices är det nya svaret, och du kan koppla det till ditt system baserat på resultatet. Samtidigt är slutet av det strömmande svaret baserat på innehållet i data, om innehållet är [DONE], indikerar det att det strömmande svaret har avslutats helt. De returnerade data-resultaten har flera fält, som beskrivs nedan:
  • id, ID för att generera denna dialoguppgift, används för att unikt identifiera denna dialoguppgift.
  • model, den valda Grok-modellen från Grok:s officiella webbplats.
  • choices, Grok:s svarsinformation på frågorna.
JavaScript stöds också, till exempel Node.js:s strömmande anropskod ser ut så här:
Java-exempel på kod:
Andra språk kan skrivas om på egen hand, principen är densamma.

Flera rundor av dialog

Om du vill koppla flera rundor av dialogfunktionalitet, behöver du ladda upp flera frågor i messages-fältet, specifika exempel på flera frågor visas nedan:

Python-exempel på anropskod:
Genom att ladda upp flera frågor kan du enkelt genomföra flera rundor av dialog och få följande svar:
Det kan ses att informationen i choices är i linje med den grundläggande användningen, detta innehåller Grok:s specifika innehåll för att svara på flera dialoger, så att du kan svara på motsvarande frågor baserat på flera dialoginnehåll.

Felhantering

När du anropar API:et, om du stöter på fel, kommer API:et att returnera motsvarande felkod och information. Till exempel:
  • 400 token_mismatched: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 401 invalid_token: Unauthorized, ogiltig eller saknad auktoriseringstoken.
  • 429 too_many_requests: För många förfrågningar, du har överskridit hastighetsgränsen.
  • 500 api_error: Intern serverfel, något gick fel på servern.

Exempel på felrespons

Slutsats

Genom detta dokument har du fått en förståelse för hur du använder OpenAI Chat Completion API för att enkelt implementera den officiella OpenAI ChatGPT:s dialogfunktion. Vi hoppas att detta dokument kan hjälpa dig att bättre koppla och använda API:et. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.