Kehitä näköpohjainen keskustelusovellus

Valmis

Vinkki

Katso lisätietoja Teksti ja kuvat -välilehdeltä!

Jos haluat kehittää asiakassovelluksen, joka käy näköpohjaisia keskusteluja multimodaalisen mallin avulla, voit käyttää samoja perustekniikoita kuin tekstipohjaisissa keskusteluissa. Tarvitset yhteyden päätepisteeseen, jossa malli otetaan käyttöön, ja käytät kyseistä päätepistettä lähettääksesi kehotteita, jotka koostuvat sanomista malliin, ja käsitelläksesi vastaukset.

Keskeinen ero on, että visiopohjaisen chatin kehotteet sisältävät moniosaisia käyttäjäviestejä, jotka sisältävät sekä tekstisisällön että kuvasisällön kohteen.

Kaavio moniosaisessa kehotteessa, joka lähetetään malliin.

Lähetä kuvapohjainen kehote Responses API:n avulla

Jos haluat lisätä kuvan kehotteeseen Responses API:n avulla, määritä URL verkkopohjaiselle kuvatiedostolle tai lataa paikallinen kuva ja koodaa sen tiedot Base64-muodossa sekä lähetä URL siinä data:image/jpeg;base64,{image_data} muodossa (korvaa "jpeg" "png":llä tai muissa formaateissa tarpeen mukaan).

Seuraava Python-esimerkki näyttää, miten kuva lähetetään kehotteeseen Responses API:n avulla:

# Read the image data from a local file
image_path = Path("dragon-fruit.jpeg")
image_format = "jpeg"
with open(image_path, "rb") as image_file:
    image_data = base64.b64encode(image_file.read()).decode("utf-8")

data_url = f"data:image/{image_format};base64,{image_data}" # You can also use a web URL

# Send the image data in a prompt to the model
response = client.responses.create(
    model="gpt-4.1",
    input=[
        {"role": "developer", "content": "You are an AI assistant for chefs planning recipes."},
        {"role": "user", "content": [  
            { "type": "input_text", "text": "What desserts could I make with this?"},
            { "type": "input_image", "image_url": data_url}
        ] } 
    ]
)
print(response.output_text)

Lähetä kuvapohjainen kehote ChatCompletions-rajapinnan avulla

Kun käytät Azure OpenAI -päätelaitetta lähettääksesi kehotuksia malleille, jotka eivät tue Responses API:ta, voit käyttää CatCompletions API:a; Näin:

# Read the image data from a local file
image_path = Path("orange.jpeg")
image_format = "jpeg"
with open(image_path, "rb") as image_file:
    image_data = base64.b64encode(image_file.read()).decode("utf-8")

data_url = f"data:image/{image_format};base64,{image_data}" # You can also use a web URL

# Send the image data in a prompt to the model
response = client.chat.completions.create(
    model="Phi-4-multimodal-instruct",
    messages=[
        {"role": "system", "content": "You are an AI assistant for chefs planning recipes."},
        { "role": "user", "content": [  
            { "type": "text", "text": "What can I make with this fruit?"},
            { "type": "image_url", "image_url": {"url": data_url}}
        ] }
    ]
)
print(response.choices[0].message.content)