ChatGPT API: Guide for å bygge neste generasjons apper

Viktige høydepunkter

  • OpenAI har lansert ChatGPT API, som gir utviklere muligheten til å integrere ChatGPTs funksjonalitet direkte i egne applikasjoner.
  • For å starte integrasjonen trenger du en OpenAI API-nøkkel og et utviklingsmiljø som inkluderer de nødvendige bibliotekene.
  • ChatGPT API muliggjør både chatbasert interaksjon og oppgaver relatert til tekstgenerering, noe som åpner for et bredt spekter av applikasjonsmuligheter.

Med lanseringen av dette APIet har OpenAI gjort ChatGPTs evner tilgjengelige for et bredere publikum. Nå kan du enkelt implementere ChatGPTs funksjoner i dine egne prosjekter.

Her er en steg-for-steg veiledning for å hjelpe deg i gang, uansett om du ønsker å integrere ChatGPT i en eksisterende applikasjon eller utvikle helt nye applikasjoner basert på denne teknologien.

1. Skaff deg en OpenAI API-nøkkel

Før du kan benytte deg av ChatGPT API, må du først skaffe en API-nøkkel.

  • Registrer deg eller logg inn på den offisielle OpenAI-plattformen.
  • Etter innlogging, finn og klikk på fanen for API-nøkler i menyen til venstre.
  • Klikk deretter på knappen for å opprette en ny hemmelig nøkkel.
  • Sikkerhetsmessig er det viktig å kopiere og lagre denne API-nøkkelen på et trygt sted, da den ikke vil være tilgjengelig for visning igjen.

Koden som presenteres i dette prosjektet er tilgjengelig på et GitHub-repository og kan fritt brukes under MIT-lisensen.

2. Konfigurer utviklingsmiljøet

Du kan velge å kommunisere direkte med API-endepunktet eller benytte deg av OpenAIs offisielle Python/JavaScript-biblioteker for å bygge applikasjoner som utnytter ChatGPT API. Denne veiledningen fokuserer på bruk av Python og openai-python biblioteket.

Følg disse trinnene for å konfigurere miljøet ditt:

  • Opprett et virtuelt Python-miljø.
  • Installer openai- og python-dotenv-bibliotekene ved hjelp av pip:
    pip install openai python-dotenv
  • Lag en .env-fil i rotkatalogen for prosjektet ditt for å lagre API-nøkkelen på en sikker måte.
  • I den samme filen setter du variabelen OPENAI_API_KEY til den verdien du kopierte tidligere:
    OPENAI_API_KEY="DIN_API_NØKKEL"

For å unngå utilsiktet eksponering av API-nøkkelen din, er det viktig å ikke dele den gjennom versjonskontroll. Legg til en .gitignore-fil i rotkatalogen til prosjektet ditt og inkluder «.env» for å ekskludere denne filen.

3. Utfør forespørsler til ChatGPT API

OpenAIs APIer, inkludert GPT-3.5 Turbo, GPT-4 og GPT-4 Turbo, er de samme modellene som driver ChatGPT. Disse avanserte modellene er i stand til å tolke og generere tekst og kode på en naturlig måte. GPT-4 Turbo er også i stand til å prosessere bildeinndata, noe som muliggjør bruksområder som bildeanalyse, dokumentanalyse med illustrasjoner og transkribering av tekst fra bilder.

Merk at begrepet ChatGPT API omfatter OpenAIs APIer som bruker GPT-baserte modeller, inkludert gpt-3.5-turbo, gpt-4 og gpt-4-turbo modellene.

ChatGPT API er hovedsakelig optimalisert for chatinteraksjoner, men fungerer også utmerket for oppgaver som tekstfullføring. Enten du vil generere kode, oversette språk eller utarbeide dokumenter, kan dette APIet håndtere det meste.

For å få tilgang til GPT-4 API må du ha gjennomført en betaling på minst $1. Ellers vil du kunne støte på en feilmelding som «Modellen `gpt-4` eksisterer ikke eller du har ikke tilgang til den.»

Bruk av API for chat fullføring

Før du sender en API-forespørsel, må du konfigurere chat-modellen. Her er et eksempel:

from openai import OpenAI
from dotenv import load_dotenv load_dotenv() client = OpenAI() response = client.chat.completions.create( model = "gpt-3.5-turbo-0125", temperature = 0.8, max_tokens = 3000, response_format={ "type": "json_object" }, messages = [ {"role": "system", "content": "Du er en morsom komiker som forteller pappa-vitser. Utdataene skal være i JSON-format."}, {"role": "user", "content": "Skriv en pappa-vits relatert til tall."}, {"role": "assistant", "content": "Spørsmål: Hvordan gjør du 7 til et partall? Svar: Fjern s-en."}, {"role": "user", "content": "Skriv en relatert til programmerere."} ] )

ChatGPT API gir et svar i følgende format:

Du kan trekke ut innholdet fra svaret, som en JSON-streng, med denne koden:

print(response.choices[0].message.content)

Ved å kjøre denne koden får du følgende utdata:

Koden illustrerer et kall til ChatGPT API ved hjelp av Python. Legg merke til hvordan modellen forstår konteksten («pappa-vits») og formatet (spørsmål og svar) basert på de gitte meldingene.

Den viktigste delen av konfigureringen er parameteren «messages», som aksepterer en rekke meldingsobjekter. Hvert objekt inneholder en rolle og et innhold. Det finnes tre rolletyper:

  • `system` som definerer konteksten og assistentens oppførsel.
  • `user` som gir instruksjoner til assistenten. Dette vil vanligvis komme fra sluttbrukeren, men du kan også legge inn forhåndsdefinerte meldinger.
  • `assistant` som kan inneholde eksempler på svar.

Du kan ytterligere tilpasse parameterne `temperature` og `max_tokens` for å styre utdataene i henhold til dine behov.

Høyere `temperature` gir mer tilfeldige utdata, mens lavere verdier gir mer forutsigbare svar. Juster verdien for å oppnå ønsket balanse mellom kreativitet og konsistens. `temperature` varierer fra 0 til 2.

API-et har en grense for antall ord. Bruk `max_tokens` for å begrense lengden på svarene. Vær forsiktig med for lave verdier, da dette kan avkorte utdataene. I dag har gpt-3.5-turbo-modellen en grense på 4096 tokens, mens gpt-4 har 8192. De nyeste modellene gpt-3.5-turbo-0125 og gpt-4-turbo-preview har henholdsvis 16 385 og 128 000 tokens.

Etter ønske fra mange utviklere, har OpenAI introdusert JSON-modus, som garanterer at modellen alltid returnerer et JSON-objekt. Dette aktiveres ved å sette `response_format` til { “type”: “json_object” }. Foreløpig er dette tilgjengelig for modellene gpt-3.5-turbo-0125 og gpt-4-turbo-preview.

Du kan konfigurere modellen ytterligere ved å benytte de andre parameterne som er beskrevet i OpenAIs dokumentasjon.

Bruke ChatGPT API for tekstfullføring

I tillegg til chatbaserte interaksjoner er Chat Completions API (ChatGPT API) egnet for tekstfullføring. Følgende eksempel viser hvordan du kan konfigurere ChatGPT API for tekstfullføring:

        from openai import OpenAI
        from dotenv import load_dotenv
        
        load_dotenv()
        client = OpenAI()
        
        response = client.chat.completions.create(
        model = "gpt-3.5-turbo",
        temperature = 0.8,
        max_tokens = 3000,
        messages = [
        {"role": "system", "content": "Du er en poet som skaper dikt som vekker følelser."},
        {"role": "user", "content": "Skriv et kort dikt for programmerere."}
        ]
        )
        
        print(response.choices[0].message.content)
        

Du behøver ikke engang å definere systemrollen. Det er nok å kun oppgi brukerens melding.

        messages = [
        {"role": "user", "content": "Skriv et kort dikt for programmerere."}
        ]
        

Ved å kjøre koden ovenfor genereres et dikt for programmerere, for eksempel:

ChatGPT API priser

Prisene for ChatGPT API baseres på en «pris per 1000 tokens»-modell. For chatfullføringsforespørsler beregnes kostnadene ut fra antall inn-tokens pluss antall ut-tokens som API-et returnerer. En token tilsvarer omtrent en del av et ord, og 1000 tokens tilsvarer omtrent 750 ord.

Modell

Inndata

Produksjon

gpt-4-0125-preview

$0.01 / 1K tokens

$0.03 / 1K tokens

gpt-4-1106-preview

$0.01 / 1K tokens

$0.03 / 1K tokens

gpt-4-1106-vision-preview

$0.01 / 1K tokens

$0.03 / 1K tokens

gpt-4

$0.03 / 1K tokens

$0.06 / 1K tokens

gpt-4-32k

$0.06 / 1K tokens

$0.12 / 1K tokens

gpt-3.5-turbo-0125

$0.0005 / 1K tokens

$0.0015 / 1K tokens

gpt-3.5-turbo-instruks

$0.0015 / 1K tokens

$0.0020 / 1K tokens

Husk at prisene kan endres i takt med modellforbedringer.

Bygg neste generasjons apper med ChatGPT API

ChatGPT API har åpnet nye muligheter for utviklere over hele verden, slik at de kan skape innovative produkter basert på kunstig intelligens.

Dette verktøyet kan brukes til å utvikle applikasjoner som historieforfattere, kodeoversettere, generatorer for markedsføringstekster og verktøy for å oppsummere tekst. Det er bare fantasien som setter grenser for hva som er mulig å bygge med denne teknologien.