Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.4.0+

Referencing a Pre-Uploaded Image File by file_id in an AI Request

See more AI Examples

Currently, OpenAI is the only AI provider that supports referencing a pre-uploaded image in a request for text generation.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

local success = false

-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.

local ai = chilkat.Ai.new()

-- OpenAI is currently the only AI provider that supports referencing a pre-uploaded image by file_id
-- in a request for text generation.
ai.provider = "openai"

-- Use your provider's API key.
ai.api_key = "MY_API_KEY"

-- Choose a model.
ai.model = "gpt-5.6-luna"

-- See the following example showing how to upload a file
-- Upload an Image File to an AI Provider

-- Use the file_id of the pre-uploaded file.
local file_id = "file-5CnBeuFasqNcAfti3cx4Fe"
ai:input_add_image_file_id(file_id, "application/json")

ai:input_add_text("What is in this image?")

-- Ask the AI for text output.
success = ai:ask("text")
if not success then
    print(ai.last_error_text)
    return
end

-- Get the text response.
local sbResponse = chilkat.StringBuilder.new()
ai:get_output_text_sb(sbResponse)
print(sbResponse:get_as_string())