* Makes select_speaker more robust by checking for agents mentioned anywhere in the selection string. Addresses 663.
* Added test coverage for group chat mentions. Refactored mention counter to own function.
* Fixed pre-commit formatting.
* Fix some type annotations in agents
This fixes some errors in type annotations of `ConversableAgent`,
`UserProxyAgent`, `GroupChat` and `AssistantAgent` by adjusting the type
signature according to the actual implementation. There should be no
change in code behavior.
* Fix agent types in `GroupChat`
Some `Agent`s are actually required to be `ConversableAgent` because
they are used as one.
* Convert str message to dict before printing message
* Revert back to Agent for GroupChat
* GroupChat revert update
---------
Co-authored-by: Beibin Li <beibin79@gmail.com>
Co-authored-by: Beibin Li <BeibinLi@users.noreply.github.com>
* Added an 'auto' mode to last_n_messages
* Added tests for the last_n_messages = 'auto' mode
* Added test one additional test case that was overlooked.
* add doc for openai assistants
* Update README.md
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* add basic notebook
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* Refactor GPTAssistantAgent constructor to handle
instructions and overwrite_instructions flag
- Ensure that `system_message` is always consistent with `instructions`
- Ensure provided instructions are always used
- Add option to permanently modify the instructions of the assistant
* Improve default behavior
* Add a test; add method to delete assistant
* Add a new test for overwriting instructions
* Add test case for when no instructions are given for existing assistant
* Add pytest markers to test_gpt_assistant.py
* add test in workflow
* update
* fix test_client_stream
* comment out test_hierarchy_
* Add basic gptassistant notebook
- also improve logging in gpt assistant
* Update notebook/agentchat_oai_assistant_twoagents_basic.ipynb
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: kevin666aa <yrwu000627@gmail.com>
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
* Refactor GPTAssistantAgent constructor to handle
instructions and overwrite_instructions flag
- Ensure that `system_message` is always consistent with `instructions`
- Ensure provided instructions are always used
- Add option to permanently modify the instructions of the assistant
* Improve default behavior
* Add a test; add method to delete assistant
* Add a new test for overwriting instructions
* Add test case for when no instructions are given for existing assistant
* Add pytest markers to test_gpt_assistant.py
* add test in workflow
* update
* fix test_client_stream
* comment out test_hierarchy_
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: kevin666aa <yrwu000627@gmail.com>
* Handled possible IndexError in ConversableAgent.last_message method with more clear error message and added test in test_conversable_agent.py.
* Fix code formatting issues.
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* update return type of WolframAlphaAPIWrapper.run
* replace tuple by typing.Tuple
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: Yiran Wu <32823396+kevin666aa@users.noreply.github.com>
* Notebook showing how to use select speaker to control conversation flow.
* pytest associated with notebook.
* Added llm_config to assistant and user proxy agent, and clarified why we set use_cache to false, as requested in the review.
* Added a @pytest.mark.skipif decorator like other tests to run it only in one py version, 3.10
* Fixed config warning.
* Removd llm_config to UserProxyAgent
* Fixed minor typos.
* Reran outputs
* Remopved llm_config from user_proxy_agent
* Colab Badge link updated.
* pre-commit formatting changes.
* Fixed base_url
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
* LMM Code added
* LLaVA notebook update
* Test cases and Notebook modified for OpenAI v1
* Move LMM into contrib
To resolve test issues and deploy issues
In the future, we can install pillow by default, and then move back
LMM agents into agentchat
* LMM test setup update
* try...except... clause for LMM tests
* disable patch for llava agent test
To resolve dependencies issue for build
* Add LMM Blog
* Change docstring for LMM agents
* Docstring update patch
* llava: insert reply at position 1 now
So, it can still handle human_input_mode
and max_consecutive_reply
* Resolve comments
Fixing: typos, blogs, yml, and add OpenAIWrapper
* Signature typo fix for LMM agent: system_message
* Update LMM "content" from latest OpenAI release
Reference https://platform.openai.com/docs/guides/vision
* update LMM test according to latest OpenAI release
* Fully support GPT-4V now
1. Add a notebook for GPT-4V. LLava notebook also updated.
2. img_utils updated
3. GPT-4V formatter now return base64 image with mime type
4. Infer mime type directly from b64 image content (while loading
without suffix)
5. Test cases modified according to all the related changes.
* GPT-4V link updated in blog
---------
Co-authored-by: Chi Wang <wang.chi@microsoft.com>