We did that, but dont see any errors at all. Maybe we are doing something wrong. Probably this is my timeouts, today a lot of cases when users return and messages stop loading.
@robogpt - maybe, maybe not. There are two errors showing up in the logs:
- Timeout errors.
- “Not Connected” errors - these happen when an app tries to run “Send Message w/ Server”, and the websocket isn’t open. You can catch this error in 2 ways:
- Preemptively, by running “Ensure Connected”, if “Data Container A’ Connected? is no”.
- Or after running “Send Message”. If “Result of Step 1’s error is not empty”, you can assume there was an issue with that request, and try it again, maybe with ensure connected.
If you’re doing one or both of these, let me know. I’ll keep digging, as well.
Hi all,
Just released another minor patch, 5.14.3. (release notes page is coming soon, don’t worry! )
- Data Container is now resizable. You can set it to 1x1, 0x0, or anything else (also responsive).
- Bug with “Max Input Tokens” is fixed. For some reason, this field wasn’t usable, and seemed to be locked. Fixed now.
- Bug with token count sometimes failing, after running “Ensure Connected”, is fixed. This may account for some of the missing messages we’ve been seeing, but probably not all.
still not working. Should be an automatic check. Also added information about connecting to requests. Because the errors were not corrected in the database. Also a lot of non sense messages (((((
@robotgpt - for that “Ensure Connected” event, are you running “every time”, or “just once”? I would include Ensure Connected in the workflow that includes the “Send Message w/ Server action,” and have there conditional there, rather than in its own workflow.
re: the automatic check, I’m not quite sure what you mean.
Would you like to have a call tomorrow, to see if we can sort this out? DM me if you like, and we can find a time.
@Shan @mayur @venutm @sonlovin @evren.ozbozdagli et al
Self-hosting the plugin on your own servers will be possible starting next week.
If you’re still interested, please DM me to discuss getting you set up. Thanks!
Made Connection Info to requests, and the chat does not work.
Without connection info, for any error, the information is not recorded in the database (the screen is to proof that we have errors check) .
How it is done with us: until this day, there was a check Ensure connection, by pressing the button send / regenerate / if suddenly the answer did not come for 3 seconds, and so on. Now placed in a separate Workflow action (permanently if the condition is met and there is no connect). Still doesn’t work.
@robogpt - I’m going to move this response to a DM thread, if you don’t mind. I think I can see at least part of the issue.
What is DM thread?
@robogpt - your direct messages (DM). If you click your user logo/icon in the top right (the purple “r”), you should see the thread there
I am having stability/reliability issues, is anyone else? My message success rate is about 50%.
Most of the time I get “failed to connect to server” and sometimes it’s “current fiber timed out”.
I am on version 5.14.2, using “gpt-3.5-turbo-16k”, based in AUS and I am using the “ensure connected” action before the “Send Message w/ Server” action.
I have tried using “gpt-3.5-turbo” (even worse reliability), and using a dummy connection “Send Message w/ Server” action on page load to no avail.
Any suggestions would be greatly appreciated. Cheers
Same, we can’t get any version to respond. And it throws no errors.
@josh23 @jaos.pcl @newinn - Hi all,
Sorry you’re seeing these issues. I tried increasing the timeout window for the API call last night to 45 seconds, and this seems to have caused more problems than it fixed.
That error you’re seeing Josh looks like the Send Message action is timing out after 30 seconds on Bubble’s side, though I’m not sure. (Bubble uses the Fibers library as part of it’s server-side actions, iirc)
I’ll be pushing an update to the server in about 5 minutes that should help with this, and I’ll look more deeply into it today, and will continue to monitor.
===========================
edit - update has been pushed. This should help with users on 5.12, 5.13 and 5.14. Please let me know if you continue to see the same issues. I’ll continue to investigate to see if there were any other issues at play, besides the timeout.
A couple of notes:
- If you’re running Ensure Connected, include a conditional that it will only run “If Data Container Connected? is no”.
- If you’re on v5.13. please update to 5.14, as it’s almost identical, but has some bugs fixed.
- If you’re on v5.12, and were seeing these issues, please DM me.
- If you’re seeing issues peculiar to your app, please DM me, instead of posting here. The mods don’t want this thread living at the top of the Showcase channel for support-related reasons
- For issues like the one above, where it seems to be at the plugin level, like above, I think its probably okay to post here.
Given how problematic issues of this sort are for folks, if this issue isn’t definitively resolved this week, we’ll look at a more substantial overhaul of the approach.
========================
edit 2: I think I’ve come up with solutions for the issues we were seeing his morning. It looks like we were getting 2 interacting errors: lost connections, and the OpenAI API service being unavailable, and that error was not being handled properly.
I’ll release an update later this afternoon, which will improve stability. Basically, we’ll get rid of the Ensure Connected action, and reconnection will happen automatically in the background (which should handle the connectivity issues), which should simplify your workflows, so you don’t have to include retries and conditionals for the workflow.
I’ve also added more error handling, especially for that “service unavailable” error, but also for more generic, non-specific errors, that should help solve things when we see issues.
==========================================
edit 3: the next update, v5.15.0 is ready to be released, and looks to have greatly improved the issues with timeouts, connection problems, and missing messages that have been cropping up lately. The update will be released tomorrow morning (Tuesday morning EST), and I’ll be available for troubleshooting when it goes live. Will post more details/release notes when the update is released.
Just one more day until Knox-level stability!
Thanks for the response. I ended up building a chat streaming service from scratch because the stability was concerning and we’re launching our product this week.
Regardless, I appreciate your thoughtful response, thanks for you time! I think the plugin is great and people seem to be loving it
Cheers,
Josh
Good luck with the launch!
Thank you! Appreciate your work!
Hey @launchable looking forward to the new update because I’m getting a lot more errors than usual from users now and it’s a bit concerning.
I’m on latest plug-in version.
My app has many different containers (it’s not a chat assistant) which each do a separate task.
I’m seeing a lot of “data container is not connected”. For some users they are getting it repeatedly whenever trying a new workflow (using a new data container that hasn’t been used yet) and it happens multiple times before possibly working (this happened to me just now in testing).
The workflows use Ensure connected without condition before the main action.
Last night I tried adding the “only when connected is No” to all of them but that was producing errors so I switched back to without condition as that had been working for me before.
Today however just loads of errors
Last night I was trying all sorts of things, like workflow delays, and I just couldn’t resolve things.
If you have any advice for me I’d really appreciate it.
@nathanielsmithies - Thanks for letting me know. And apologies for the grief.
I think you’re bumping into the same issues other users are seeing. I’m hopeful the update today will address these issues. See my response in DM for more details.
@nathanielsmithies @robogpt @jaos.pcl et al
Version 5.15.1 has just been released. (if you have already upgraded to 5.15.0, please update to 5.15.1 - it fixes a bug with the Connected? state)
The purpose of this update is to improve reliability and stability.
Two primary issues are addressed, and hopefully solved :
- Messages not appearing, and
- Data container connection issues
Important - The only change you need to make in your app is to remove Ensure Connected actions. This action has been removed from the plugin, and connectivity should now be handled more stably behind the scenes.
Related to this, there were issues with using “Data Container is Connected?” as a conditional. There were scenarios where this state wasn’t reliable, so workflows using this check would fail seemingly randomly. This should now be fixed as well; the connected state should more correctly represent the connection state of the container. Using this state should be less necessary, however, as I think most of us were using that state to determine whether to run “Ensure Connected”.
The update also includes better error handling and a few new types of errors:
-
OpenAI Service unavailable - sometimes the OpenAI API is not unavailable, usually due to high load on OpenAI’s servers, I think. The plugin will now try multiple times if this error occurs, and upon repeated failure, will trigger the event “Error - Open AI Unavailable”.
-
Timeouts - There are various ways timeouts can cause issues, and these should now be handled more gracefully. The main two sources of timeouts were:
-
When a user was on a page for awhile (say 20 mins), without issuing a request to Send Message. In these cases, the data container may have disconnected, so when they later attempted to send a request, it would fail. This has been made more robust. If you close your laptop and come back the next day, the data container should automatically reconnect seamlessly.
-
At the API level. Sometimes the OpenAI API takes awhile to respond - at times it takes upwards of 20 seconds. When using the ChatGPT interface, it will normally start streaming eventually, even if it takes 30 seconds to start. Once in a while, it will show an error message that you have to reload the page. But you’re usually pretty confident that at least the request went through. The plugin now attempts to handle slow-to-start requests in a similar way, and to handle cases where the OpenAI API times out. So even if it takes 25 seconds to start, it should still start. Please be aware of this when testing / developing, as it sometimes seems like the action hasn’t done anything, but in reality it’s just not yet started. In cases where we can’t connect after 30 seconds, the event “Error - Timeout” should be triggered.
- “Last Error” bug fixed - a lot of developers want to store a record of failure cases in their database, to send themselves an email, or to keep a log, etc. There was a bug causing this to not always update correctly when errors happened. This should now be improved.
Another update is that now “Stop Streaming” returns a message, which you can use to force Send Message w/ Server to run in the proper place in your workflow. If you’ve been following along with the order-of-operations issues some developers are seeing, you may know that Bubble runs server-side actions in parallel when it can, and sometimes this makes “Send Message” run before you want it to. The solution we’ve been using is to wrap Send Message in a custom event. This normally seems to work, but it’s a bit awkward. Another approach you can use now is to include a conditional on running “Send Message w/ Server”. Assuming step 1 of the workflow is Stop Streaming, you can make the condition “Only when Result of Step 1’s Stop Streaming Succeeded? is yes”. This does two things: it stops any running stream in the data container (which prevents a jumbled up mess of two or more requests coming in at once), and it makes the Send Message step wait for the result of Stop Stream. I have future plans to make this interruption even more robust server-side, so you never get the mixed streams, but this does a pretty good job at the moment.
======================================
So, to reiterate, you don’t need to do much to upgrade, mainly just remove Ensure Connected. And if you’re handling errors, you’ll probably want to double-check those as well, to make sure everything still works.
If you have any issues at all with the update, please feel free to DM me, and I’ll help you as quickly as I can. If you have any feedback, positive or negative, please feel free to share it here
Great) Deployed to Live, will see how it goes)