John Moto Greetings!
Please below answer for your queries.
The best method for you will depend on your specific needs and requirements.
- Creating one Assistant and uploading new CSV files every morning is a good option if you want to keep the same Assistant and have it access the most recent information. However, keep in mind that this method may result in a large number of input tokens being used, especially if the CSV files are large. This could become costly very quickly.
- Using function calling to allow the Assistant to download logs from your server as-needed is a good option if you want to reduce the number of input tokens being used. However, this method may result in each user having to ask for the data to be loaded before they can access it, resulting in at least one function/API call per user to get each type of data in order for the Assistant to utilize it.
- Creating a new Assistant every morning and uploading CSV files with the most recent information is also a good option if you want to ensure that the Assistant always has access to the most recent information. However, this method may result in a large number of input tokens being used, especially if you create a new Assistant every day.
In terms of cost-effectiveness, using function calling to allow the Assistant to download logs from your server as-needed may be the most cost-effective option, as it reduces the number of input tokens being used.
On the other hand, the issue with function calling is that each user would have to ask for the data to be loaded before they would have access to it, resulting in at least one function/API call per user to get each type of data in order for the Assistant to utilize it. And wouldn't that still generate a ton of input token usage after it brings back the data from the function call?
Yes, you are correct that using function calling to allow the Assistant to download logs from your server as-needed may result in each user having to ask for the data to be loaded before they can access it, resulting in at least one function/API call per user to get each type of data in order for the Assistant to utilize it. This could result in a large number of input tokens being used, especially if you have a large number of users.
However, keep in mind that the number of input tokens used will depend on the size of the data being downloaded and the number of users accessing it. If the data is small and only a few users are accessing it, then the number of input tokens used may not be significant. Additionally, you can optimize the function/API calls to minimize the number of input tokens used.
Overall, using function calling to allow the Assistant to download logs from your server as-needed may still be a cost-effective option, especially if you have a large number of users and the data being downloaded is small.
I hope this helps! Let me know if you have any further questions