* add client interface, response protocol, and move code into openai client class
* add ability to register custom client
* tidy up code
* adding checks and errors, and more unit tests
* remove code
* fix error msg
* add use_docer False in notebook
* better error message
* add another example to custom model notebook
* rename and have register_client take model name too
* make Client protocol and remove inheritance
* renames
* update notebook
* add link
* rename and more error checking for registered agents
* adding message retrieval to client protocol for more flexible response
* fix failing openai test
* api_type req made model_client_cls requirement
* notebook cleanup and added blog
* remove raise error if client list is empty - client list will never be empty it will have placeholders
* rename Client -> ModelClient
* add forgotten file
* fix test by fetching internal client
* Update autogen/oai/client.py
Co-authored-by: Eric Zhu <[email protected]>
* don't add retrieval function to cache
* added placeholder cllient class during initial client init, and rewrote registration
* fix spelling
* Update autogen/agentchat/conversable_agent.py
Co-authored-by: Chi Wang <[email protected]>
* type hints, small fixes, docstr comment
* fix api type checking
---------
Co-authored-by: Eric Zhu <[email protected]>
Co-authored-by: Chi Wang <[email protected]>