Merged `examples/function_calling_config.ipynb` into `examples/function_calling.ipynb` notebook
~Much stuff has changed, so I'm unsure what precisely to print in each cell.
So I took some stuff from ../quickstarts/Function_calling.ipynb route, as it's pretty well formatted, to print all the to and fro that went in the background for performing every user request~
- ~Updated SDK imports~
- Merged function_calling_config into function_calling notebook
- lint checked
- nbfmt
Check out this pull request on ![]()
See visual diffs & provide feedback on Jupyter Notebooks.
Powered by ReviewNB
@andycandy I'm sorry since you already worked on that notebook, but I think the best would be to move those explanations to the function calling notebook as I don't think it really makes sense to have 2 separate ones. I'll still add some comments in the current notebook so that you can do it right the first time :)
@andycandy I'm sorry since you already worked on that notebook, but I think the best would be to move those explanations to the function calling notebook as I don't think it really makes sense to have 2 separate ones. I'll still add some comments in the current notebook so that you can do it right the first time :)
I have merged both these notebooks into one @Giom-V
Thanks a lot @andycandy. I was not expecting you to start refactoring the notebook that much (I was expecting a copy-pasting of the other notebook at the end of this one).
That wasn't an easy review to do (at work I'd have jumped into a call to explain live), so I'm not sure if my comments are really clear, but in the end it all comes down to the order in which we want to introduce and explain stuff.
I'd say we need to start simple, with a simple example just showing the final output, that can be used to introduce what FC is, why using chat, how to define the functions, etc... Then we should explain that with the SDK it has Automatic FC, then show manual FC if auto-FC is not available, then I guess the order is up to you between advanced use-cases (parallel/Compositional) and the modes. The whole goal is to take the reader by the hand and explain the concepts in order. In doubt you can just refer to the documentation does it as it was reworked last week.
@Giom-V, Thank you for giving such an in-depth review. I made notes for all the changes you wanted, restructured the whole notebook, and checked everything to ensure they are as you asked them to be. Please skim through them once.
@andycandy I made a couple of comments but it's shaping well. Now the progression of the guide makes sense. We're getting there :)
@Giom-V Tried to implement all your suggestions, however, I'd request you to look into that 'any' mode function_calling_config parameters issue
@Giom-V Tried to implement all your suggestions, however, I'd request you to look into that 'any' mode function_calling_config parameters issue
@andycandy I think we're good, except the little addition to explain what maximum_remote_calls does and why you need to set it when using ANY.
Ignore the format and lint errors, they are as expected.
@Giom-V Done!
Sorry @andycandy I think I modified some things for the 2.5 Flash launches and the merge is too complicated to do on github.
No worries @Giom-V, I can fix it :) Please gimme few mins
Done!
Sorry @andycandy I think I modified some things for the 2.5 Flash launches and the merge is too complicated to do on github.
Also, Is this the case with all other PRs submitted in this repo? I can fix their mergability as well if you say
@andycandy Finally merged! Thanks for the hard work!
My pleasure!