Harnessing AI In FileMaker

By Craig Saunders and Oscar Frith-Macdonald, 28 August 2024

Let’s face it, the tech world is going crazy over “AI” with promises of exciting and seemingly unlimited potential on offer. There’s a lot of hype, and it’s hard to determine the reality of what ’ve got now, where it’s going, and what we can and should be doing with it all.

So our aim here is to “keep it real” and take a close and practical look at the ways we can use AI tools now to enhance FileMaker solutions. Our plan is to keep experimenting with the new stuff and to share here in our blog what we’re learning and what we’re thinking can be achieved.

As an example, the new Semantic Search capabilities mean we can provide the ability to search textual data stored in the database based on “meaning”. The implications of that are that maybe we could be capturing and storing more descriptive text in our solutions.

Let's Get It Started

To begin with, Oscar's written a great foundational piece looking at the way AI technologies are built. If you’re a developer, it really helps to have that stuff in mind, so we recommend starting there: 

 

Semantic Search

Our first "deep dive" is into semantic search with FileMaker: 

 

But as part of this intro, let’s first take stock…

What Have We Got Now?

The standard API capabilities already in FileMaker have allowed us to integrate external AI services but there are now new features coming to FileMaker which open doors for how we use AI right within the database. FileMaker also has had the ability to use machine learning (great for pattern recognition) for a long time.

But as of latest version of FileMaker 2024, we’re seeing the first specific tools for LLM and generative AI being added to the platform — Claris are rolling these new features out progressively with each new update. Here’s what the state of play is now:

Claris FileMaker Pro 2024 brings:

New AI script steps:

  • Configure AI Account: Simplifies setting up an AI account by name, integrated with providers like OpenAI. Custom models can be configured by entering the endpoint.
  • Insert Embedding: Embeds vector representations of input text into fields or variables within FileMaker Pro.
  • Insert Embedding in Found Set: Extends embedding insertion to all records within a found set, enhancing bulk data processing capabilities.
  • Perform Semantic Find: Executes semantic searches within specified fields, refining search results based on contextual meaning rather than exact keywords.
  • Set AI Call Logging: Controls the logging of AI calls for enhanced traceability and debugging.

New AI functions:

  • CosineSimilarity: Calculates similarity between two embedding vectors, aiding in data comparison and analysis. It returns the similarity as a number between -1 (opposite) and 1 (similar).
  • GetEmbedding: Retrieves vector representations of input text as container data using designated embedding models.
  • GetEmbeddingAsFile: Converts embedding vectors from text to binary container data format.
  • GetEmbeddingAsText: Converts embedding vectors from binary container data back to text format for easier manipulation and analysis.
  • GetTableDDL: provides table information in Data Definition Language (DDL) format, facilitating schema management and integration tasks.
  • GetTokenCount: Estimates token counts for specified text inputs, useful for AI model training and validation.
  • Get(LastStepTokensUsed): Retrieves details on tokens utilised in the last AI script step executed, aiding in script debugging and optimisation.

As you can see from this list, FileMaker is currently geared towards embedding vectorized LLM data and using that to perform semantic searches, so that’s what we’ll start with.

Before you dive in, here are a few considerations to keep in mind:

Cautions!

A general rule of thumb: Don't use AI to modify actual data in your systems.

As discussed in our previous article, it’s crucial not to allow AI to directly modify your FileMaker data due to the potential pitfalls. For instance, you should avoid letting an AI model calculate your average invoice amount or handle anything related to numerical data—tasks better suited to traditional tools in FileMaker. Remember, the AI models we’re working with are large language models, not mathematical models.

Instead, use AI to provide recommendations and insights, which you can then review and implement manually. AI can also be a great tool for summarising large blocks of text, though you may want to add an extra line at the end to state that this summary was produced by an AI model, similar to OpenAI’s DALL_E 3 adding an AI watermark in the metadata.

This approach ensures:

  • Accuracy: By reviewing AI recommendations, you can verify their accuracy before applying changes to your data.
  • Control: Maintaining manual control over data modifications prevents unintended consequences from AI errors or biases.
  • Transparency: Understanding and documenting the decision-making process ensures that changes to your data are transparent and justifiable.

If you are going to allow an AI to modify your data, it is important to keep an unmodified version of that data and have a human verify any modifications the AI makes.

Some Uses For AI In FileMaker

Now with the warning out of the way, what are some good uses of AI in your FileMaker solution?

1. Data Analysis and Reporting

AI can quickly analyse large datasets to identify patterns, trends, and anomalies that might not be immediately obvious to a user.

  • Generate Insights: Automatically produce comprehensive reports that highlight key performance indicators, trends, and forecasts within your FileMaker databases.
  • Anomaly Detection: Identify outliers and anomalies in your FileMaker data that could indicate errors or opportunities for further investigation.

2. Predictive Analytics

By using historical data, AI can make predictions about future outcomes. In FileMaker, predictive analytics can be applied to:

  • Sales Forecasting: Predict future sales based on past performance and current market trends within your FileMaker solutions.
  • Inventory Management: Forecast inventory needs to prevent overstocking or stockouts using your FileMaker data.

3. Enhanced Search and Retrieval

AI can improve the search capabilities of your FileMaker databases by understanding context and relevance, leading to more accurate and relevant results. In FileMaker, enhanced search functionalities can:

  • Semantic Search: Go beyond keyword matching to understand the intent behind a search query, providing a more accessible way to query the data in your solution.

4. Natural Language Interfaces

AI-powered natural language interfaces enable users to interact with FileMaker using everyday language. In FileMaker, natural language capabilities can:

  • Simplify Queries: Allow users to ask questions or make requests in plain language, which FileMaker can interpret and execute.

Where Can You Start?

While we did mention that AI can be used for data analysis, reporting, and predictive analytics, These are tasks more suited to the machine learning side of AI, and these tools have already existed in FileMaker for a long time. 

As previously mentioned, the new script steps introduced with FileMaker 2024 are geared towards embedding (or vectorizing) your data through a language model (LLM) and using that approach to perform semantic searches on it. So let’s dive into adding a semantic search to a FileMaker solution:

Diving into Semantic Search

 

 

 

Something to say? Post a comment...

Comments

No one has commented on this page yet.

RSS feed for comments on this page | RSS feed for all comments

Categories(show all)

Subscribe

Tags