FME Version
Introduction
In 2023, FME introduced the ability to use AI Assist to help build SQL Statements, Regular Expressions (RegEx), and Python scripts. AI Assist is ready and available to help you easily generate scripts for your queries or custom functionality in FME. This article details all the frequently asked questions from our users as well as links to various different how-to resources and more.
FAQs
What is the AI Assist?
AI Assist is a generative AI powered tool that helps FME users to create Python, RegEx, and SQL scripts in their respective editors. Upon providing a prompt, users will be returned a script/query that best matches their request.
Where is AI Assist available in FME?
Currently, AI Assist is available in transformers and formats (readers/writers) that support the use of Regular Expressions, Python, and SQL.
How does the AI Assist work?
AI Assist is a generative AI powered tool, which means you can provide the AI with a prompt and it will return a script/query relative to what you requested.
For example, you could ask AI Assist to generate a SQL statement using standard English - “Generate me a query that retrieves all the countries with over 1.5 million in population”. The AI Assist will then return a SQL statement that will query for the information you requested. For a more in-depth example, take a look at this article.
What AI Service does the AI Assist use?
AI Assist uses the Azure OpenAI service.
What Model does the AI Assist use? How often is the service & model updated?
AI Assist currently uses gpt-4-turbo. We trial, evaluate, and perform quality assurance tests before using new services & models.
Can I use my own service & model?
If you wish to authenticate with your own OpenAI or Azure OpenAI Account, then you can do so by checking the Use My API Key at the bottom of the AI Assist window. You will be required to create an OpenAI or Azure OpenAI web connection. When creating the web connection, you can specify the model to use. General documentation on specifying an AI Assist connection can be found here.
- Azure OpenAI: Most information required for creating an Azure OpenAI connection can be found in Azure Portal for the OpenAI resource. The Azure OpenAI service REST API documentation contains information on valid values for the API Version parameter.
- OpenAI: Information required for creating an OpenAI connection can be found in the OpenAI Platform website.
Using your own service and model is intended to provide users with the option to use a different service & model than the one provided by FME, or as a fallback option if the FME AI Service goes down.
When using your own service & model, the request is still routed through the FME AI Service. The AI Assist prompt will be sent through the FME AI Service server and then to the AI Service specified in your web connection. The AI Service you specified must be reachable by the FME AI Service otherwise the request will timeout.
Below is a diagram of the routing of the AI Assist prompt when using your own service & model.
Can I use services other than OpenAI?
Currently, AI Assist in FME only supports OpenAI & Azure OpenAI services.
If Safe Software updates the service, does it update it for old versions of FME?
Yes, updates to the service and model are implicit, meaning that old versions of FME will retrieve the latest model available. No FME version updates are required.
Can I provide feedback on AI Assist?
After clicking Generate in the AI Assist window, you will have the option to click the thumbs up or thumbs down icon to provide feedback on the response.
If you have more comprehensive feedback, please leave a comment in the AI Assist Community Megathread. If you have ideas on how AI Assist could also improve FME, please let us know in the megathread too.
Can I disable AI Assist?
In FME 2024.1, we introduced the ability to disable AI Assist through the FME Options menu. If you would like to block AI Assist across your organization, you can block access to the fme-ai-service.safe.com domain via a firewall. If Workbench cannot make requests to that URL, it will automatically hide the AI Assist feature.
Why is AI Assist in Tech Preview?
AI assist is currently under active development. This means you can expect changes to the current behavior for the time being, and should avoid using it in production environments.
What Information Does AI Assist Gather?
In order to improve the user experience for AI Assist, we gather as much information as possible without including anything that would be personally identifiable. Here’s a list in no particular order:
- The entire request sent to the AI, which includes the database schema for SQL AI Assist if the "Send database schema to AI" option is enabled, and includes all the python code for Python AI Assist.
- The entire response returned from the AI.
- Whether the user saved the AI provided result or not.
- The final result of the parameter being edited by AI Assist when the dialog is closed (to see if the user made manual edits after accepting the AI generated result).
- A randomly generated user-id so we can anonymously identify each unique user
- The session ID generated by Workbench if the user has opted into our regular Workbench usage stats collection, so we can connect the two datasets.
- Which transformer the AI Assist was launched from
- What build of FME the request was made from
- Any feedback provided by the user from within the AI Assist Dialog (thumbs up/down buttons, with optional comment).
The following is information we explicitly do not collect:
- IP addresses
- Anything relating to the local machine/environment the request was made from (unless they have opted into Workbench usage stats collection which includes some of these things)
- API keys for the user provided AI Instance if they are using the "Use My API Key" feature
- We do collect the other properties of the web connection though, which includes the following:
- For Azure OpenAI:
- URL
- Deployment name
- API Version
- For OpenAI:
- Model name
- Organization ID
- For Azure OpenAI:
Additional Resources
- Regular Expressions and FME: how to use AI Assist to build out Regular Expressions
- FME and SQL: how to use AI Assist to build out SQL queries
- 23.1 Release Webinar AI Assist Demo (Unrivalled Productivity): webinar detailing the use-cases for AI Assist in FME
- [Blog] AI Assist in FME
- AI Assist Megathread: FME Community thread for sharing feedback & asking questions related to AI Assist
- [Doc] AI Assist: documentation with further information on parameters pertaining to AI Assist
Comments
2 comments
Is there a way to disable AI Assistant for an enterprise deployment of FME Form? Example, we're using a Citrix based deployment and we don't want end users to have the ability to enable the AI Assistant on their own.
@mmccart
The option to disable the AI Assist could be done through registry edits, however users could still go back and re-enable it through the FME Options.
Our recommended solution would be to block access to the fme-ai-service.safe.com domain via a firewall. If Workbench cannot make requests to that URL, it will automatically hide the AI Assist feature.
Please sign in to leave a comment.