Logo Zephyrnet

Ṣiṣayẹwo OpenAI API pẹlu Python – KDnuggets

ọjọ:

Ṣiṣayẹwo OpenAI API pẹlu Python
Aworan ti ipilẹṣẹ pẹlu Ideogram.ai
 

Tani ko tii gbọ nipa OpenAI? Ile-iṣẹ iwadii AI ti yi agbaye pada nitori ọja olokiki rẹ, ChatGPT.

O ṣe iyipada gangan ala-ilẹ ti imuse AI, ati pe ọpọlọpọ awọn ile-iṣẹ yara yara lati di ohun nla ti o tẹle.

Laibikita idije pupọ, OpenAI tun jẹ lilọ-si ile-iṣẹ fun eyikeyi awọn iwulo iṣowo Generative AI nitori pe o ni ọkan ninu awọn awoṣe ti o dara julọ ati atilẹyin ilọsiwaju. Ile-iṣẹ n pese ọpọlọpọ awọn awoṣe Generative AI ti o-ti-aworan pẹlu ọpọlọpọ awọn agbara iṣẹ-ṣiṣe: iran aworan, Ọrọ-si-Ọrọ, ati ọpọlọpọ diẹ sii. 

Gbogbo awọn awoṣe OpenAI nfunni wa nipasẹ awọn ipe API. Pẹlu koodu Python ti o rọrun, o le lo awoṣe tẹlẹ. 

Ninu nkan yii, a yoo ṣawari bi o ṣe le lo OpenAI API pẹlu Python ati awọn iṣẹ ṣiṣe lọpọlọpọ ti o le ṣe. Mo nireti pe o kọ ẹkọ pupọ lati nkan yii.

Lati tẹle nkan yii, awọn nkan diẹ wa ti o nilo lati mura.

Ohun pataki julọ ti o nilo ni Awọn bọtini API lati OpenAI, bi o ko ṣe le wọle si awọn awoṣe OpenAI laisi bọtini. Lati gba iwọle, o gbọdọ forukọsilẹ fun akọọlẹ OpenAI ki o beere bọtini API lori iwe iroyin. Lẹhin ti o gba bọtini naa, fipamọ si ibikan ti o le ranti, nitori kii yoo han lẹẹkansi ni wiwo OpenAI.

Ohun ti o tẹle ti o nilo lati ṣeto ni lati ra kirẹditi ti a ti san tẹlẹ lati lo OpenAI API. Laipẹ, OpenAI kede awọn ayipada si bii ìdíyelé wọn ṣiṣẹ. Dipo sisanwo ni opin oṣu, a nilo lati ra kirẹditi sisan tẹlẹ fun ipe API. O le ṣàbẹwò awọn Ṣii idiyele AI oju-iwe lati ṣe iṣiro kirẹditi ti o nilo. O tun le ṣayẹwo wọn awoṣe iwe lati ni oye iru awoṣe ti o nilo.

Nikẹhin, o nilo lati fi package OpenAI Python sori agbegbe rẹ. O le ṣe bẹ nipa lilo koodu atẹle.

pip install openai

 

Lẹhinna, o nilo lati ṣeto oniyipada Bọtini Ayika OpenAI rẹ nipa lilo koodu ti o wa ni isalẹ.

import os

os.environ['OPENAI_API_KEY'] = 'YOUR API KEY'

 

Pẹlu ohun gbogbo ti ṣeto, jẹ ki a bẹrẹ ṣawari API ti awọn awoṣe OpenAI pẹlu Python.

Irawọ ti OpenAI API jẹ awoṣe Awọn iran Ọrọ wọn. Idile Awọn awoṣe Ede nla wọnyi le gbejade igbejade ọrọ lati inu igbewọle ọrọ ti a pe ni kiakia. Awọn ibere jẹ awọn itọnisọna ni ipilẹ lori ohun ti a nireti lati awoṣe, gẹgẹbi itupalẹ ọrọ, ti ipilẹṣẹ awọn iwe-ipamọ, ati ọpọlọpọ diẹ sii.

Jẹ ki a bẹrẹ nipa ṣiṣe ipe API Text Generations ti o rọrun. A yoo lo awoṣe GPT-3.5-Turbo lati OpenAI gẹgẹbi awoṣe ipilẹ. Kii ṣe awoṣe to ti ni ilọsiwaju julọ, ṣugbọn lawin jẹ igbagbogbo to lati ṣe awọn iṣẹ ṣiṣe ti o jọmọ ọrọ.

from openai import OpenAI
client = OpenAI()

completion = client.chat.completions.create(
  model="gpt-3.5-turbo",
  messages=[
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Generate me 3 Jargons that I can use for my Social Media content as a Data Scientist content creator"}
  ]
)

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

 

  1. “Ṣitusilẹ agbara ti awọn atupale asọtẹlẹ lati wakọ awọn ipinnu idari data!”
  2. “Disomi jinlẹ sinu okun data lati ṣii awọn oye to niyelori.”
  3. “Ṣiyipada data aise sinu oye ti o ṣiṣẹ nipasẹ awọn algoridimu ilọsiwaju.”

Ipe API fun awoṣe Ipilẹ Ọrọ nlo API Ipari chat.ipari lati ṣẹda idahun ọrọ lati itọsi wa. 

Awọn paramita meji ti o nilo fun iran ọrọ: awoṣe ati awọn ifiranṣẹ. 

Fun awoṣe, o le ṣayẹwo atokọ ti awọn awoṣe ti o le lo lori oju-iwe awoṣe ti o jọmọ. 

Nipa awọn ifiranṣẹ, a kọja iwe-itumọ pẹlu awọn orisii meji: ipa ati akoonu. Bọtini ipa ṣe apejuwe olufiranṣẹ ni awoṣe ibaraẹnisọrọ. Awọn ipa oriṣiriṣi mẹta lo wa: eto, olumulo, ati oluranlọwọ.

Lilo ipa ninu awọn ifiranṣẹ, a le ṣe iranlọwọ lati ṣeto ihuwasi awoṣe ati apẹẹrẹ ti bii awoṣe ṣe yẹ ki o dahun ibeere wa.

Jẹ ki a faagun apẹẹrẹ koodu iṣaaju pẹlu oluranlọwọ ipa lati fun itọsọna lori awoṣe wa. Ni afikun, a yoo ṣawari diẹ ninu awọn paramita fun awoṣe Generation Text lati mu abajade wọn dara si.

completion = client.chat.completions.create(
    model="gpt-3.5-turbo",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Generate me 3 jargons that I can use for my Social Media content as a Data Scientist content creator."},
        {"role": "assistant", "content": "Sure, here are three jargons: Data Wrangling is the key, Predictive Analytics is the future, and Feature Engineering help your model."},
        {"role": "user", "content": "Great, can you also provide me with 3 content ideas based on these jargons?"}
    ],
    max_tokens=150,
    temperature=0.7,
    top_p=1,
    frequency_penalty=0
)

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

 

Dajudaju! Eyi ni awọn imọran akoonu mẹta ti o da lori awọn jargons ti a pese:

  1. "Nkan ti wunging data: Itọsọna-ṣiṣe-tẹle fun awọn onimo ijinlẹ sayensi" - Ṣẹda awọn iṣelọpọ bulọọgi tabi Awọn irinṣẹ Fihan awọn iṣe ti o dara julọ ni iṣẹ imọ-jinlẹ data gidi.
  1. "Ọjọ iwaju ti Awọn atupale Asọtẹlẹ: Awọn aṣa ati Awọn imotuntun ni Imọ-jinlẹ data” - Kọ nkan adari ero ti o jiroro lori awọn aṣa ti o dide ati awọn imọ-ẹrọ ni awọn atupale asọtẹlẹ ati bii wọn ṣe n ṣe agbekalẹ ọjọ iwaju ti imọ-jinlẹ data.
  1. “Iṣẹ-ẹrọ Ẹya Titunto: Awọn ilana lati Igbelaruge Iṣe Awoṣe” – Dagbasoke infographic tabi jara media awujọ ti n ṣe afihan awọn ilana imọ-ẹrọ ẹya oriṣiriṣi ati ipa wọn lori imudarasi deede ati ṣiṣe ti awọn awoṣe ikẹkọ ẹrọ.

Abajade abajade tẹle apẹẹrẹ ti a pese si awoṣe. Lilo oluranlọwọ ipa jẹ iwulo ti a ba ni ara kan tabi abajade ti a fẹ ki awoṣe tẹle.

Bi fun awọn paramita, eyi ni awọn alaye ti o rọrun ti paramita kọọkan ti a lo:

  • max_àmi: paramita yii ṣeto nọmba ti o pọju awọn ọrọ ti awoṣe le ṣe ina.
  • otutu: Yi paramita išakoso awọn unpredictability ti awọn awoṣe ká o wu. Iwọn otutu ti o ga julọ ni abajade ni awọn abajade ti o yatọ pupọ ati oju inu. Iwọn itẹwọgba jẹ lati 0 si ailopin, botilẹjẹpe awọn iye loke 2 jẹ dani.
  • oke_p: Tun mọ bi iṣapẹẹrẹ iparun, paramita yii ṣe iranlọwọ lati pinnu ipin ti pinpin iṣeeṣe lati eyiti awoṣe n fa abajade rẹ. Fun apẹẹrẹ, iye top_p ti 0.1 tumọ si pe awoṣe ka nikan ni oke 10% ti pinpin iṣeeṣe fun iṣapẹẹrẹ. Awọn iye rẹ le wa lati 0 si 1, pẹlu awọn iye ti o ga julọ ngbanilaaye fun oniruuru iṣelọpọ nla.
  • igbohunsafẹfẹ_penalti: Eleyi penalizes tun àmi ni awọn awoṣe ká o wu. Iye ijiya le wa lati -2 si 2, nibiti awọn iye rere ṣe irẹwẹsi atunwi awọn ami, ati awọn iye odi ṣe idakeji, iwuri fun lilo ọrọ leralera. Iye kan ti 0 tọkasi pe ko si ijiya ti a lo fun atunwi.

Nikẹhin, o le yi abajade awoṣe pada si ọna kika JSON pẹlu koodu atẹle.

completion = client.chat.completions.create(
  model="gpt-3.5-turbo",
  response_format={ "type": "json_object" },
  messages=[
    {"role": "system", "content": "You are a helpful assistant designed to output JSON.."},
    {"role": "user", "content": "Generate me 3 Jargons that I can use for my Social Media content as a Data Scientist content creator"}
  ]
)

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

 

{
"awọn ẹja": [
"Ṣiṣe awọn atupale asọtẹlẹ lati ṣii awọn oye to niyelori",
"Ṣawari sinu awọn intricacies ti awọn algoridimu ikẹkọ ẹrọ ilọsiwaju",
“Lilo agbara ti data nla lati wakọ awọn ipinnu idari data”
]
}

Abajade wa ni ọna kika JSON ati ki o faramọ itọsi ti a tẹ sinu awoṣe naa.

Fun pipe Text Generation API iwe, o le ṣayẹwo wọn jade lori wọn ifiṣootọ iwe.

Awoṣe OpenAI wulo fun awọn ọran lilo iran ọrọ ati pe o tun le pe API fun awọn idi iran aworan. 

Lilo awoṣe DALL·E, a le ṣe ina aworan kan bi o ti beere. Ọna ti o rọrun lati ṣe ni lilo koodu atẹle.

from openai import OpenAI
from IPython.display import Image

client = OpenAI()

response = client.images.generate(
  model="dall-e-3",
  prompt="White Piano on the Beach",
  size="1792x1024",
  quality="hd",
  n=1,
)

image_url = response.data[0].url
Image(url=image_url)

 

Ṣiṣayẹwo OpenAI API pẹlu Python
Aworan ti ipilẹṣẹ pẹlu DALL·E 3
 

Fun awọn paramita, eyi ni awọn alaye:

  • awoṣe: Awoṣe iran aworan lati lo. Lọwọlọwọ, API nikan ṣe atilẹyin DALL · E 3 ati DALL · E 2 awọn awoṣe. 
  • kiakia: Eyi ni apejuwe ọrọ ti o da lori eyiti awoṣe yoo ṣe agbejade aworan kan. 
  • iwọn: Ṣe ipinnu ipinnu ti aworan ti ipilẹṣẹ. Awọn yiyan mẹta wa fun awoṣe DALL · E 3 (1024 × 1024, 1024 × 1792 tabi 1792 × 1024).
  • didara: paramita yii ni ipa lori didara aworan ti ipilẹṣẹ. Ti akoko iṣiro ba nilo, “boṣewa” yiyara ju “hd.”
  • n: Sọ nọmba awọn aworan lati ṣe ipilẹṣẹ ti o da lori tọ. DALL·E 3 le ṣe agbejade aworan kan ni akoko kan. DALL · E 2 le ṣe ina to 10 ni akoko kan.

O tun ṣee ṣe lati ṣe ina aworan iyatọ lati aworan ti o wa, botilẹjẹpe o wa nikan ni lilo awoṣe DALL · E 2. API nikan gba awọn aworan PNG onigun mẹrin ni isalẹ 4 MB pẹlu.

from openai import OpenAI
from IPython.display import Image

client = OpenAI()

response = client.images.create_variation(
  image=open("white_piano_ori.png", "rb"),
  n=2,
  size="1024x1024"
)

image_url = response.data[0].url

Image(url=image_url)

 

Aworan le ma dara dara bi awọn iran DALL·E 3 bi o ṣe nlo awoṣe agbalagba.

OpenAI jẹ ile-iṣẹ asiwaju ti o pese awọn awoṣe ti o le ni oye titẹ sii aworan. Awoṣe yii ni a npe ni awoṣe Vision, nigbamiran ti a npe ni GPT-4V. Awoṣe naa lagbara lati dahun awọn ibeere ti a fun ni aworan ti a fun.

Jẹ ki a gbiyanju API awoṣe Iran. Ni apẹẹrẹ yii, Emi yoo lo aworan piano funfun ti a ṣe lati inu awoṣe DALL · E 3 ati tọju rẹ ni agbegbe. Pẹlupẹlu, Emi yoo ṣẹda iṣẹ kan ti o gba ọna aworan ati da ọrọ apejuwe aworan pada. Maṣe gbagbe lati yi oniyipada api_key pada si Key API rẹ.

from openai import OpenAI
import base64
import requests
def provide_image_description(img_path):

    client = OpenAI()

    api_key = 'YOUR-API-KEY'
    # Function to encode the image
    def encode_image(image_path):
      with open(image_path, "rb") as image_file:
        return base64.b64encode(image_file.read()).decode('utf-8')
   
    # Path to your image
    image_path = img_path
   
    # Getting the base64 string
    base64_image = encode_image(image_path)
   
    headers = {
      "Content-Type": "application/json",
      "Authorization": f"Bearer {api_key}"
    }
   
    payload = {
      "model": "gpt-4-vision-preview",
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "type": "text",
              "text": """Can you describe this image? """
            },
            {
              "type": "image_url",
              "image_url": {
                "url": f"data:image/jpeg;base64,{base64_image}"
              }
            }
          ]
        }
      ],
      "max_tokens": 300
    }
   
    response = requests.post("https://api.openai.com/v1/chat/completions", headers=headers, json=payload)

    return response.json()['choices'][0]['message']['content']

 

Aworan yii ṣe ẹya piano nla kan ti a gbe sori eto eti okun ti o tutu. Piano jẹ funfun, ti o nfihan ipari ti o ni nkan ṣe pẹlu didara. Ohun elo naa wa ni apa ọtun ni eti eti okun, nibiti awọn igbi omi tutu ṣe itọju iyanrin, ti o ṣẹda foomu kan ti o kan fọwọkan ipilẹ duru ati otita ti o baamu. Awọn agbegbe eti okun tọkasi ori ti ifokanbale ati ipinya pẹlu awọn ọrun buluu ti o han gbangba, awọn awọsanma didan ni ijinna, ati okun idakẹjẹ ti o gbooro si oju-ilẹ. Tukakiri ni ayika duru lori iyanrin ni ọpọlọpọ awọn iyẹfun okun ti ọpọlọpọ awọn titobi ati awọn nitobi, ti n ṣe afihan ẹwa adayeba ati oju-aye ifokanbalẹ ti eto naa. Idapọpọ ti ohun elo orin kilasika ni agbegbe eti okun adayeba ṣẹda ifarabalẹ ati akopọ ewì oju.

O le tweak awọn iye ọrọ ninu iwe-itumọ loke lati baamu awọn ibeere awoṣe Iran rẹ.

OpenAI tun pese awoṣe lati ṣe ipilẹṣẹ ohun ti o da lori awoṣe Ọrọ-si-Ọrọ wọn. O rọrun pupọ lati lo, botilẹjẹpe ara asọye ohun ni opin. Pẹlupẹlu, awoṣe ti ṣe atilẹyin ọpọlọpọ awọn ede, eyiti o le rii lori wọn oju-iwe atilẹyin ede.

Lati ṣe agbejade ohun, o le lo koodu isalẹ.

from openai import OpenAI
client = OpenAI()

speech_file_path = "speech.mp3"
response = client.audio.speech.create(
  model="tts-1",
  voice="alloy",
  input="I love data science and machine learning"
)

response.stream_to_file(speech_file_path)

 

O yẹ ki o wo faili ohun ninu iwe ilana rẹ. Gbiyanju lati mu ṣiṣẹ ki o rii boya o wa si boṣewa rẹ. 

Lọwọlọwọ, awọn paramita diẹ nikan lo wa ti o le lo fun awoṣe Ọrọ-si-Ọrọ:

  • awoṣe: Awoṣe Ọrọ-si-Ọrọ lati lo. Awọn awoṣe meji nikan ni o wa (tts-1 tabi tts-1-hd), nibiti tts-1 ṣe iṣapeye iyara ati tts-1-hd fun didara.
  • ohùn: Ara ohun lati lo nibiti gbogbo ohun ti wa ni iṣapeye si Gẹẹsi. Aṣayan jẹ alloy, iwoyi, fable, onyx, nova, ati shimmer.
  • answer_format: Faili ọna kika ohun. Lọwọlọwọ, awọn ọna kika ti o ni atilẹyin jẹ mp3, opus, aac, flac, wav, ati PCm.
  • iyara: Awọn ti ipilẹṣẹ iwe iyara. O le yan awọn iye laarin 0.25 si 4. 
  • titẹ sii: Ọrọ lati ṣẹda ohun. Lọwọlọwọ, awoṣe nikan ṣe atilẹyin fun awọn ohun kikọ 4096.

OpenAI n pese awọn awoṣe lati ṣe igbasilẹ ati tumọ data ohun afetigbọ. Lilo awoṣe whispers, a le ṣe igbasilẹ ohun lati ede atilẹyin si awọn faili ọrọ ati tumọ wọn si Gẹẹsi.

Jẹ ki a gbiyanju igbasilẹ ti o rọrun lati faili ohun afetigbọ ti a ṣe ipilẹṣẹ tẹlẹ.

from openai import OpenAI
client = OpenAI()

audio_file= open("speech.mp3", "rb")
transcription = client.audio.transcriptions.create(
  model="whisper-1",
  file=audio_file
)

print(transcription.text)

 

Mo nifẹ imọ-jinlẹ data ati ẹkọ ẹrọ.

O tun ṣee ṣe lati ṣe itumọ lati awọn faili ohun si ede Gẹẹsi. Awoṣe naa ko tii wa lati tumọ si ede miiran.

from openai import OpenAI
client = OpenAI()

audio_file = open("speech.mp3", "rb")
translate = client.audio.translations.create(
  model="whisper-1",
  file=audio_file
)

A ti ṣawari ọpọlọpọ awọn iṣẹ awoṣe ti OpenAI n pese, lati Ipilẹ Ọrọ, Ipilẹ Aworan, Audio Generation, Vision, and Text-to-Speech model. Awoṣe kọọkan ni paramita API wọn ati sipesifikesonu ti o nilo lati kọ ẹkọ ṣaaju lilo wọn.
 
 

Cornellius Yudha Wijaya jẹ oluranlọwọ imọ-jinlẹ data ati onkọwe data. Lakoko ti o n ṣiṣẹ ni kikun akoko ni Allianz Indonesia, o nifẹ lati pin Python ati awọn imọran data nipasẹ media media ati kikọ media. Cornellius kọwe lori oriṣiriṣi AI ati awọn akọle ẹkọ ẹrọ.

iranran_img

Titun oye

iranran_img