AI Chat fails : Invalid schema for function 'create-records'

Hi there,

I’m facing a new problem (self-hosted version) : I can no more chat with AI in my space..

For any message, I get the following error, even for “hello” :

Invalid schema for function 'create-records': In context=('properties', 'records', 'items', 'items'), schema must have a 'type' key.

FYI : AI settings → OpenAI provider with models : gpt-5-mini-2025-08-07,gpt-4.1,gpt-4.1-mini,gpt-5.1-codex-mini

Hi ChrisHK, thanks for reporting this error. The Invalid schema for function message typically occurs when a specific model’s API handles tool-calling schemas differently than the system expects.

To help us troubleshoot this effectively, could you clarify exactly which model you currently have selected as your active Chat model?

BTW, we recently handled a similar issue that might be causing this schema error. As a quick troubleshooting step, could you try upgrading your self-hosted Teable instance to the latest version?

Also, please let us know your current Teable version number.

Hi @Leo ,

Thank you for your feedback.

The current version of my self-hosted Teable instance, deployed 1 week ago or so, is : 0.5.0-alpha+1.10.0-build.989 . I’m going to check if there’s a newer versio, and if there is, I will update my instance.

Regarding the AI Chat model : gpt-4.1 mini

Thank you !

Christophe

Hi @Leo

I’ve redeployed but I was already on the latest version of Teable. So, no change here.

I’ve set the “recommanded model” for Chat Model, so gpt-5.1-mini has been selected automatically, but I still get the same issue.

I’ve checked in OpenAI Logs, and I don’t see any error, so I guess the problem is not the Chat Model.

I’ve deactivated the Cloudflare’s “Bot Fight Mode”, as you recommanded to me, and this solved the download file issue I had previously. Could this be linked to the new issue I have ?

Thank you !

@Leo : in order to try to debug the issue, I’ve added another LLM provider : OpenRouter, with model set to openrouter/auto.

And the chat is now working.

So there’s an issue working with Teable + OpenAI provider.

Hi ChrisHK,

Thank you for the detailed information and your troubleshooting steps.

It looks like build.989 is not the most recent version. The latest builds are currently around 1080. You can view all available versions on GitHub Packages here: https://github.com/teableio/teable-enterprise/pkgs/container/teable-ee

Could you please try updating to the newest version to see if the issue persists? If you still encounter the same error after updating, please let us know and we will investigate this further.

Thanks again for your help.

Hi @Leo ,

Hmmm, weird.. I followed your docker install procedure here : Docker Deployment - Teable , and the container isn’t ghcr.io/teableio/teable-ee:latest but ghcr.io/teableio/teable:latest ..

So, how do you recomand to migrate from the teable:latest to the new (?) teable-ee:latest container ? Knowing that I have a business licence already paid / installed on my VPS.

Many thanks for your help !

Hi ChrisHK,

Actually, the ghcr.io/teableio/teable:latest and ghcr.io/teableio/teable-ee:latest images are the same. You do not need to change the image address or migrate anything in your deployment configuration.

I have encountered this situation before where pulling the latest tag doesn’t immediately fetch the newest build. I suggest waiting a little while and then pulling the image again (e.g., running docker compose pull) to update your instance.

Please let us know if the schema issue persists after you successfully update to the newer build. Thanks!

1 Like

Hi @Leo ,

I’ve updated Teable using docker compose pull, then docker compose up -d , but now, I can’t connect anymore, my account was not recognized for login..

Here’s why I get when I login :

In console.log :

It becomes a nightmare.. I’ve setup lot of data in my instance..

Can i reinstall my VPS and Teable, and re-use the same Business licence ??

@Leo , @Gary ,

After 15 minutes, the upgraded Teable instance is became “stable” again, I mean : I was able to login but everything has been wiped out! No more data.

Well, but worst : no more Business Licence set. So I’ve set my Business Licence again and … not accepted and I’m said that the licence ID does not match the instance ID !..

What can I do now ???

Please HELP.. the Teable upgrade completely wiped my ongoing instance and changed the instance ID ?!

Wow… During the upgrade, I ran the Docker Compose CLI… BIG mistake: I had two Teable instances running, and the unlicensed one was the second, but the one I connected via the interface (web)

After removing that second instance, I ran the upgrade twice via Dokploy, and on the second attempt the Teable version finally updated.

So… all good now. The Teable instance is upgraded and the license is active. Whew!

I know the Cloud option is recommended, but as an EU citizen handling EU citizens’ personal data, I simply can’t use any cloud app that isn’t GDPR-compliant..

Great to hear it’s resolved! :tada: Given GDPR and data compliance requirements, self-hosting is a solid approach.


:rocket: Standard Upgrade Procedure

To avoid “dual-instance” issues (license conflicts or port errors), follow these steps for future updates:

  1. Pull latest images: docker compose pull

  2. Stop old containers: docker compose down (Crucial step)

  3. Start new version: docker compose up -d

Run docker ps | grep teable before starting the new version to ensure no legacy containers are still running. This prevents your browser from connecting to an unlicensed old instance.


:robot: OpenAI LLM Status

Has the OpenAI LLM functionality been successfully run in the new version?

Thank you @Leo

Also, in case Teable is deployed using Dokploy (or any other remote docker installer) : DO NEVER UPDATE locally ! :slight_smile:

Regarding the OpenAI LLM functionality, OpenRouter is still enabled. I’ve to set OpenAI again and test. Let’s do it now !