RPA.OpenAI
module RPA.OpenAI
class RPA.OpenAI.OpenAI
Library to support OpenAI and Azure OpenAI services.
Library is not included in the rpaframework package, so in order to use it you have to add rpaframework-openai with the desired version in your conda.yaml file.
Robot Framework example usage
Python example usage
variable ROBOT_LIBRARY_DOC_FORMAT
variable ROBOT_LIBRARY_SCOPE
method authorize_to_azure_openai
Keyword for authorize to Azure OpenAI.
Parameters
- api_key β Your Azure OpenAI API key
- api_base β Your Endpoint URL. Example: https://docs-test-001.openai.azure.com/
- api_type β βazureβ
- api_version β β2023-05-15β
Robot Framework example:
Python example:
method authorize_to_openai
Keyword for authorize to OpenAI with your API key obtained from your account.
- Parameters: api_key β Your OpenAI API key
Robot Framework example:
Python example:
method chat_completion_create
Keyword for creating ChatGPT text completions using OpenAI or Azure OpenAI. Keyword returns the response as a string and the message history as a list.
Note. When using Azure OpenAI
you must provide the deployment_name
as the model
parameter instead of the model ID used with OpenAI
.
Parameters
- user_content β Text submitted to ChatGPT to generate completions.
- conversation β List containing the conversation to be continued. Leave empty for a new conversation.
- model β For
OpenAI
the ID of the model to use, e.g.gpt-4
orgpt-3.5-turbo
. ForAzure OpenAI
the Deployment name, e.g.myGPT4deployment
. - system_content β The system message helps set the behavior of the assistant.
- temperature β What sampling temperature to use between 0 to 2. Higher values means the model will take more risks.
- top_probability β An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass.
- frequency_penalty β Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far.
- presence_penalty β Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far.
Robot Framework example:
method completion_create
Keyword for creating text completions in OpenAI and Azure OpenAI. Keyword returns a text string.
Note. When using Azure OpenAI
you must provide the deployment_name
as the model
parameter instead of the model ID used with OpenAI
.
Parameters
- prompt β Text submitted to OpenAI for creating natural language.
- model β For
OpenAI
the ID of the model to use, e.g.text-davinci-003
. ForAzure OpenAI
the Deployment name, e.g.myDavinci3deployment
. - temperature β What sampling temperature to use. Higher values means the model will take more risks..
- max_tokens β The maximum number of tokens to generate in the completion..
- top_probability β Controls diversity via nucleus sampling. 0.5 means half of all likelihood-weighted options are considered.
- frequency_penalty β Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far.
- presence_penalty β Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far.
- result_format β Result format (string / json). Return just a string or the default JSON response.
Robot Framework example:
Python example:
method image_create
Keyword for creating one or more images using OpenAI. Keyword returns a list of urls for the images created.
Note. Keyword not supported in the Azure OpenAI
service.
Parameters
- prompt β A text description of the desired image(s). The maximum length is 1000 characters.
- size β Size of the files to be created. 256x256, 512x512, 1024x1024
- num_images β The number of images to generate. Must be between 1 and 10.
- result_format β Result format (list / json).
Robot Framework example:
Python example:
method image_create_variation
Keyword for creating one or more variations of a image. Keyword returns a list of urls for the images created. Source file must be a valid PNG file, less than 4MB, and square.
Note. Keyword not supported in the Azure OpenAI
service.
Parameters
- src_image β The image to use as the basis for the variation(s). Must be a valid PNG file, less than 4MB, and square.
- size β The size of the generated images. Must be one of 256x256, 512x512, or 1024x1024.
- num_images β The number of images to generate. Must be between 1 and 10
- result_format β Result format (list / json).
Robot Framework example:
Python example: