247 Commits

Author SHA1 Message Date
LeoLjl
6d621a9840
Add openai_client as property and update notebook. (#654)
* Initial commit

* Add code interpreter notebook.

* Update code interpreter notebook.

* Update notebook.

* Update agentchat_oai_code_interpreter.ipynb

* Update agentchat_oai_code_interpreter.ipynb

* Add openai_client as property.

---------

Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
2023-11-13 13:21:20 +00:00
LeoLjl
991d2066d5
Add code interpreter for GptAssistant Notebook. (#644)
* Initial commit

* Add code interpreter notebook.

* Update code interpreter notebook.

* Update notebook.

* Update agentchat_oai_code_interpreter.ipynb

* Update agentchat_oai_code_interpreter.ipynb

---------

Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
2023-11-13 04:02:38 +00:00
Ian
9a216b1deb
Openai assistant function usage notebook (#639)
* add oai assistant function call

* polish

* add titles

* polish

* Update notebook/agentchat_oai_assistant_function_call.ipynb

Co-authored-by: Chi Wang <wang.chi@microsoft.com>

---------

Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-11-12 17:59:46 +00:00
gagb
032c05e954
Add basic notebook for gptassistant (#636)
* 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>
2023-11-12 17:07:10 +00:00
Li Jiang
ff414892c4
Fix docstring of get_or_create (#583)
* Fix docstring of get_or_create

* Improve docstring
2023-11-12 03:10:58 +00:00
Yiran Wu
805d8452c4
Fix test error of compressible agent (#631)
* fix bug in test

* update workflow

* update

* deepcopy to copy
2023-11-11 19:57:14 +00:00
Andreas Volkmann
b1e69bf2f2
Update oai_completion.ipynb (#623)
Missing import
2023-11-11 00:50:59 +00:00
Yiran Wu
19ea8b8b7a
Add CompressibleAgent (#443)
* api_base -> base_url (#383)

* InvalidRequestError -> BadRequestError (#389)

* remove api_key_path; close #388

* close #402 (#403)

* openai client (#419)

* openai client

* client test

* _client -> client

* _client -> client

* extra kwargs

* Completion -> client (#426)

* Completion -> client

* Completion -> client

* Completion -> client

* Completion -> client

* support aoai

* fix test error

* remove commented code

* support aoai

* annotations

* import

* reduce test

* skip test

* skip test

* skip test

* debug test

* rename test

* update workflow

* update workflow

* env

* py version

* doc improvement

* docstr update

* openai<1

* add compressibleagent

* revise doc, add tests, add example

* fix link

* fix link

* fix link

* remove test

* update doc

* update doc

* add tiktoken to dependency

* filter_func

* async test

* dependency

* revision

* migration guide (#477)

* migration guide

* change in kwargs

* simplify header

* update optigude description

* update for dev

* revision

* revision

* allow not compressing last n msgs

* update

* correct merge

* update test workflow

* check test

* update for test

* update

* update notebook

* update

* fix bug

* update

* update

* update

* check to "pull_request_target" in contrib-openai

---------

Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-11-10 04:11:28 +00:00
Chi Wang
dfcbea9777
seed -> cache_seed (#600) 2023-11-08 23:39:02 +00:00
Joshua Kim
2a96e4d9d2
Notebook/hierarchy flow (#482)
* 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>
2023-11-07 22:06:45 +00:00
Beibin Li
b41b366549
Large Multimodal Models in AgentChat (#554)
* 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>
2023-11-06 21:33:51 +00:00
Chi Wang
306ac4d7f7
copy dicts before modifying (#551)
* copy dicts before modifying

* update notebooks

* update notebooks

* close #567
2023-11-06 21:14:05 +00:00
Chi Wang
c4f8b1c761
Dev/v0.2 (#393)
* api_base -> base_url (#383)

* InvalidRequestError -> BadRequestError (#389)

* remove api_key_path; close #388

* close #402 (#403)

* openai client (#419)

* openai client

* client test

* _client -> client

* _client -> client

* extra kwargs

* Completion -> client (#426)

* Completion -> client

* Completion -> client

* Completion -> client

* Completion -> client

* support aoai

* fix test error

* remove commented code

* support aoai

* annotations

* import

* reduce test

* skip test

* skip test

* skip test

* debug test

* rename test

* update workflow

* update workflow

* env

* py version

* doc improvement

* docstr update

* openai<1

* add tiktoken to dependency

* filter_func

* async test

* dependency

* migration guide (#477)

* migration guide

* change in kwargs

* simplify header

* update optigude description

* deal with azure gpt-3.5

* add back test_eval_math_responses

* timeout

* Add back tests for RetrieveChat (#480)

* Add back tests for RetrieveChat

* Fix format

* Update dependencies order

* Fix path

* Fix path

* Fix path

* Fix tests

* Add not run openai on MacOS or Win

* Update skip openai tests

* Remove unnecessary dependencies, improve format

* Add py3.8 for testing qdrant

* Fix multiline error of windows

* Add openai tests

* Add dependency mathchat, remove unused envs

* retrieve chat is tested

* bump version to 0.2.0b1

---------

Co-authored-by: Li Jiang <bnujli@gmail.com>
2023-11-04 04:01:49 +00:00
Jason Holtkamp
55d27cccc9
Added example .txt file for agentchat_langchain sample notebook (#373)
* Added example .txt file for agentchat_langchain sample notebook

* Update radius.txt

---------

Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-11-02 05:34:05 +00:00
Aaron
cde99e05c5
Update FAQ section in documentation (#390)
* UPDATE - FAQ section in documentation

* FIX - formatting test failure

* FIX - added disclaimer

* pre-commit

* Update website/docs/FAQ.md

Co-authored-by: Chi Wang <wang.chi@microsoft.com>

* Update website/docs/FAQ.md

Co-authored-by: Chi Wang <wang.chi@microsoft.com>

* Update website/docs/FAQ.md

Co-authored-by: Chi Wang <wang.chi@microsoft.com>

* UPDATE - notebook and FAQ information for config_list_from_models

---------

Co-authored-by: Ward <award40@LAMU0CLP74YXVX6.uhc.com>
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
Co-authored-by: Li Jiang <bnujli@gmail.com>
2023-10-27 12:52:26 +00:00
Anush
50ac547637
feat: Qdrant vector store support (#303)
* feat: QdrantRetrieveUserProxyAgent

* fix: QdrantRetrieveUserProxyAgent docstring

* chore: batch of 500 all CPU cores

* chore: conditional import for tests

* chore: config parallel, batch 100

* chore: collection creation params

* chore: conditonal payload indexing
fastembed import check

* docs: notebook for QdrantRetrieveUserProxyAgent

* docs: update docs link

* docs: notebook examples update

* chore: hnsw, payload index reference

* docs: notebook docs_path update

* Update test/agentchat/test_qdrant_retrievechat.py

Co-authored-by: Li Jiang <bnujli@gmail.com>

* chore: update notebook output

* Fix format

---------

Co-authored-by: Li Jiang <bnujli@gmail.com>
2023-10-25 05:08:43 +00:00
Beibin Li
9932945765
Supporting MultiModal Models: an example with LLaVA Notebook (#286)
* LMM notebook

* Use "register_reply" instead.

* Loop check LLaVA non-empty response

* Run notebook

* Make the llava_call function more flexible

* Include API for LLaVA from Replicate

* LLaVA data format update x2
1. prompt formater function
2. conversation format with SEP

* Coding example added

* Rename "ImageAgent" -> "LLaVAAgent"

* Docstring and comments updates

* Debug notebook: Remote LLaVA tested

* Example 1: remove system message

* MultimodalConversableAgent added

* Add gpt4v_formatter

* LLaVA: update example 1

* LLaVA: Add link to "Table of Content"
2023-10-24 05:26:41 +00:00
Li Jiang
f9acb69aea
Update docs in RetrieveChat notebook and Installation (#379)
* Update comments to make it more clear

* Update Installation
2023-10-23 22:28:38 +00:00
Shruti Patel
a8da3854c0
Update agentchat_langchain.ipynb (#355)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:58:01 +00:00
Shruti Patel
b43d2649cd
Fix the grammar and spelling in agentchat_human_feedback.ipynb (#354)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:57:57 +00:00
Shruti Patel
22635af482
Fix grammar and spelling in agentchat_planning.ipynb (#356)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:56:53 +00:00
Shruti Patel
4c8d4b0b53
Fix grammar in agentchat_stream.ipynb (#357)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:49:49 +00:00
Shruti Patel
1c7fbe5acf
Improve readability for agentchat_two_users.ipynb (#361)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:46:07 +00:00
Shruti Patel
5c2cd99ce8
Fix grammar for agentchat_web_info.ipynb (#362)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:35:29 +00:00
Shruti Patel
a2aa911647
Improve readability in oai_completion.ipynb (#364)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-22 04:28:35 +00:00
Shruti Patel
da88d6379c
Improve readability in oai_openai_utils.ipynb (#365) 2023-10-22 04:20:04 +00:00
Shruti Patel
61ac64081f
Improve readability in agentchat_groupchat_research.ipynb (#350)
* Improve readability in agentchat_groupchat_research.ipynb

* Undo updates to system message.
2023-10-22 00:46:04 +00:00
Shruti Patel
ec423ddf07
Improve readability for agentchat_function_call.ipynb (#347) 2023-10-22 00:26:34 +00:00
Shruti Patel
15ff52a52c
Fix grammar and spelling in agentchat_chess.ipynb (#346) 2023-10-22 00:22:25 +00:00
Shruti Patel
ca2e0b889e
Update agentchat_MathChat.ipynb (#341) 2023-10-21 23:56:46 +00:00
Shruti Patel
58b8c52851
Update agentchat_auto_feedback_from_code_execution.ipynb (#342)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-21 23:56:01 +00:00
Sean Connelly
df4882524f
Resolves Typo Correction #336 (#338)
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-21 18:46:14 +00:00
Ricky Loynd
d22b6b2006
TeachableAgent (#278)
* Initial commit.

* Disable LLM response caching.

* Add teachability option to setup.py

* Modify test to use OAI_CONFIG_LIST as suggested in the docs.

* Expand unit test.

* Complete unit test.

* Add filter_dict

* details

* AnalysisAgent

* details

* More documentation and debug output.

* Support retrieval of any number of relevant memos, including zero.

* More robust analysis separator.

* cleanup

* teach_config

* refactoring

* For robustness, allow more flexibility on memo storage and retrieval.

* de-dupe the retrieved memos.

* Simplify AnalysisAgent. The unit tests now pass with gpt-3.5

* comments

* Add a verbosity level to control analyzer messages.

* refactoring

* comments

* Persist memory on disk.

* cleanup

* Use markdown to format retrieved memos.

* Use markdown in TextAnalyzerAgent

* Add another verbosity level.

* clean up logging

* notebook

* minor edits

* cleanup

* linter fixes

* Skip tests that fail to import openai

* Address reviewer feedback.

* lint

* refactoring

* Improve wording

* Improve code coverage.

* lint

* Use llm_config to control caching.

* lowercase notebook name

* Sort out the parameters passed through to ConversableAgent, and supply full docstrings for the others.

* lint

* Allow TextAnalyzerAgent to be given a different llm_config than TeachableAgent.

* documentation

* Modifications to run openai workflow.

* Test on just python 3.10.
Replace agent with agent teachable_agent as recommended.

* Test on python 3.9 instead of 3.10.

* Remove space from name -> teachableagent

---------

Co-authored-by: Li Jiang <bnujli@gmail.com>
Co-authored-by: Chi Wang <wang.chi@microsoft.com>
2023-10-21 02:27:10 +00:00
Li Jiang
88ebb77048
Add group chat and retrieve agent example (#227)
* Add group chat and retrieve agent example

* Fix link and models

* Support call rag in a group chat and not init with rag

* Fix n_results logic

* Update notebook

* Fix format

* Improve wording

* Update variable name

* Revert to main

* Update function call

* Update keys

* Update contents

* Update contents
2023-10-17 20:31:27 +00:00
Chi Wang
294e006ac9
Lancgain tool bridge (#262) (#263)
* Added a LangChain tooling bridge example

* Updated Doco

* Update agentchat_langchain.ipynb

remove key

---------

Co-authored-by: Elliot Wood <gigaflare_elliot@hotmail.com>
Co-authored-by: Li Jiang <lijiang1@microsoft.com>
2023-10-16 23:23:27 +00:00
Sheetali Maity
4fb2f1f449
Added figure to notebook (#246)
Co-authored-by: Li Jiang <lijiang1@microsoft.com>
2023-10-16 17:20:53 +00:00
Qingyun Wu
6156faaa0a
Typo (#234)
* fix typo

* wording

* typo
2023-10-13 22:07:17 +00:00
Shruti Patel
c46f8e54f1
Spelling fixes. (#220)
Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
2023-10-13 21:34:15 +00:00
Ikko Eltociear Ashimine
688cf44d0e
Fix typo in agentchat_MathChat.ipynb (#191)
requries -> requires
2023-10-10 17:43:55 +00:00
lars.gersmann
62b6357294
docs: typo fixed (#129) 2023-10-07 04:04:22 +00:00
Aaron
5c2a268d95
openai_utils.py - functionality for instantiating config_list with a .env file (#68)
* FORMATTING

* UPDATE - OAI __init__.py

* ruff

* ADD - notebook covering oai API configuration options and their different purposes

* ADD openai util updates so that the function just assumes the same environment variable name for all models, also added functionality for adding API configurations like api_base etc.

* ADD - updates to config_list_from_dotenv and tests for openai_util testing, update example notebook

* UPDATE - added working config_list_from_dotenv() with passing tests, and updated notebook

* UPDATE - code and tests to potentially get around the window build permission error, used different method of producing temporary files

---------

Co-authored-by: Ward <award40@LAMU0CLP74YXVX6.uhc.com>
2023-10-05 04:45:11 +00:00
Aaron
4adbffa94b
retrieve_utils.py - Updated.py to have the ability to parse text from PDF Files (#50)
* UPDATE - Updated retrieve_utils.py to have the ability to parse text from pdf files

* UNDO - change to recursive condition

* UPDATE - updated agentchat_RetrieveChat.ipynb to clarify which file types are accepted to be in the docs path

* ADD - missing import

* UPDATE - setup.py to have PyPDF2 in retrievechat

* RE-ADD - urls

* ADD - tests for retrieve utils, and removed deprecated PyPdf2

* Update agentchat_RetrieveChat.ipynb

* Update retrieve_utils.py

Fix format

* Update retrieve_utils.py

Replace print with logger

* UPDATE - added more specific exception to PDF decryption try/catch

* FIX - typo, return statement at wrong indentation in extract_text_from_pdf

---------

Co-authored-by: Ward <award40@LAMU0CLP74YXVX6.uhc.com>
Co-authored-by: Li Jiang <bnujli@gmail.com>
2023-10-01 10:22:58 +00:00
Juanma Cuevas
d802b7ae04
Improves clarity and fixes punctuation in README and Multi-agent documentation (#40)
* Improves clarity and fixes punctuation in README and Multi-agent documentation

* fix broken colab link to agentchat_groupchat_research.ipynb (others are fine)

* fix typos, improves readability
2023-09-29 17:59:30 +00:00
Chi Wang
402c5bf8d1
Fix bug for windows and improve sample code (#38)
* fix bug for windows

* fix bug for windows

* more clear example

* link to example

* add test

* format

* comment

* fix assertion error

* fix test error and links

---------

Co-authored-by: Chi Wang (MSR) <chiw@microsoft.com>
2023-09-28 20:14:36 +00:00
Chi Wang
ddf10044a1 cleanup 2023-09-27 16:29:12 +00:00
Chi Wang
8e9cda716e Merge branch 'main' of https://github.com/microsoft/autogen 2023-09-27 04:22:54 +00:00
Chi Wang
9f3af1ef80 cleanup 2023-09-27 04:20:22 +00:00
Li Jiang
11088181b6
Improve RetrieveChat (#6)
* Upsert in batch

* Improve update context, support customized answer prefix

* Update tests

* Update intermediate answer

* Fix duplicate intermediate answer, add example 6 to notebook

* Add notebook results

* Works better without intermediate answers in the context

* Bump version to 0.1.2

* Remove commented code and add descriptions to _generate_retrieve_user_reply

---------

Co-authored-by: Qingyun Wu <qingyun.wu@psu.edu>
2023-09-27 01:22:50 +00:00
Chi Wang
23ceac0fe0 cleanup 2023-09-25 21:42:24 +00:00
Chi Wang
efa8213d9d cleanup 2023-09-21 15:40:14 +00:00