OpenAI Functions
The OpenAI category provides OpenAI API integration that mirrors the functionality of OpenAI nodes.
Available Functions
Authentication
OpenAI.Auth.setApiKey(key)- Sets the OpenAI API keyOpenAI.Auth.setOrganization(org)- Sets the organization IDOpenAI.Auth.setProxy(proxy)- Sets the proxy URLOpenAI.Auth.setTimeout(seconds)- Sets the request timeoutOpenAI.Auth.setAzureApiKey(key)- Sets the Azure API key
Chat Completions
OpenAI.Chat.completion(messages, options)- Creates a chat completionOpenAI.Chat.completionAsync(messages, options)- Creates an async chat completionOpenAI.Chat.createConversation()- Creates a new conversationOpenAI.Chat.addUserMessage(conversationId, message)- Adds a user messageOpenAI.Chat.setSystemMessage(conversationId, message)- Sets the system messageOpenAI.Chat.updateConversation(conversationId, options)- Updates conversation settingsOpenAI.Chat.getLastResponse(conversationId)- Gets the last responseOpenAI.Chat.exportConversation(conversationId)- Exports conversation dataOpenAI.Chat.importConversation(data)- Imports conversation data
Completions
OpenAI.Completion.prompt(prompt, options)- Creates a completionOpenAI.Completion.promptAsync(prompt, options)- Creates an async completion
Images
OpenAI.Image.generate(prompt, options)- Generates an imageOpenAI.Image.generateAsync(prompt, options)- Generates an image asynchronouslyOpenAI.Image.edit(image, mask, prompt, options)- Edits an imageOpenAI.Image.variation(image, options)- Creates image variationsOpenAI.Image.download(fileId, path)- Downloads an image
Audio
OpenAI.Audio.transcribe(audioPath, options)- Transcribes audioOpenAI.Audio.translate(audioPath, options)- Translates audioOpenAI.Audio.speech(text, options)- Generates speechOpenAI.Audio.saveSpeech(text, path, options)- Generates and saves speech
Files
OpenAI.Files.upload(filePath, purpose)- Uploads a fileOpenAI.Files.list()- Lists uploaded filesOpenAI.Files.retrieve(fileId)- Retrieves file informationOpenAI.Files.delete(fileId)- Deletes a fileOpenAI.Files.download(fileId, path)- Downloads a file
Examples
Authentication Setup
OpenAI.Auth.setApiKey("sk-...")
OpenAI.Auth.setOrganization("org-...")
OpenAI.Auth.setTimeout(30)
Chat Completions
-- Simple completion
local messages = {
{role = "user", content = "Hello!"}
}
local response = OpenAI.Chat.completion(messages, {
model = "gpt-3.5-turbo",
temperature = 0.7
})
Logger.info("Response: " .. response.content)
-- Conversation management
local convId = OpenAI.Chat.createConversation()
OpenAI.Chat.addUserMessage(convId, "What is AI?")
local response = OpenAI.Chat.getLastResponse(convId)
Image Generation
local result = OpenAI.Image.generate("A beautiful sunset", {
size = "1024x1024",
n = 1
})
Logger.info("Image URL: " .. result.url)
Audio Transcription
local result = OpenAI.Audio.transcribe("audio.mp3", {
language = "en"
})
Logger.info("Transcription: " .. result.text)
Parameters
key- API key stringorg- Organization IDproxy- Proxy URLseconds- Timeout in secondsmessages- Array of message objects withroleandcontentoptions- Table with API options (model, temperature, etc.)conversationId- Conversation identifiermessage- Message contentprompt- Text promptimage- Image file pathmask- Mask image pathaudioPath- Path to audio filetext- Text to convert to speechfilePath- Path to filepurpose- File purpose (e.g., "fine-tune")fileId- File identifierpath- Destination path
Return Values
Functions return tables with response data. Structure varies by function type:
- Chat completions return message objects
- Image generation returns image URLs
- Audio functions return transcription/translation text
- File operations return file metadata