Issue #241: Added progress bar updates and streaming to the summarize tool#245
Issue #241: Added progress bar updates and streaming to the summarize tool#245TikaaVo wants to merge 1 commit into
Conversation
a8adaaf to
bb4b2d1
Compare
Signed-off-by: TikaaVo <tikavod6@gmail.com>
|
Just a note for information of anyone viewing this PR: This is a PR made as part of a job application process and will be reviewed by @oleksandr-nc , according to the candidate done in a 4-hour time block. |
|
@TikaaVo, thank you for this pull request, and for the detailed writeup A couple of questions before we go further:
|
@oleksandr-nc, thank you for the review and comment.
|
|
Thanks @TikaaVo, can I ask you a bit more about both points? Regarding question 1 - your thoughts on Regarding question 2 - agreed, and your throttling options all help. |
|
@oleksandr-nc Thanks for the engagement, I'd be happy to develop further.
|
|
Hello there, We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process. Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6 Thank you for contributing to Nextcloud and we hope to hear from you soon! (If you believe you should not receive this message, you can add yourself to the blocklist.) |
Refers to #241 .
This is a summary and the images, see MARKUP.md for the full report.
I set up the environment locally, then worked on the summarize tool. I made it accept
ncandtask_idsince those are necessary to callset_progress, then I extractedmax_tokensfrom the model config and passed it as well to use as the estimate. While max_tokens is a very conservative estimate, as most responses never hit it, meaning that most of the time a response will jump from a few percentage points to completeness or to the next split boundary, it is a safe estimate to use, although it could be altered in the future. I changed the generation to streaming, so that progress can be measured, and wrapped it in a helper function that updates the progress, then I tested it and found that the progress bar was moving successfully and text was being summarized correctly. However, this doesn't take the time required to merge splits into account, which can stall the progress bar at 100%.The GUI seemed to have an issue, as while my code passed progress in a range of 0.0 to 100.0, those numbers show up as divided by 100 in the GUI, i.e. a progress of 25% show up as 0.25% (see screenshot).