From d802b7ae0409fae9ed611ffb52d38b8349e34456 Mon Sep 17 00:00:00 2001 From: Juanma Cuevas Date: Fri, 29 Sep 2023 19:59:30 +0200 Subject: [PATCH 001/151] 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 --- README.md | 14 +++++++------- notebook/agentchat_groupchat_research.ipynb | 2 +- website/docs/Use-Cases/agent_chat.md | 14 +++++++------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 5d175e726e4..43abed8fb9f 100644 --- a/README.md +++ b/README.md @@ -26,15 +26,15 @@ This project is a spinoff from [FLAML](https://github.com/microsoft/FLAML). ## What is AutoGen -AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve task. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. +AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve tasks. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. ![AutoGen Overview](https://github.com/microsoft/autogen/blob/main/website/static/img/autogen_agentchat.png) -* AutoGen enables building next-gen LLM applications based on **multi-agent conversations** with minimal effort. It simplifies the orchestration, automation and optimization of a complex LLM workflow. It maximizes the performance of LLM models and overcome their weaknesses. +* AutoGen enables building next-gen LLM applications based on **multi-agent conversations** with minimal effort. It simplifies the orchestration, automation and optimization of a complex LLM workflow. It maximizes the performance of LLM models and overcomes their weaknesses. * It supports **diverse conversation patterns** for complex workflows. With customizable and conversable agents, developers can use AutoGen to build a wide range of conversation patterns concerning conversation autonomy, the number of agents, and agent conversation topology. -* It provides a collection of working systems with different complexities. These systems span a **wide range of applications** from various domains and complexities. They demonstrate how AutoGen can easily support different conversation patterns. -* AutoGen provides a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` as an **enhanced inference API**. It allows easy performance tuning, utilities like API unification & caching, and advanced usage patterns, such as error handling, multi-config inference, context programming etc. +* It provides a collection of working systems with different complexities. These systems span a **wide range of applications** from various domains and complexities. This demonstrates how AutoGen can easily support diverse conversation patterns. +* AutoGen provides a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` as an **enhanced inference API**. It allows easy performance tuning, utilities like API unification and caching, and advanced usage patterns, such as error handling, multi-config inference, context programming, etc. AutoGen is powered by collaborative [research studies](https://microsoft.github.io/autogen/docs/Research) from Microsoft, Penn State University, and University of Washington. @@ -59,7 +59,7 @@ For LLM inference configurations, check the [FAQ](https://microsoft.github.io/au ## Quickstart -* Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools and human. +* Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools, and humans. By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), ```python from autogen import AssistantAgent, UserProxyAgent, config_list_from_json @@ -83,7 +83,7 @@ The figure below shows an example conversation flow with AutoGen. Please find more [code examples](https://microsoft.github.io/autogen/docs/Examples/AutoGen-AgentChat) for this feature. -* Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` with powerful functionalities like tuning, caching, error handling, templating. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets. +* Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` adding powerful functionalities like tuning, caching, error handling, and templating. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets. ```python # perform tuning config, analysis = autogen.Completion.tune( @@ -126,7 +126,7 @@ a CLA and decorate the PR appropriately (e.g., status check, comment). Simply fo provided by the bot. You will only need to do this once across all repos using our CLA. This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). -For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or +For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. # Legal Notices diff --git a/notebook/agentchat_groupchat_research.ipynb b/notebook/agentchat_groupchat_research.ipynb index 8d27935ae1e..e29ccafba1b 100644 --- a/notebook/agentchat_groupchat_research.ipynb +++ b/notebook/agentchat_groupchat_research.ipynb @@ -5,7 +5,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "\"Open" + "\"Open" ] }, { diff --git a/website/docs/Use-Cases/agent_chat.md b/website/docs/Use-Cases/agent_chat.md index 55bfb7ef02d..5f8d22619a4 100644 --- a/website/docs/Use-Cases/agent_chat.md +++ b/website/docs/Use-Cases/agent_chat.md @@ -10,8 +10,8 @@ This framework simplifies the orchestration, automation and optimization of a co AutoGen abstracts and implements conversable agents designed to solve tasks through inter-agent conversations. Specifically, the agents in AutoGen have the following notable features: -- Conversable: Agent in AutoGen are conversable, which means that any agent can send -and receive messages to and from the other agents to start or continue a conversation +- Conversable: Agents in AutoGen are conversable, which means that any agent can send +and receive messages from other agents to initiate or continue a conversation - Customizable: Agents in AutoGen can be customized to integrate LLMs, humans, tools, or a combination of them. @@ -21,9 +21,9 @@ The figure below shows the built-in agents in AutoGen. We have designed a generic `ConversableAgent` class for Agents that are capable of conversing with each other through the exchange of messages to jointly finish a task. An agent can communicate with other agents and perform actions. Different agents can differ in what actions they perform after receiving messages. Two representative subclasses are `AssistantAgent` and `UserProxyAgent`. -- The `AssistantAgent` is designed to act as an AI assistant, using LLMs by default but not requiring human input or code execution. It could write Python code (in a Python coding block) for a user to execute when a message (typically a description of a task that needs to be solved) is received. Under the hood, the Python code is written by LLM (e.g., GPT-4). It can also receive the execution results and suggest code with bug fix. Its behavior can be altered by passing a new system message. The LLM [inference](#enhanced-inference) configuration can be configured via `llm_config`. +- The `AssistantAgent` is designed to act as an AI assistant, using LLMs by default but not requiring human input or code execution. It could write Python code (in a Python coding block) for a user to execute when a message (typically a description of a task that needs to be solved) is received. Under the hood, the Python code is written by LLM (e.g., GPT-4). It can also receive the execution results and suggest corrections or bug fixes. Its behavior can be altered by passing a new system message. The LLM [inference](#enhanced-inference) configuration can be configured via `llm_config`. -- The `UserProxyAgent` is conceptually a proxy agent for humans, soliciting human input as the agent's reply at each interaction turn by default and also having the capability to execute code and call functions. The `UserProxyAgent` triggers code execution automatically when it detects an executable code block in the received message and no human user input is provided. Code execution can be disabled by setting `code_execution_config` to False. LLM-based response is disabled by default. It can be enabled by setting `llm_config` to a dict corresponding to the [inference](/docs/Use-Cases/enhanced_inference) configuration. When `llm_config` is set to a dict, `UserProxyAgent` can generate replies using an LLM when code execution is not performed. +- The `UserProxyAgent` is conceptually a proxy agent for humans, soliciting human input as the agent's reply at each interaction turn by default and also having the capability to execute code and call functions. The `UserProxyAgent` triggers code execution automatically when it detects an executable code block in the received message and no human user input is provided. Code execution can be disabled by setting the `code_execution_config` parameter to False. LLM-based response is disabled by default. It can be enabled by setting `llm_config` to a dict corresponding to the [inference](/docs/Use-Cases/enhanced_inference) configuration. When `llm_config` is set as a dictionary, `UserProxyAgent` can generate replies using an LLM when code execution is not performed. The auto-reply capability of `ConversableAgent` allows for more autonomous multi-agent communication while retaining the possibility of human intervention. One can also easily extend it by registering reply functions with the `register_reply()` method. @@ -44,7 +44,7 @@ user_proxy = UserProxyAgent(name="user_proxy") ### A Basic Two-Agent Conversation Example -Once the participating agents are constructed properly, one can start a multi-agent conversation session by an initialization step as shown in following code: +Once the participating agents are constructed properly, one can start a multi-agent conversation session by an initialization step as shown in the following code: ```python # the assistant receives a message from the user, which contains the task description user_proxy.initiate_chat( @@ -62,14 +62,14 @@ After the initialization step, the conversation could proceed automatically. Fin ### Supporting Diverse Conversation Patterns -#### Conversations with different autonomisity, and human involvement patterns +#### Conversations with different levels of autonomy, and human-involvement patterns On the one hand, one can achieve fully autonomous conversations after an initialization step. On the other hand, AutoGen can be used to implement human-in-the-loop problem-solving by configuring human involvement levels and patterns (e.g., setting the `human_input_mode` to `ALWAYS`), as human involvement is expected and/or desired in many applications. #### Static and dynamic conversations By adopting the conversation-driven control with both programming language and natural language, AutoGen inherently allows dynamic conversation. Dynamic conversation allows the agent topology to change depending on the actual flow of conversation under different input problem instances, while the flow of a static conversation always follows a pre-defined topology. The dynamic conversation pattern is useful in complex applications where the patterns of interaction cannot be predetermined in advance. AutoGen provides two general approaches to achieving dynamic conversation: -- Registered auto-reply. With the pluggable auto-reply function, one can choose to invoke conversations with other agents depending on the content of the current message and context. A working system demonstrating this type of dynamic conversation can be found in this code example, demonstrating a [dynamic group chat](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_groupchat.ipynb). In the system, we register an auto-reply function in the group chat manager, which lets LLM decide who will the next speaker be in a group chat setting. +- Registered auto-reply. With the pluggable auto-reply function, one can choose to invoke conversations with other agents depending on the content of the current message and context. A working system demonstrating this type of dynamic conversation can be found in this code example, demonstrating a [dynamic group chat](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_groupchat.ipynb). In the system, we register an auto-reply function in the group chat manager, which lets LLM decide who the next speaker will be in a group chat setting. - LLM-based function call. In this approach, LLM decides whether or not to call a particular function depending on the conversation status in each inference call. By messaging additional agents in the called functions, the LLM can drive dynamic multi-agent conversation. A working system showcasing this type of dynamic conversation can be found in the [multi-user math problem solving scenario](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_two_users.ipynb), where a student assistant would automatically resort to an expert using function calls. From 904b293aa47c0e87e27e127254ce4f17a391048c Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Sat, 30 Sep 2023 09:21:07 -0700 Subject: [PATCH 002/151] make retry_time configurable, add doc (#53) * make retry_time configurable, add doc * in seconds * retry_wait_time * bump version to 0.1.4 * remove .json * rename * time --- autogen/oai/completion.py | 41 +++++++++++--------- autogen/version.py | 2 +- test/oai/test_completion.py | 2 +- test/twoagent.py | 2 +- website/docs/FAQ.md | 10 +++++ website/docs/Use-Cases/enhanced_inference.md | 6 ++- 6 files changed, 40 insertions(+), 23 deletions(-) diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index 229820efbb3..af2088ad974 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -105,9 +105,9 @@ class Completion(openai_Completion): seed = 41 cache_path = f".cache/{seed}" # retry after this many seconds - retry_time = 10 + retry_wait_time = 10 # fail a request after hitting RateLimitError for this many seconds - retry_timeout = 120 + max_retry_period = 120 # time out for request to openai server request_timeout = 60 @@ -181,7 +181,7 @@ def _book_keeping(cls, config: Dict, response): def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_cache=True): """Get the response from the openai api call. - Try cache first. If not found, call the openai api. If the api call fails, retry after retry_time. + Try cache first. If not found, call the openai api. If the api call fails, retry after retry_wait_time. """ config = config.copy() openai.api_key_path = config.pop("api_key_path", openai.api_key_path) @@ -199,7 +199,8 @@ def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_ca ) start_time = time.time() request_timeout = cls.request_timeout - retry_timeout = config.pop("retry_timeout", cls.retry_timeout) + max_retry_period = config.pop("max_retry_period", cls.max_retry_period) + retry_wait_time = config.pop("retry_wait_time", cls.retry_wait_time) while True: try: if "request_timeout" in config: @@ -211,18 +212,18 @@ def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_ca APIConnectionError, ): # transient error - logger.info(f"retrying in {cls.retry_time} seconds...", exc_info=1) - sleep(cls.retry_time) + logger.info(f"retrying in {retry_wait_time} seconds...", exc_info=1) + sleep(retry_wait_time) except APIError as err: error_code = err and err.json_body and isinstance(err.json_body, dict) and err.json_body.get("error") error_code = error_code and error_code.get("code") if error_code == "content_filter": raise # transient error - logger.info(f"retrying in {cls.retry_time} seconds...", exc_info=1) - sleep(cls.retry_time) + logger.info(f"retrying in {retry_wait_time} seconds...", exc_info=1) + sleep(retry_wait_time) except (RateLimitError, Timeout) as err: - time_left = retry_timeout - (time.time() - start_time + cls.retry_time) + time_left = max_retry_period - (time.time() - start_time + retry_wait_time) if ( time_left > 0 and isinstance(err, RateLimitError) @@ -233,8 +234,8 @@ def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_ca if isinstance(err, Timeout): request_timeout <<= 1 request_timeout = min(request_timeout, time_left) - logger.info(f"retrying in {cls.retry_time} seconds...", exc_info=1) - sleep(cls.retry_time) + logger.info(f"retrying in {retry_wait_time} seconds...", exc_info=1) + sleep(retry_wait_time) elif raise_on_ratelimit_or_timeout: raise else: @@ -242,7 +243,7 @@ def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_ca if use_cache and isinstance(err, Timeout): cls._cache.set(key, response) logger.warning( - f"Failed to get response from openai api due to getting RateLimitError or Timeout for {retry_timeout} seconds." + f"Failed to get response from openai api due to getting RateLimitError or Timeout for {max_retry_period} seconds." ) return response except InvalidRequestError: @@ -743,9 +744,11 @@ def yes_or_no_filter(context, config, response): When set to False, -1 will be returned when all configs fail. allow_format_str_template (bool, Optional): Whether to allow format string template in the config. **config: Configuration for the openai API call. This is used as parameters for calling openai API. - Besides the parameters for the openai API call, it can also contain a seed (int) for the cache. - This is useful when implementing "controlled randomness" for the completion. - Also, the "prompt" or "messages" parameter can contain a template (str or Callable) which will be instantiated with the context. + The "prompt" or "messages" parameter can contain a template (str or Callable) which will be instantiated with the context. + Besides the parameters for the openai API call, it can also contain: + - `max_retry_period` (int): the total time (in seconds) allowed for retrying failed requests. + - `retry_wait_time` (int): the time interval to wait (in seconds) before retrying a failed request. + - `seed` (int) for the cache. This is useful when implementing "controlled randomness" for the completion. Returns: Responses from OpenAI API, with additional fields. @@ -763,9 +766,9 @@ def yes_or_no_filter(context, config, response): base_config = config.copy() base_config["allow_format_str_template"] = allow_format_str_template base_config.update(each_config) - if i < last and filter_func is None and "retry_timeout" not in base_config: - # retry_timeout = 0 to avoid retrying when no filter is given - base_config["retry_timeout"] = 0 + if i < last and filter_func is None and "max_retry_period" not in base_config: + # max_retry_period = 0 to avoid retrying when no filter is given + base_config["max_retry_period"] = 0 try: response = cls.create( context, @@ -1103,7 +1106,7 @@ def stop_logging(cls): class ChatCompletion(Completion): - """A class for OpenAI API ChatCompletion.""" + """A class for OpenAI API ChatCompletion. Share the same API as Completion.""" default_search_space = Completion.default_search_space.copy() default_search_space["model"] = tune.choice(["gpt-3.5-turbo", "gpt-4"]) diff --git a/autogen/version.py b/autogen/version.py index ae7362549b3..bbab0242f6a 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.3" +__version__ = "0.1.4" diff --git a/test/oai/test_completion.py b/test/oai/test_completion.py index 9ae952a0249..934dbadc901 100644 --- a/test/oai/test_completion.py +++ b/test/oai/test_completion.py @@ -227,7 +227,7 @@ def test_humaneval(num_samples=1): config_list=autogen.config_list_from_models(KEY_LOC, model_list=["gpt-3.5-turbo"]), prompt="", max_tokens=1, - retry_timeout=0, + max_retry_period=0, raise_on_ratelimit_or_timeout=False, ) # assert response == -1 diff --git a/test/twoagent.py b/test/twoagent.py index cc5c435d485..e2e1818e8ad 100644 --- a/test/twoagent.py +++ b/test/twoagent.py @@ -2,7 +2,7 @@ # Load LLM inference endpoints from an env variable or a file # See https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints -# and OAI_CONFIG_LIST_sample.json +# and OAI_CONFIG_LIST_sample config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST") assistant = AssistantAgent("assistant", llm_config={"config_list": config_list}) user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding"}) diff --git a/website/docs/FAQ.md b/website/docs/FAQ.md index 0e77ad275f3..3cd0ae048fe 100644 --- a/website/docs/FAQ.md +++ b/website/docs/FAQ.md @@ -99,3 +99,13 @@ You can also explicitly specify that by: ```python assistant = autogen.AssistantAgent(name="assistant", llm_config={"api_key": ...}) ``` + +## Handle Rate Limit Error and Timeout Error + +You can set `retry_wait_time` and `max_retry_period` to handle rate limit error. And you can set `request_timeout` to handle timeout error. They can all be specified in `llm_config` for an agent, which will be used in the [`create`](/docs/reference/oai/completion#create) function for LLM inference. + +- `retry_wait_time` (int): the time interval to wait (in seconds) before retrying a failed request. +- `max_retry_period` (int): the total timeout (in seconds) allowed for retrying failed requests. +- `request_timeout` (int): the timeout (in seconds) sent with a single request. + +Please refer to the [documentation](/docs/Use-Cases/enhanced_inference#runtime-error) for more info. diff --git a/website/docs/Use-Cases/enhanced_inference.md b/website/docs/Use-Cases/enhanced_inference.md index d50d67b81c5..0d33fa18137 100644 --- a/website/docs/Use-Cases/enhanced_inference.md +++ b/website/docs/Use-Cases/enhanced_inference.md @@ -123,7 +123,11 @@ API call results are cached locally and reused when the same request is issued. ### Runtime error -It is easy to hit error when calling OpenAI APIs, due to connection, rate limit, or timeout. Some of the errors are transient. `autogen.Completion.create` deals with the transient errors and retries automatically. Initial request timeout, retry timeout and retry time interval can be configured via `request_timeout`, `retry_timeout` and `autogen.Completion.retry_time`. +It is easy to hit error when calling OpenAI APIs, due to connection, rate limit, or timeout. Some of the errors are transient. `autogen.Completion.create` deals with the transient errors and retries automatically. Request timeout, max retry period and retry wait time can be configured via `request_timeout`, `max_retry_period` and `retry_wait_time`. + +- `request_timeout` (int): the timeout (in seconds) sent with a single request. +- `max_retry_period` (int): the total time (in seconds) allowed for retrying failed requests. +- `retry_wait_time` (int): the time interval to wait (in seconds) before retrying a failed request. Moreover, one can pass a list of configurations of different models/endpoints to mitigate the rate limits. For example, From b06919bb76e73ecb9ca3c8724328a535051f5b20 Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Sun, 1 Oct 2023 10:00:00 +0800 Subject: [PATCH 003/151] Update no_update_context, fix upsert docs (#52) * Update no_update_context, fix upsert docs * Recreate only once * Add comments to get_or_create --------- Co-authored-by: Chi Wang --- .../contrib/retrieve_user_proxy_agent.py | 15 ++++++++++----- autogen/retrieve_utils.py | 15 +++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py index 62d9ffd93bb..11193a91e04 100644 --- a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py +++ b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py @@ -125,7 +125,9 @@ def __init__( - customized_prompt (Optional, str): the customized prompt for the retrieve chat. Default is None. - customized_answer_prefix (Optional, str): the customized answer prefix for the retrieve chat. Default is "". If not "" and the customized_answer_prefix is not in the answer, `Update Context` will be triggered. - - no_update_context (Optional, bool): if True, will not apply `Update Context` for interactive retrieval. Default is False. + - update_context (Optional, bool): if False, will not apply `Update Context` for interactive retrieval. Default is True. + - get_or_create (Optional, bool): if True, will create/recreate a collection for the retrieve chat. + This is the same as that used in chromadb. Default is False. **kwargs (dict): other kwargs in [UserProxyAgent](../user_proxy_agent#__init__). """ super().__init__( @@ -148,7 +150,8 @@ def __init__( self._embedding_model = self._retrieve_config.get("embedding_model", "all-MiniLM-L6-v2") self.customized_prompt = self._retrieve_config.get("customized_prompt", None) self.customized_answer_prefix = self._retrieve_config.get("customized_answer_prefix", "").upper() - self.no_update_context = self._retrieve_config.get("no_update_context", False) + self.update_context = self._retrieve_config.get("update_context", True) + self._get_or_create = self._retrieve_config.get("get_or_create", False) self._context_max_tokens = self._max_tokens * 0.8 self._collection = False # the collection is not created self._ipython = get_ipython() @@ -231,7 +234,7 @@ def _generate_retrieve_user_reply( config: Optional[Any] = None, ) -> Tuple[bool, Union[str, Dict, None]]: """In this function, we will update the context and reset the conversation based on different conditions. - We'll update the context and reset the conversation if no_update_context is False and either of the following: + We'll update the context and reset the conversation if update_context is True and either of the following: (1) the last message contains "UPDATE CONTEXT", (2) the last message doesn't contain "UPDATE CONTEXT" and the customized_answer_prefix is not in the message. """ @@ -247,7 +250,7 @@ def _generate_retrieve_user_reply( update_context_case2 = ( self.customized_answer_prefix and self.customized_answer_prefix not in message.get("content", "").upper() ) - if (update_context_case1 or update_context_case2) and not self.no_update_context: + if (update_context_case1 or update_context_case2) and self.update_context: print(colored("Updating context and resetting conversation.", "green"), flush=True) # extract the first sentence in the response as the intermediate answer _message = message.get("content", "").split("\n")[0].strip() @@ -286,7 +289,7 @@ def _generate_retrieve_user_reply( return False, None def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = ""): - if not self._collection: + if not self._collection or self._get_or_create: print("Trying to create collection.") create_vector_db_from_dir( dir_path=self._docs_path, @@ -296,8 +299,10 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = chunk_mode=self._chunk_mode, must_break_at_empty_line=self._must_break_at_empty_line, embedding_model=self._embedding_model, + get_or_create=self._get_or_create, ) self._collection = True + self._get_or_create = False results = query_vector_db( query_texts=[problem], diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index 5bb26461248..806834eb31c 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -208,18 +208,13 @@ def create_vector_db_from_dir( chunks = split_files_to_chunks(get_files_from_dir(dir_path), max_tokens, chunk_mode, must_break_at_empty_line) print(f"Found {len(chunks)} chunks.") - # upsert in batch of 40000 - for i in range(0, len(chunks), 40000): + # Upsert in batch of 40000 or less if the total number of chunks is less than 40000 + for i in range(0, len(chunks), min(40000, len(chunks))): + end_idx = i + min(40000, len(chunks) - i) collection.upsert( - documents=chunks[ - i : i + 40000 - ], # we handle tokenization, embedding, and indexing automatically. You can skip that and add your own embeddings as well - ids=[f"doc_{i}" for i in range(i, i + 40000)], # unique for each doc + documents=chunks[i:end_idx], + ids=[f"doc_{j}" for j in range(i, end_idx)], # unique for each doc ) - collection.upsert( - documents=chunks[i : len(chunks)], - ids=[f"doc_{i}" for i in range(i, len(chunks))], # unique for each doc - ) except ValueError as e: logger.warning(f"{e}") From 7112da6b7a07f4d001ef4ba90faa65f0ff9cca5b Mon Sep 17 00:00:00 2001 From: Ali Eren SALKIM <129160641+AlyrenN@users.noreply.github.com> Date: Sun, 1 Oct 2023 05:17:58 +0300 Subject: [PATCH 004/151] Update README.md (#54) README update for my profile <3 --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 43abed8fb9f..5b7840f3ce7 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,9 @@ user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "co user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stock price change YTD.") # This initiates an automated chat between the two agents to solve the task ``` +Multi-agent conversations: AutoGen agents can communicate with each other to solve tasks. This allows for more complex and sophisticated applications than would be possible with a single LLM. +Customization: AutoGen agents can be customized to meet the specific needs of an application. This includes the ability to choose the LLMs to use, the types of human input to allow, and the tools to employ. +Human participation: AutoGen seamlessly allows human participation. This means that humans can provide input and feedback to the agents as needed. This example can be run with ```python From 4adbffa94be0c1984f0ab76c0dbe854004dc04b9 Mon Sep 17 00:00:00 2001 From: Aaron Date: Sun, 1 Oct 2023 11:22:58 +0100 Subject: [PATCH 005/151] 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 Co-authored-by: Li Jiang --- autogen/retrieve_utils.py | 66 ++++++++++++++++-- notebook/agentchat_RetrieveChat.ipynb | 25 ++++++- setup.py | 6 +- test/test_files/example.pdf | Bin 0 -> 45917 bytes test/test_files/example.txt | 4 ++ test/test_retrieve_utils.py | 96 ++++++++++++++++++++++++++ 6 files changed, 185 insertions(+), 12 deletions(-) create mode 100644 test/test_files/example.pdf create mode 100644 test/test_files/example.txt create mode 100644 test/test_retrieve_utils.py diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index 806834eb31c..cd8ccbde2ed 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -8,9 +8,27 @@ from chromadb.api import API import chromadb.utils.embedding_functions as ef import logging +import pypdf + logger = logging.getLogger(__name__) -TEXT_FORMATS = ["txt", "json", "csv", "tsv", "md", "html", "htm", "rtf", "rst", "jsonl", "log", "xml", "yaml", "yml"] +TEXT_FORMATS = [ + "txt", + "json", + "csv", + "tsv", + "md", + "html", + "htm", + "rtf", + "rst", + "jsonl", + "log", + "xml", + "yaml", + "yml", + "pdf", +] def num_tokens_from_text( @@ -37,10 +55,10 @@ def num_tokens_from_text( tokens_per_message = 4 # every message follows <|start|>{role/name}\n{content}<|end|>\n tokens_per_name = -1 # if there's a name, the role is omitted elif "gpt-3.5-turbo" in model or "gpt-35-turbo" in model: - print("Warning: gpt-3.5-turbo may update over time. Returning num tokens assuming gpt-3.5-turbo-0613.") + logger.warning("Warning: gpt-3.5-turbo may update over time. Returning num tokens assuming gpt-3.5-turbo-0613.") return num_tokens_from_text(text, model="gpt-3.5-turbo-0613") elif "gpt-4" in model: - print("Warning: gpt-4 may update over time. Returning num tokens assuming gpt-4-0613.") + logger.warning("Warning: gpt-4 may update over time. Returning num tokens assuming gpt-4-0613.") return num_tokens_from_text(text, model="gpt-4-0613") else: raise NotImplementedError( @@ -119,15 +137,51 @@ def split_text_to_chunks( return chunks +def extract_text_from_pdf(file: str) -> str: + """Extract text from PDF files""" + text = "" + with open(file, "rb") as f: + reader = pypdf.PdfReader(f) + if reader.is_encrypted: # Check if the PDF is encrypted + try: + reader.decrypt("") + except pypdf.errors.FileNotDecryptedError as e: + logger.warning(f"Could not decrypt PDF {file}, {e}") + return text # Return empty text if PDF could not be decrypted + + for page_num in range(len(reader.pages)): + page = reader.pages[page_num] + text += page.extract_text() + + if not text.strip(): # Debugging line to check if text is empty + logger.warning(f"Could not decrypt PDF {file}") + + return text + + def split_files_to_chunks( files: list, max_tokens: int = 4000, chunk_mode: str = "multi_lines", must_break_at_empty_line: bool = True ): """Split a list of files into chunks of max_tokens.""" + chunks = [] + for file in files: - with open(file, "r") as f: - text = f.read() + _, file_extension = os.path.splitext(file) + file_extension = file_extension.lower() + + if file_extension == ".pdf": + text = extract_text_from_pdf(file) + else: # For non-PDF text-based files + with open(file, "r", encoding="utf-8", errors="ignore") as f: + text = f.read() + + if not text.strip(): # Debugging line to check if text is empty after reading + logger.warning(f"No text available in file: {file}") + continue # Skip to the next file if no text is available + chunks += split_text_to_chunks(text, max_tokens, chunk_mode, must_break_at_empty_line) + return chunks @@ -207,7 +261,7 @@ def create_vector_db_from_dir( ) chunks = split_files_to_chunks(get_files_from_dir(dir_path), max_tokens, chunk_mode, must_break_at_empty_line) - print(f"Found {len(chunks)} chunks.") + logger.info(f"Found {len(chunks)} chunks.") # Upsert in batch of 40000 or less if the total number of chunks is less than 40000 for i in range(0, len(chunks), min(40000, len(chunks))): end_idx = i + min(40000, len(chunks) - i) diff --git a/notebook/agentchat_RetrieveChat.ipynb b/notebook/agentchat_RetrieveChat.ipynb index 035dd01d869..60c2f8861d9 100644 --- a/notebook/agentchat_RetrieveChat.ipynb +++ b/notebook/agentchat_RetrieveChat.ipynb @@ -148,7 +148,30 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Accepted file formats for `docs_path`:\n", + "['txt', 'json', 'csv', 'tsv', 'md', 'html', 'htm', 'rtf', 'rst', 'jsonl', 'log', 'xml', 'yaml', 'yml', 'pdf']\n" + ] + } + ], + "source": [ + "# Accepted file formats for that can be stored in \n", + "# a vector database instance\n", + "from autogen.retrieve_utils import TEXT_FORMATS\n", + "\n", + "print(\"Accepted file formats for `docs_path`:\")\n", + "print(TEXT_FORMATS)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ diff --git a/setup.py b/setup.py index 1e036075a36..bb642af4da3 100644 --- a/setup.py +++ b/setup.py @@ -51,11 +51,7 @@ ], "blendsearch": ["flaml[blendsearch]"], "mathchat": ["sympy", "pydantic==1.10.9", "wolframalpha"], - "retrievechat": [ - "chromadb", - "tiktoken", - "sentence_transformers", - ], + "retrievechat": ["chromadb", "tiktoken", "sentence_transformers", "pypdf"], }, classifiers=[ "Programming Language :: Python :: 3", diff --git a/test/test_files/example.pdf b/test/test_files/example.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1327f9ef6d17faed10f17446c941c0ee80df1a97 GIT binary patch literal 45917 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 Date: Sun, 1 Oct 2023 19:56:49 +0800 Subject: [PATCH 006/151] Bump version to 0.1.5 (#60) --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index bbab0242f6a..1276d0254ff 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.4" +__version__ = "0.1.5" From c39bfcaa6ed283e84b017cdeaa947f4eedff0023 Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Sun, 1 Oct 2023 04:57:21 -0700 Subject: [PATCH 007/151] typing & docstr update (#59) * typing & docstr update * bump version to 0.1.5 --- autogen/agentchat/conversable_agent.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index fdf42f67b6a..84e7dea8dec 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -210,8 +210,8 @@ def max_consecutive_auto_reply(self, sender: Optional[Agent] = None) -> int: return self._max_consecutive_auto_reply if sender is None else self._max_consecutive_auto_reply_dict[sender] @property - def chat_messages(self) -> Dict[str, List[Dict]]: - """A dictionary of conversations from name to list of ChatCompletion messages.""" + def chat_messages(self) -> Dict[Agent, List[Dict]]: + """A dictionary of conversations from agent to list of messages.""" return self._oai_messages def last_message(self, agent: Optional[Agent] = None) -> Dict: From bf65b59b7986cf16caa80b1f7f70f5956e097745 Mon Sep 17 00:00:00 2001 From: Priyanshu Yashwant Deshmukh <69320370+priyansh4320@users.noreply.github.com> Date: Mon, 2 Oct 2023 02:48:55 +0530 Subject: [PATCH 008/151] Updated readme.md : seprated AutoGen and EcoOptGen also removed bibtex (#43) * Updated README.md added required changes to previous pull new changes : 1. A section containing citation to AutoGen and EcoOptiGen 2. Another section contain citation to MathChat ## Citation [AutoGen](https://arxiv.org/abs/2308.08155). AND [EcoOptiGen](https://arxiv.org/abs/2303.04673). ``` bibtex @inproceedings{wu2023autogen, title={AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation Framework}, author={Qingyun Wu and Gagan Bansal and Jieyu Zhang and Yiran Wu and Shaokun Zhang and Erkang Zhu and Beibin Li and Li Jiang and Xiaoyun Zhang and Chi Wang}, year={2023}, eprint={2308.08155}, archivePrefix={arXiv}, primaryClass={cs.AI} } bibtex @inproceedings{wang2023EcoOptiGen, title={Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference}, author={Chi Wang and Susan Xueqing Liu and Ahmed H. Awadallah}, year={2023}, booktitle={AutoML'23}, } ``` [MathChat](https://arxiv.org/abs/2306.01337). ``` bibtex @inproceedings{wu2023empirical, title={An Empirical Study on Challenging Math Problem Solving with GPT-4}, author={Yiran Wu and Feiran Jia and Shaokun Zhang and Hangyu Li and Erkang Zhu and Yue Wang and Yin Tat Lee and Richard Peng and Qingyun Wu and Chi Wang}, year={2023}, booktitle={ArXiv preprint arXiv:2306.01337}, } ``` * Seperated AutoGen and EcoOptGen and removed 'bibtex' ## Citation [AutoGen](https://arxiv.org/abs/2308.08155). ``` @inproceedings{wu2023autogen, title={AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation Framework}, author={Qingyun Wu and Gagan Bansal and Jieyu Zhang and Yiran Wu and Shaokun Zhang and Erkang Zhu and Beibin Li and Li Jiang and Xiaoyun Zhang and Chi Wang}, year={2023}, eprint={2308.08155}, archivePrefix={arXiv}, primaryClass={cs.AI} } ``` [EcoOptiGen](https://arxiv.org/abs/2303.04673). ``` @inproceedings{wang2023EcoOptiGen, title={Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference}, author={Chi Wang and Susan Xueqing Liu and Ahmed H. Awadallah}, year={2023}, booktitle={AutoML'23}, } ``` --- README.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/README.md b/README.md index 5b7840f3ce7..77c51f96585 100644 --- a/README.md +++ b/README.md @@ -148,3 +148,40 @@ Privacy information can be found at https://privacy.microsoft.com/en-us/ Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise. + + +## Citation +[AutoGen](https://arxiv.org/abs/2308.08155). +``` +@inproceedings{wu2023autogen, + title={AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation Framework}, + author={Qingyun Wu and Gagan Bansal and Jieyu Zhang and Yiran Wu and Shaokun Zhang and Erkang Zhu and Beibin Li and Li Jiang and Xiaoyun Zhang and Chi Wang}, + year={2023}, + eprint={2308.08155}, + archivePrefix={arXiv}, + primaryClass={cs.AI} +} +``` + +[EcoOptiGen](https://arxiv.org/abs/2303.04673). +``` +@inproceedings{wang2023EcoOptiGen, + title={Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference}, + author={Chi Wang and Susan Xueqing Liu and Ahmed H. Awadallah}, + year={2023}, + booktitle={AutoML'23}, +} +``` + + [MathChat](https://arxiv.org/abs/2306.01337). + +``` +@inproceedings{wu2023empirical, + title={An Empirical Study on Challenging Math Problem Solving with GPT-4}, + author={Yiran Wu and Feiran Jia and Shaokun Zhang and Hangyu Li and Erkang Zhu and Yue Wang and Yin Tat Lee and Richard Peng and Qingyun Wu and Chi Wang}, + year={2023}, + booktitle={ArXiv preprint arXiv:2306.01337}, +} +``` + + From 49ad771052a027e731137cd8e1b33b100000261d Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Sun, 1 Oct 2023 18:34:59 -0700 Subject: [PATCH 009/151] expand faq (#66) * expand faq * models * fix format error --- README.md | 10 ++++------ website/docs/FAQ.md | 25 +++++++++++++++++++++++++ website/docusaurus.config.js | 4 ++-- website/static/img/ag.ico | Bin 0 -> 3126 bytes website/static/img/ag.svg | 1 + 5 files changed, 32 insertions(+), 8 deletions(-) create mode 100644 website/static/img/ag.ico create mode 100644 website/static/img/ag.svg diff --git a/README.md b/README.md index 77c51f96585..c552f5f1c4f 100644 --- a/README.md +++ b/README.md @@ -150,9 +150,9 @@ Microsoft and any contributors reserve all other rights, whether under their res or trademarks, whether by implication, estoppel or otherwise. -## Citation -[AutoGen](https://arxiv.org/abs/2308.08155). -``` +## Citation +[AutoGen](https://arxiv.org/abs/2308.08155). +``` @inproceedings{wu2023autogen, title={AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation Framework}, author={Qingyun Wu and Gagan Bansal and Jieyu Zhang and Yiran Wu and Shaokun Zhang and Erkang Zhu and Beibin Li and Li Jiang and Xiaoyun Zhang and Chi Wang}, @@ -173,7 +173,7 @@ or trademarks, whether by implication, estoppel or otherwise. } ``` - [MathChat](https://arxiv.org/abs/2306.01337). +[MathChat](https://arxiv.org/abs/2306.01337). ``` @inproceedings{wu2023empirical, @@ -183,5 +183,3 @@ or trademarks, whether by implication, estoppel or otherwise. booktitle={ArXiv preprint arXiv:2306.01337}, } ``` - - diff --git a/website/docs/FAQ.md b/website/docs/FAQ.md index 3cd0ae048fe..8cac002b3a1 100644 --- a/website/docs/FAQ.md +++ b/website/docs/FAQ.md @@ -100,6 +100,10 @@ You can also explicitly specify that by: assistant = autogen.AssistantAgent(name="assistant", llm_config={"api_key": ...}) ``` +### Can I use non-OpenAI models? + +Yes. Please check https://microsoft.github.io/autogen/blog/2023/07/14/Local-LLMs for an example. + ## Handle Rate Limit Error and Timeout Error You can set `retry_wait_time` and `max_retry_period` to handle rate limit error. And you can set `request_timeout` to handle timeout error. They can all be specified in `llm_config` for an agent, which will be used in the [`create`](/docs/reference/oai/completion#create) function for LLM inference. @@ -109,3 +113,24 @@ You can set `retry_wait_time` and `max_retry_period` to handle rate limit error. - `request_timeout` (int): the timeout (in seconds) sent with a single request. Please refer to the [documentation](/docs/Use-Cases/enhanced_inference#runtime-error) for more info. + +## How to continue a finished conversation + +When you call `initiate_chat` the conversation restarts by default. You can use `send` or `initiate_chat(clear_history=False)` to continue the conversation. + +## How do we decide what LLM is used for each agent? How many agents can be used? How do we decide how many agents in the group? + +Each agent can be customized. You can use LLMs, tools or human behind each agent. If you use an LLM for an agent, use the one best suited for its role. There is no limit of the number of agents, but start from a small number like 2, 3. The more capable is the LLM and the fewer roles you need, the fewer agents you need. + +The default user proxy agent doesn't use LLM. If you'd like to use an LLM in UserProxyAgent, the use case could be to simulate user's behavior. + +The default assistant agent is instructed to use both coding and language skills. It doesn't have to do coding, depending on the tasks. And you can customize the system message. So if you want to use it for coding, use a model that's good at coding. + +## Why is code not saved as file? + +If you are using a custom system message for the coding agent, please include something like: +`If you want the user to save the code in a file before executing it, put # filename: inside the code block as the first line.` +in the system message. This line is in the default system message of the `AssistantAgent`. + +If the `# filename` doesn't appear in the suggested code still, consider adding explicit instructions such as "save the code to disk" in the initial user message in `initiate_chat`. +The `AssistantAgent` doesn't save all the code by default, because there are cases in which one would just like to finish a task without saving the code. diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index c5f58e5e10b..8ac69648e2d 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -9,7 +9,7 @@ module.exports = { baseUrl: '/autogen/', onBrokenLinks: 'throw', onBrokenMarkdownLinks: 'warn', - favicon: 'img/flaml_logo.ico', + favicon: 'img/ag.ico', organizationName: 'Microsoft', // Usually your GitHub org/user name. projectName: 'AutoGen', // Usually your repo name. themeConfig: { @@ -17,7 +17,7 @@ module.exports = { title: 'AutoGen', logo: { alt: 'AutoGen', - src: 'img/flaml_logo_fill.svg', + src: 'img/ag.svg', }, items: [ { diff --git a/website/static/img/ag.ico b/website/static/img/ag.ico new file mode 100644 index 0000000000000000000000000000000000000000..f1789673b09252f61aedc8932f2dfecb8cd68e8d GIT binary patch literal 3126 zcmY*bX>3(h5PqO2XhFKr_O*TOqwU-8eYX{g1T`W`SQ3_me?&4pJ3V*qoNs2nnK}0i7}h7s zA%A@^`|)$zzYdN>tni2Thr8)d1rA46IGkmgn6o)d8R5ty7G{H_h*4mHS#dOKxI_tKvGpYih9hdi53MjR z!BJIrqrG~ilz+s{K?MbO{?=)ESR!t*~j(2oK8(jNp+<;6OxjW zTuF(^@iDP!DQVhn~A34;jdak`I2A zI+*rkcwT+!#hMev)7}|aUsKWA(%5pPCV#=?Zx&C@{V;ds=ZojRH=?e#CLHoc$HaH< z+V$k&;<~!(zBxGoua{2Z+>@h^#f+-98&lK4Gb$7a_K1nAIJ9N;^69m8XQH0z^!BLX zKkq5Jbnc{O8i&fuW=$A!yy{2?$J0M<{%+^G{JaUn%F8zQ?cFQr4*-*FN1Bd3E@eaK z5rPbuNOq=tQ}9Lk_LYrIS2EqMWuGmmJ$1OTp}Kq2bLY-hR~_D6T3Xz}(ecdj@_Toh zZ(Tost@%Q>Wd(czf(t&9i$UiltwIi4Mhuzgra`au11)#&-+$%hem~?dy?(X6;?UlX z4#$nF7n&MR@7%flsSZy+xO=JP;;9>#PPaX79XV_WdMDE0bd? z-z5r_keZU#+p82Uz2{r+$Bm+dI} z>SDvm_}F+?vTJ_chv>U2SI*7No0%QX8aaIE`I?H0ml{xv;GYF)mpUn8BQvu&PT9y< zGcQb#8Sn?9yLD^5S=(^73V=%%&Q3{kp+Zue2@md_hotq+wdTg^rgK#{S}x**7kQ!w(0l!AopZ?4PW~1?FIk*e*5vC z4<7&ZTT}h95rYTd;G$#pAh^k%l0zF2@lX<$Bnr)bFc9>(Q~RTHEPqB%IhKW9M1jN2 z85a}GbZ4X{#m2;WGrhvI-9$nQ*uV!4=Rc5HNZJc{WIAjb5s2aU1%m#dI;NSjqh^eu zP!J7Cw`HRZ#WiuXKC#BNO7XdtGek2^eSMU|mKu=Hr6y5JLZEDYtThn&p!{$a>v~+< zYq+G~?R9G}Xi-RRhvho0uzY{QQHv(#G=D45~&<)LFMz#{4Zh~2}=L~ literal 0 HcmV?d00001 diff --git a/website/static/img/ag.svg b/website/static/img/ag.svg new file mode 100644 index 00000000000..9402bbdcab7 --- /dev/null +++ b/website/static/img/ag.svg @@ -0,0 +1 @@ + From b642f69005121301d715c1d8bd28a3b1c5f6425e Mon Sep 17 00:00:00 2001 From: Xiaoyun Zhang Date: Mon, 2 Oct 2023 05:15:25 -0700 Subject: [PATCH 010/151] minor fix (#31) * minor fix for stablility * fix format * fix format * update run_code logic * format * Update conversable_agent.py * fix format * Update conversable_agent.py * add tests * fix format * revert changes --- autogen/agentchat/conversable_agent.py | 23 ++++++------- autogen/code_utils.py | 11 +++++-- test/agentchat/test_conversable_agent.py | 42 ++++++++++++++++++++++++ test/test_code.py | 4 +++ 4 files changed, 67 insertions(+), 13 deletions(-) diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index 84e7dea8dec..cc1b5e22407 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -611,25 +611,26 @@ def generate_code_execution_reply( if messages is None: messages = self._oai_messages[sender] last_n_messages = code_execution_config.pop("last_n_messages", 1) + + # iterate through the last n messages reversly + # if code blocks are found, execute the code blocks and return the output + # if no code blocks are found, continue for i in range(min(len(messages), last_n_messages)): message = messages[-(i + 1)] code_blocks = extract_code(message["content"]) if len(code_blocks) == 1 and code_blocks[0][0] == UNKNOWN: - # no code block is found, lang should be `UNKNOWN` - - if i == last_n_messages - 1: - code_execution_config["last_n_messages"] = last_n_messages - return False, None continue - # code_blocks, _ = find_code(messages, sys_msg=self._oai_system_message, **self.llm_config) - # if len(code_blocks) == 1 and code_blocks[0][0] == UNKNOWN: - # return code_blocks[0][1] - # try to execute the code + + # found code blocks, execute code and push "last_n_messages" back exitcode, logs = self.execute_code_blocks(code_blocks) + code_execution_config["last_n_messages"] = last_n_messages exitcode2str = "execution succeeded" if exitcode == 0 else "execution failed" - break + return True, f"exitcode: {exitcode} ({exitcode2str})\nCode output: {logs}" + + # no code blocks are found, push last_n_messages back and return. code_execution_config["last_n_messages"] = last_n_messages - return True, f"exitcode: {exitcode} ({exitcode2str})\nCode output: {logs}" + + return False, None def generate_function_call_reply( self, diff --git a/autogen/code_utils.py b/autogen/code_utils.py index e5e0a7e3a6e..e7d4faa8a6d 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -33,7 +33,14 @@ def infer_lang(code): """ if code.startswith("python ") or code.startswith("pip") or code.startswith("python3 "): return "sh" - return "python" + + # check if code is a valid python code + try: + compile(code, "test", "exec") + return "python" + except SyntaxError: + # not a valid python code + return UNKNOWN def extract_code( @@ -258,7 +265,7 @@ def execute_code( file_dir = os.path.dirname(filepath) os.makedirs(file_dir, exist_ok=True) if code is not None: - with open(filepath, "w") as fout: + with open(filepath, "w", encoding="utf-8") as fout: fout.write(code) # check if already running in a docker container in_docker_container = os.path.exists("/.dockerenv") diff --git a/test/agentchat/test_conversable_agent.py b/test/agentchat/test_conversable_agent.py index d7ecc388fe8..9debb6a3699 100644 --- a/test/agentchat/test_conversable_agent.py +++ b/test/agentchat/test_conversable_agent.py @@ -76,6 +76,48 @@ def test_context(): # expect hello there to be printed +def test_generate_code_execution_reply(): + agent = ConversableAgent( + "a0", max_consecutive_auto_reply=10, code_execution_config=False, llm_config=False, human_input_mode="NEVER" + ) + + dummy_messages = [ + { + "content": "no code block", + "role": "user", + }, + { + "content": "no code block", + "role": "user", + }, + ] + + code_message = { + "content": '```python\nprint("hello world")\n```', + "role": "user", + } + + # scenario 1: if code_execution_config is not provided, the code execution should return false, none + assert agent.generate_code_execution_reply(dummy_messages, config=False) == (False, None) + + # scenario 2: if code_execution_config is provided, but no code block is found, the code execution should return false, none + assert agent.generate_code_execution_reply(dummy_messages, config={}) == (False, None) + + # scenario 3: if code_execution_config is provided, and code block is found, but it's not within the range of last_n_messages, the code execution should return false, none + assert agent.generate_code_execution_reply([code_message] + dummy_messages, config={"last_n_messages": 1}) == ( + False, + None, + ) + + # scenario 4: if code_execution_config is provided, and code block is found, and it's within the range of last_n_messages, the code execution should return true, code block + agent._code_execution_config = {"last_n_messages": 3, "use_docker": False} + assert agent.generate_code_execution_reply([code_message] + dummy_messages) == ( + True, + "exitcode: 0 (execution succeeded)\nCode output: \nhello world\n", + ) + assert agent._code_execution_config["last_n_messages"] == 3 + + def test_max_consecutive_auto_reply(): agent = ConversableAgent("a0", max_consecutive_auto_reply=2, llm_config=False, human_input_mode="NEVER") agent1 = ConversableAgent("a1", max_consecutive_auto_reply=0, human_input_mode="NEVER") diff --git a/test/test_code.py b/test/test_code.py index 3c967f65c5b..06c6f9fa1cd 100644 --- a/test/test_code.py +++ b/test/test_code.py @@ -153,6 +153,10 @@ def test_infer_lang(): assert infer_lang("print('hello world')") == "python" assert infer_lang("pip install autogen") == "sh" + # test infer lang for unknown code/invalid code + assert infer_lang("dummy text") == UNKNOWN + assert infer_lang("print('hello world'))") == UNKNOWN + def test_extract_code(): print(extract_code("```bash\npython temp.py\n```")) From 0481483faa03b337faaa4e8c7b3b4a9d51e7db29 Mon Sep 17 00:00:00 2001 From: Hiftie <127197446+hiftielabs@users.noreply.github.com> Date: Mon, 2 Oct 2023 18:31:14 +0530 Subject: [PATCH 011/151] Fixed MD Issue (#72) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c552f5f1c4f..a8af692a479 100644 --- a/README.md +++ b/README.md @@ -65,7 +65,7 @@ By automating chat among multiple capable agents, one can easily make them colle from autogen import AssistantAgent, UserProxyAgent, config_list_from_json # Load LLM inference endpoints from an env variable or a file # See https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints -# and OAI_CONFIG_LIST_sample.json +# and OAI_CONFIG_LIST_sample config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST") assistant = AssistantAgent("assistant", llm_config={"config_list": config_list}) user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding"}) From 4d85f4db0aeccb1f2cc89f39b248b882e0b86c4e Mon Sep 17 00:00:00 2001 From: Yiran Wu <32823396+kevin666aa@users.noreply.github.com> Date: Mon, 2 Oct 2023 14:52:38 -0400 Subject: [PATCH 012/151] fix append_oai_message (#47) * fix append_oai_message * add testcase for groupchat * add test_oai to openai workflow * code formate * update * formate * update --- .github/workflows/openai.yml | 1 + autogen/agentchat/conversable_agent.py | 18 +++++--- test/test_with_openai.py | 61 ++++++++++++++++++++++++++ 3 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 test/test_with_openai.py diff --git a/.github/workflows/openai.yml b/.github/workflows/openai.yml index eef8e4ce6fb..1e0ecca7d2a 100644 --- a/.github/workflows/openai.yml +++ b/.github/workflows/openai.yml @@ -69,6 +69,7 @@ jobs: OAI_CONFIG_LIST: ${{ secrets.OAI_CONFIG_LIST }} run: | pip install nbconvert nbformat ipykernel + coverage run -a -m pytest test/test_with_openai.py coverage run -a -m pytest test/test_notebook.py coverage xml cat "$(pwd)/test/executed_openai_notebook_output.txt" diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index cc1b5e22407..ce3169e17f3 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -259,6 +259,7 @@ def _append_oai_message(self, message: Union[Dict, str], role, conversation_id: If the message received is a string, it will be put in the "content" field of the new dictionary. If the message received is a dictionary but does not have any of the two fields "content" or "function_call", this message is not a valid ChatCompletion message. + If only "function_call" is provided, "content" will be set to None if not provided, and the role of the message will be forced "assistant". Args: message (dict or str): message to be appended to the ChatCompletion conversation. @@ -271,10 +272,15 @@ def _append_oai_message(self, message: Union[Dict, str], role, conversation_id: message = self._message_to_dict(message) # create oai message to be appended to the oai conversation that can be passed to oai directly. oai_message = {k: message[k] for k in ("content", "function_call", "name", "context") if k in message} - if "content" not in oai_message and "function_call" not in oai_message: - return False + if "content" not in oai_message: + if "function_call" in oai_message: + oai_message["content"] = None # if only function_call is provided, content will be set to None. + else: + return False oai_message["role"] = "function" if message.get("role") == "function" else role + if "function_call" in oai_message: + oai_message["role"] = "assistant" # only messages with role 'assistant' can have a function call. self._oai_messages[conversation_id].append(oai_message) return True @@ -289,8 +295,8 @@ def send( Args: message (dict or str): message to be sent. - The message could contain the following fields (either content or function_call must be provided): - - content (str): the content of the message. + The message could contain the following fields: + - content (str): Required, the content of the message. (Can be None) - function_call (str): the name of the function to be called. - name (str): the name of the function to be called. - role (str): the role of the message, any role that is not "function" @@ -338,8 +344,8 @@ async def a_send( Args: message (dict or str): message to be sent. - The message could contain the following fields (either content or function_call must be provided): - - content (str): the content of the message. + The message could contain the following fields: + - content (str): Required, the content of the message. (Can be None) - function_call (str): the name of the function to be called. - name (str): the name of the function to be called. - role (str): the role of the message, any role that is not "function" diff --git a/test/test_with_openai.py b/test/test_with_openai.py new file mode 100644 index 00000000000..ed63324be6a --- /dev/null +++ b/test/test_with_openai.py @@ -0,0 +1,61 @@ +import autogen +import pytest +import sys + +try: + import openai + + skip = False +except ImportError: + skip = True + + +@pytest.mark.skipif( + skip or not sys.version.startswith("3.10"), + reason="do not run if openai is not installed or py!=3.10", +) +def test_function_call_groupchat(): + import random + + def get_random_number(): + return random.randint(0, 100) + + config_list_gpt4 = autogen.config_list_from_json( + "OAI_CONFIG_LIST", + filter_dict={ + "model": ["gpt-4", "gpt-4-0314", "gpt4", "gpt-4-32k", "gpt-4-32k-0314", "gpt-4-32k-v0314"], + }, + ) + llm_config = { + "config_list": config_list_gpt4, + "seed": 42, + "functions": [ + { + "name": "get_random_number", + "description": "Get a random number between 0 and 100", + "parameters": { + "type": "object", + "properties": {}, + }, + }, + ], + } + user_proxy = autogen.UserProxyAgent( + name="User_proxy", + system_message="A human admin that will execute function_calls.", + function_map={"get_random_number": get_random_number}, + human_input_mode="NEVER", + ) + coder = autogen.AssistantAgent( + name="Player", + system_message="You will can function `get_random_number` to get a random number. Stop only when you get at least 1 even number and 1 odd number. Reply TERMINATE to stop.", + llm_config=llm_config, + ) + groupchat = autogen.GroupChat(agents=[user_proxy, coder], messages=[], max_round=7) + manager = autogen.GroupChatManager(groupchat=groupchat, llm_config=llm_config) + + user_proxy.initiate_chat(manager, message="Let's start the game!") + + +if __name__ == "__main__": + test_function_call_groupchat() From 3b5e6277466dc25cd468a7f7e5d00a63c794b85c Mon Sep 17 00:00:00 2001 From: Xiaoyun Zhang Date: Mon, 2 Oct 2023 12:46:46 -0700 Subject: [PATCH 013/151] enable openai workflow on fork branch (#82) * update * update * Update openai.yml --- .github/workflows/openai.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/openai.yml b/.github/workflows/openai.yml index 1e0ecca7d2a..bb63bc6659c 100644 --- a/.github/workflows/openai.yml +++ b/.github/workflows/openai.yml @@ -4,7 +4,7 @@ name: OpenAI on: - pull_request: + pull_request_target: branches: ['main'] paths: - 'autogen/**' @@ -25,7 +25,11 @@ jobs: runs-on: ${{ matrix.os }} environment: openai steps: - - uses: actions/checkout@v3 + # checkout to pr branch + - name: Checkout + uses: actions/checkout@v3 + with: + ref: ${{ github.event.pull_request.head.sha }} - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 with: From 50cb53cfe66c8445063f830b4f0ab7656b998a06 Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Mon, 2 Oct 2023 19:16:30 -0700 Subject: [PATCH 014/151] bump version to 0.1.6 (#85) --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index 1276d0254ff..0a8da882586 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.5" +__version__ = "0.1.6" From 1131943a5d39455f007c01377af8d22fc0181ceb Mon Sep 17 00:00:00 2001 From: Shaurya Rohatgi Date: Mon, 2 Oct 2023 21:32:13 -0500 Subject: [PATCH 015/151] spelling error (#84) --- autogen/agentchat/agent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/agentchat/agent.py b/autogen/agentchat/agent.py index 93021249985..8a71147297e 100644 --- a/autogen/agentchat/agent.py +++ b/autogen/agentchat/agent.py @@ -25,7 +25,7 @@ def name(self): return self._name def send(self, message: Union[Dict, str], recipient: "Agent", request_reply: Optional[bool] = None): - """(Aabstract method) Send a message to another agent.""" + """(Abstract method) Send a message to another agent.""" async def a_send(self, message: Union[Dict, str], recipient: "Agent", request_reply: Optional[bool] = None): """(Aabstract async method) Send a message to another agent.""" From 39c145dd53d3f631b4b04493daa31e489cb5295d Mon Sep 17 00:00:00 2001 From: Al-Ekram Elahee Hridoy Date: Mon, 2 Oct 2023 20:36:23 -0600 Subject: [PATCH 016/151] Format issue (#69) * Fixed formating issue in the README * Fixed the formating issue in the README * Updated formatting as per review comments * Refactor README.md to highlight use cases and features * Updated README as per feedback * Updated README as per feedback --------- Co-authored-by: Al-Iqram Elahee Co-authored-by: Qingyun Wu --- README.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index a8af692a479..1ad3348b925 100644 --- a/README.md +++ b/README.md @@ -59,8 +59,18 @@ For LLM inference configurations, check the [FAQ](https://microsoft.github.io/au ## Quickstart -* Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools, and humans. -By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), +## Multi-Agent Conversation Framework + +Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools, and humans. +By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. + +Features of this use case include: + +- **Multi-agent conversations**: AutoGen agents can communicate with each other to solve tasks. This allows for more complex and sophisticated applications than would be possible with a single LLM. +- **Customization**: AutoGen agents can be customized to meet the specific needs of an application. This includes the ability to choose the LLMs to use, the types of human input to allow, and the tools to employ. +- **Human participation**: AutoGen seamlessly allows human participation. This means that humans can provide input and feedback to the agents as needed. + +For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), ```python from autogen import AssistantAgent, UserProxyAgent, config_list_from_json # Load LLM inference endpoints from an env variable or a file @@ -72,9 +82,6 @@ user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "co user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stock price change YTD.") # This initiates an automated chat between the two agents to solve the task ``` -Multi-agent conversations: AutoGen agents can communicate with each other to solve tasks. This allows for more complex and sophisticated applications than would be possible with a single LLM. -Customization: AutoGen agents can be customized to meet the specific needs of an application. This includes the ability to choose the LLMs to use, the types of human input to allow, and the tools to employ. -Human participation: AutoGen seamlessly allows human participation. This means that humans can provide input and feedback to the agents as needed. This example can be run with ```python @@ -85,8 +92,9 @@ The figure below shows an example conversation flow with AutoGen. ![Agent Chat Example](https://github.com/microsoft/autogen/blob/main/website/static/img/chat_example.png) Please find more [code examples](https://microsoft.github.io/autogen/docs/Examples/AutoGen-AgentChat) for this feature. +## Enhanced LLM Inferences -* Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` adding powerful functionalities like tuning, caching, error handling, and templating. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets. +Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` adding powerful functionalities like tuning, caching, error handling, and templating. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets. ```python # perform tuning config, analysis = autogen.Completion.tune( From a3547f82c4eb17bdc0da47a2f6a80f89b8df2dd4 Mon Sep 17 00:00:00 2001 From: Mohamed Attia Date: Tue, 3 Oct 2023 19:52:50 +0200 Subject: [PATCH 017/151] Replace the use of `assert` in non-test code (#80) * Replace `assert`s in the `conversable_agent` module with `if-log-raise`. * Use a `logger` object in the `code_utils` module. * Replace use of `assert` with `if-log-raise` in the `code_utils` module. * Replace use of `assert` in the `math_utils` module with `if-not-raise`. * Replace `assert` with `if` in the `oai.completion` module. * Replace `assert` in the `retrieve_utils` module with an if statement. * Add missing `not`. * Blacken `completion.py`. * Test `generate_reply` and `a_generate_reply` raise an assertion error when there are neither `messages` nor a `sender`. * Test `execute_code` raises an `AssertionError` when neither code nor filename is provided. * Test `split_text_to_chunks` raises when passed an invalid chunk mode. * * Add `tiktoken` and `chromadb` to test dependencies as they're used in the `test_retrieve_utils` module. * Sort the test requirements alphabetically. --- autogen/agentchat/conversable_agent.py | 16 +++++++++++-- autogen/code_utils.py | 10 ++++++-- autogen/math_utils.py | 14 ++++++++---- autogen/oai/completion.py | 29 ++++++++++++++++-------- autogen/retrieve_utils.py | 4 +++- setup.py | 9 +++++--- test/agentchat/test_conversable_agent.py | 22 ++++++++++++++++++ test/test_code.py | 5 ++++ test/test_retrieve_utils.py | 4 ++++ 9 files changed, 91 insertions(+), 22 deletions(-) diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index ce3169e17f3..7ab7cd3498b 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -2,6 +2,7 @@ from collections import defaultdict import copy import json +import logging from typing import Any, Callable, Dict, List, Optional, Tuple, Type, Union from autogen import oai from .agent import Agent @@ -21,6 +22,9 @@ def colored(x, *args, **kwargs): return x +logger = logging.getLogger(__name__) + + class ConversableAgent(Agent): """(In preview) A class for generic conversable agents which can be configured as assistant or user proxy. @@ -757,7 +761,11 @@ def generate_reply( Returns: str or dict or None: reply. None if no reply is generated. """ - assert messages is not None or sender is not None, "Either messages or sender must be provided." + if all((messages is None, sender is None)): + error_msg = f"Either {messages=} or {sender=} must be provided." + logger.error(error_msg) + raise AssertionError(error_msg) + if messages is None: messages = self._oai_messages[sender] @@ -804,7 +812,11 @@ async def a_generate_reply( Returns: str or dict or None: reply. None if no reply is generated. """ - assert messages is not None or sender is not None, "Either messages or sender must be provided." + if all((messages is None, sender is None)): + error_msg = f"Either {messages=} or {sender=} must be provided." + logger.error(error_msg) + raise AssertionError(error_msg) + if messages is None: messages = self._oai_messages[sender] diff --git a/autogen/code_utils.py b/autogen/code_utils.py index e7d4faa8a6d..4e76b70738c 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -26,6 +26,8 @@ WIN32 = sys.platform == "win32" PATH_SEPARATOR = WIN32 and "\\" or "/" +logger = logging.getLogger(__name__) + def infer_lang(code): """infer the language for the code. @@ -250,7 +252,11 @@ def execute_code( str: The error message if the code fails to execute; the stdout otherwise. image: The docker image name after container run when docker is used. """ - assert code is not None or filename is not None, "Either code or filename must be provided." + if all((code is None, filename is None)): + error_msg = f"Either {code=} or {filename=} must be provided." + logger.error(error_msg) + raise AssertionError(error_msg) + timeout = timeout or DEFAULT_TIMEOUT original_filename = filename if WIN32 and lang in ["sh", "shell"]: @@ -276,7 +282,7 @@ def execute_code( f".\\{filename}" if WIN32 else filename, ] if WIN32: - logging.warning("SIGALRM is not supported on Windows. No timeout will be enforced.") + logger.warning("SIGALRM is not supported on Windows. No timeout will be enforced.") result = subprocess.run( cmd, cwd=work_dir, diff --git a/autogen/math_utils.py b/autogen/math_utils.py index f664e765e5f..7f35470fa6b 100644 --- a/autogen/math_utils.py +++ b/autogen/math_utils.py @@ -35,8 +35,9 @@ def remove_boxed(string: str) -> Optional[str]: """ left = "\\boxed{" try: - assert string[: len(left)] == left - assert string[-1] == "}" + if not all((string[: len(left)] == left, string[-1] == "}")): + raise AssertionError + return string[len(left) : -1] except Exception: return None @@ -94,7 +95,8 @@ def _fix_fracs(string: str) -> str: new_str += substr else: try: - assert len(substr) >= 2 + if not len(substr) >= 2: + raise AssertionError except Exception: return string a = substr[0] @@ -129,7 +131,8 @@ def _fix_a_slash_b(string: str) -> str: try: a = int(a_str) b = int(b_str) - assert string == "{}/{}".format(a, b) + if not string == "{}/{}".format(a, b): + raise AssertionError new_string = "\\frac{" + str(a) + "}{" + str(b) + "}" return new_string except Exception: @@ -143,7 +146,8 @@ def _remove_right_units(string: str) -> str: """ if "\\text{ " in string: splits = string.split("\\text{ ") - assert len(splits) == 2 + if not len(splits) == 2: + raise AssertionError return splits[0] else: return string diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index af2088ad974..55ca278f88a 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -582,23 +582,31 @@ def eval_func(responses, **data): cls._prompts = space.get("prompt") if cls._prompts is None: cls._messages = space.get("messages") - assert isinstance(cls._messages, list) and isinstance( - cls._messages[0], (dict, list) - ), "messages must be a list of dicts or a list of lists." + if not all((isinstance(cls._messages, list), isinstance(cls._messages[0], (dict, list)))): + error_msg = "messages must be a list of dicts or a list of lists." + logger.error(error_msg) + raise AssertionError(error_msg) if isinstance(cls._messages[0], dict): cls._messages = [cls._messages] space["messages"] = tune.choice(list(range(len(cls._messages)))) else: - assert space.get("messages") is None, "messages and prompt cannot be provided at the same time." - assert isinstance(cls._prompts, (str, list)), "prompt must be a string or a list of strings." + if space.get("messages") is not None: + error_msg = "messages and prompt cannot be provided at the same time." + logger.error(error_msg) + raise AssertionError(error_msg) + if not isinstance(cls._prompts, (str, list)): + error_msg = "prompt must be a string or a list of strings." + logger.error(error_msg) + raise AssertionError(error_msg) if isinstance(cls._prompts, str): cls._prompts = [cls._prompts] space["prompt"] = tune.choice(list(range(len(cls._prompts)))) cls._stops = space.get("stop") if cls._stops: - assert isinstance( - cls._stops, (str, list) - ), "stop must be a string, a list of strings, or a list of lists of strings." + if not isinstance(cls._stops, (str, list)): + error_msg = "stop must be a string, a list of strings, or a list of lists of strings." + logger.error(error_msg) + raise AssertionError(error_msg) if not (isinstance(cls._stops, list) and isinstance(cls._stops[0], list)): cls._stops = [cls._stops] space["stop"] = tune.choice(list(range(len(cls._stops)))) @@ -969,7 +977,10 @@ def eval_func(responses, **data): elif isinstance(agg_method, dict): for key in metric_keys: metric_agg_method = agg_method[key] - assert callable(metric_agg_method), "please provide a callable for each metric" + if not callable(metric_agg_method): + error_msg = "please provide a callable for each metric" + logger.error(error_msg) + raise AssertionError(error_msg) result_agg[key] = metric_agg_method([r[key] for r in result_list]) else: raise ValueError( diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index cd8ccbde2ed..ecca2f2b0bf 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -29,6 +29,7 @@ "yml", "pdf", ] +VALID_CHUNK_MODES = frozenset({"one_line", "multi_lines"}) def num_tokens_from_text( @@ -96,7 +97,8 @@ def split_text_to_chunks( overlap: int = 10, ): """Split a long text into chunks of max_tokens.""" - assert chunk_mode in {"one_line", "multi_lines"} + if chunk_mode not in VALID_CHUNK_MODES: + raise AssertionError if chunk_mode == "one_line": must_break_at_empty_line = False chunks = [] diff --git a/setup.py b/setup.py index bb642af4da3..b9ec7af33d7 100644 --- a/setup.py +++ b/setup.py @@ -38,15 +38,18 @@ install_requires=install_requires, extras_require={ "test": [ - "pytest>=6.1.1", + "chromadb", "coverage>=5.3", - "pre-commit", "datasets", + "ipykernel", "nbconvert", "nbformat", - "ipykernel", + "pre-commit", "pydantic==1.10.9", + "pytest-asyncio", + "pytest>=6.1.1", "sympy", + "tiktoken", "wolframalpha", ], "blendsearch": ["flaml[blendsearch]"], diff --git a/test/agentchat/test_conversable_agent.py b/test/agentchat/test_conversable_agent.py index 9debb6a3699..905e34bddd9 100644 --- a/test/agentchat/test_conversable_agent.py +++ b/test/agentchat/test_conversable_agent.py @@ -2,6 +2,17 @@ from autogen.agentchat import ConversableAgent +@pytest.fixture +def conversable_agent(): + return ConversableAgent( + "conversable_agent_0", + max_consecutive_auto_reply=10, + code_execution_config=False, + llm_config=False, + human_input_mode="NEVER", + ) + + def test_trigger(): agent = ConversableAgent("a0", max_consecutive_auto_reply=0, llm_config=False, human_input_mode="NEVER") agent1 = ConversableAgent("a1", max_consecutive_auto_reply=0, human_input_mode="NEVER") @@ -217,6 +228,17 @@ def add_num(num_to_be_added): ), "generate_reply not working when messages is None" +def test_generate_reply_raises_on_messages_and_sender_none(conversable_agent): + with pytest.raises(AssertionError): + conversable_agent.generate_reply(messages=None, sender=None) + + +@pytest.mark.asyncio +async def test_a_generate_reply_raises_on_messages_and_sender_none(conversable_agent): + with pytest.raises(AssertionError): + await conversable_agent.a_generate_reply(messages=None, sender=None) + + if __name__ == "__main__": test_trigger() # test_context() diff --git a/test/test_code.py b/test/test_code.py index 06c6f9fa1cd..65c407cc316 100644 --- a/test/test_code.py +++ b/test/test_code.py @@ -264,6 +264,11 @@ def test_execute_code(use_docker=None): assert isinstance(image, str) or docker is None or os.path.exists("/.dockerenv") or use_docker is False +def test_execute_code_raises_when_code_and_filename_are_both_none(): + with pytest.raises(AssertionError): + execute_code(code=None, filename=None) + + @pytest.mark.skipif( sys.platform in ["darwin"], reason="do not run on MacOS", diff --git a/test/test_retrieve_utils.py b/test/test_retrieve_utils.py index 2232ed8db85..b0743455fbc 100644 --- a/test/test_retrieve_utils.py +++ b/test/test_retrieve_utils.py @@ -48,6 +48,10 @@ def test_split_text_to_chunks(self): chunks = split_text_to_chunks(long_text, max_tokens=1000) assert all(num_tokens_from_text(chunk) <= 1000 for chunk in chunks) + def test_split_text_to_chunks_raises_on_invalid_chunk_mode(self): + with pytest.raises(AssertionError): + split_text_to_chunks("A" * 10000, chunk_mode="bogus_chunk_mode") + def test_extract_text_from_pdf(self): pdf_file_path = os.path.join(test_dir, "example.pdf") assert "".join(expected_text.split()) == "".join(extract_text_from_pdf(pdf_file_path).strip().split()) From 6ef012425167f601f001f393134a552a742e9f5b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 16:43:26 -0700 Subject: [PATCH 018/151] Bump postcss from 8.4.18 to 8.4.31 in /website (#93) Bumps [postcss](https://github.com/postcss/postcss) from 8.4.18 to 8.4.31. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.4.18...8.4.31) --- updated-dependencies: - dependency-name: postcss dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- website/yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/website/yarn.lock b/website/yarn.lock index c75752f172b..97a133bb25a 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -5475,10 +5475,10 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" -nanoid@^3.3.4: - version "3.3.4" - resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" - integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== +nanoid@^3.3.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== negotiator@0.6.3: version "0.6.3" @@ -6166,11 +6166,11 @@ postcss-zindex@^5.1.0: integrity sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A== postcss@^8.2.15, postcss@^8.3.11, postcss@^8.3.5, postcss@^8.3.7: - version "8.4.18" - resolved "https://registry.npmmirror.com/postcss/-/postcss-8.4.18.tgz#6d50046ea7d3d66a85e0e782074e7203bc7fbca2" - integrity sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA== + version "8.4.31" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== dependencies: - nanoid "^3.3.4" + nanoid "^3.3.6" picocolors "^1.0.0" source-map-js "^1.0.2" From 305dffebca98de70afa936b03e612480b640feb3 Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Tue, 3 Oct 2023 16:45:55 -0700 Subject: [PATCH 019/151] show github stars (#92) --- website/docs/Getting-Started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index e39f3f57231..05ad8825d57 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -75,4 +75,4 @@ response = autogen.Completion.create(context=test_instance, **config) If you like our project, please give it a [star](https://github.com/microsoft/autogen/stargazers) on GitHub. If you are interested in contributing, please read [Contributor's Guide](/docs/Contribute). - + From dc70b804ad6bcb74be5d02a806a53c990dc8fee8 Mon Sep 17 00:00:00 2001 From: Ujjwal gupta Date: Wed, 4 Oct 2023 05:20:42 +0530 Subject: [PATCH 020/151] Docs: fixed typos and grammar (#94) --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 1ad3348b925..13a49993cb4 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ This project is a spinoff from [FLAML](https://github.com/microsoft/FLAML). :fire: autogen has graduated from [FLAML](https://github.com/microsoft/FLAML) into a new project. - Find more options in [Installation](https://microsoft.github.io/autogen/docs/Installation). +For [code execution](https://microsoft.github.io/autogen/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. For LLM inference configurations, check the [FAQ](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). + ## Quickstart ## Multi-Agent Conversation Framework diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index 7ab7cd3498b..1c875da8469 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -87,9 +87,9 @@ def __init__( If a list or a str of image name(s) is provided, the code will be executed in a docker container with the first image successfully pulled. If None, False or empty, the code will be executed in the current environment. - Default is True, which will be converted into a list. - If the code is executed in the current environment, - the code must be trusted. + Default is True when the docker python package is installed. + When set to True, a default list will be used. + We strongly recommend using docker for code execution. - timeout (Optional, int): The maximum execution time in seconds. - last_n_messages (Experimental, Optional, int): The number of messages to look back for code execution. Default to 1. llm_config (dict or False): llm inference configuration. diff --git a/website/docs/Contribute.md b/website/docs/Contribute.md index 55f20694ce9..49d44ef53f4 100644 --- a/website/docs/Contribute.md +++ b/website/docs/Contribute.md @@ -75,7 +75,7 @@ docker run -it autogen-dev ### Develop in Remote Container If you use vscode, you can open the autogen folder in a [Container](https://code.visualstudio.com/docs/remote/containers). -We have provided the configuration in [devcontainer](https://github.com/microsoft/autogen/blob/main/.devcontainer). +We have provided the configuration in [devcontainer](https://github.com/microsoft/autogen/blob/main/.devcontainer). They can be used in GitHub codespace too. Developing AutoGen in dev containers is recommended. ### Pre-commit diff --git a/website/docs/FAQ.md b/website/docs/FAQ.md index 8cac002b3a1..57eb30103ac 100644 --- a/website/docs/FAQ.md +++ b/website/docs/FAQ.md @@ -134,3 +134,10 @@ in the system message. This line is in the default system message of the `Assist If the `# filename` doesn't appear in the suggested code still, consider adding explicit instructions such as "save the code to disk" in the initial user message in `initiate_chat`. The `AssistantAgent` doesn't save all the code by default, because there are cases in which one would just like to finish a task without saving the code. + +## Code execution + +We strongly recommend using docker to execute code. There are two ways to use docker: + +1. Run autogen in a docker container. For example, when developing in GitHub codespace, the autogen runs in a docker container. +2. Run autogen outside of a docker, while perform code execution with a docker container. For this option, make sure the python package `docker` is installed. When it is not installed and `use_docker` is omitted in `code_execution_config`, the code will be executed locally (this behavior is subject to change in future). diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index 05ad8825d57..c09296e3806 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -1,5 +1,3 @@ - - # Getting Started @@ -21,7 +19,7 @@ AutoGen is powered by collaborative [research studies](/docs/Research) from Micr ### Quickstart Install from pip: `pip install pyautogen`. Find more options in [Installation](/docs/Installation). - +For [code execution](https://microsoft.github.io/autogen/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. #### Multi-Agent Conversation Framework Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools and human. diff --git a/website/docs/Installation.md b/website/docs/Installation.md index 1a97f8bf60f..f1c70507a45 100644 --- a/website/docs/Installation.md +++ b/website/docs/Installation.md @@ -14,6 +14,11 @@ conda install pyautogen -c conda-forge ``` --> ### Optional Dependencies +* docker +We strongly recommend using docker for code execution or running AutoGen in a docker container (e.g., when developing in GitHub codespace, the autogen runs in a docker container). To use docker for code execution, you also need to install the python package `docker`: +```bash +pip install docker +``` * blendsearch ```bash From 62b635729451f5dcb372cb79df413f0d53be1379 Mon Sep 17 00:00:00 2001 From: "lars.gersmann" Date: Sat, 7 Oct 2023 06:04:22 +0200 Subject: [PATCH 023/151] docs: typo fixed (#129) --- notebook/agentchat_RetrieveChat.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/notebook/agentchat_RetrieveChat.ipynb b/notebook/agentchat_RetrieveChat.ipynb index 60c2f8861d9..fca0ade9d86 100644 --- a/notebook/agentchat_RetrieveChat.ipynb +++ b/notebook/agentchat_RetrieveChat.ipynb @@ -19,7 +19,7 @@ "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", - "RetrieveChat is a convesational system for retrieve augmented code generation and question answering. In this notebook, we demonstrate how to utilize RetrieveChat to generate code and answer questions based on customized documentations that are not present in the LLM's training dataset. RetrieveChat uses the `RetrieveAssistantAgent` and `RetrieveUserProxyAgent`, which is similar to the usage of `AssistantAgent` and `UserProxyAgent` in other notebooks (e.g., [Automated Task Solving with Code Generation, Execution & Debugging](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_auto_feedback_from_code_execution.ipynb)). Essentially, `RetrieveAssistantAgent` and `RetrieveUserProxyAgent` implement a different auto-reply mechanism corresponding to the RetrieveChat prompts.\n", + "RetrieveChat is a conversational system for retrieve augmented code generation and question answering. In this notebook, we demonstrate how to utilize RetrieveChat to generate code and answer questions based on customized documentations that are not present in the LLM's training dataset. RetrieveChat uses the `RetrieveAssistantAgent` and `RetrieveUserProxyAgent`, which is similar to the usage of `AssistantAgent` and `UserProxyAgent` in other notebooks (e.g., [Automated Task Solving with Code Generation, Execution & Debugging](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_auto_feedback_from_code_execution.ipynb)). Essentially, `RetrieveAssistantAgent` and `RetrieveUserProxyAgent` implement a different auto-reply mechanism corresponding to the RetrieveChat prompts.\n", "\n", "## Table of Contents\n", "We'll demonstrates six examples of using RetrieveChat for code generation and question answering:\n", From a087347d1942124ff9a8d0c4e590a55adaed9ddc Mon Sep 17 00:00:00 2001 From: Hyung-Taik Choi Date: Sat, 7 Oct 2023 13:16:29 +0900 Subject: [PATCH 024/151] Fix broken link in README.md (#134) The link to the documentation's FAQ#code-execution was broken because the 'docs' directory was missing in the original URL. Co-authored-by: Qingyun Wu --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f315690ad1..60a7a35c52c 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ pip install "pyautogen[blendsearch]" Find more options in [Installation](https://microsoft.github.io/autogen/docs/Installation). -For [code execution](https://microsoft.github.io/autogen/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. +For [code execution](https://microsoft.github.io/autogen/docs/FAQ/#code-execution), we strongly recommend installing the python docker package, and using docker. For LLM inference configurations, check the [FAQ](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). From f863e97b94b3057a6ad7153933945364363291e8 Mon Sep 17 00:00:00 2001 From: Tristan Murphy <72839119+HyperCodec@users.noreply.github.com> Date: Sat, 7 Oct 2023 00:32:05 -0400 Subject: [PATCH 025/151] fix doc typo (#123) Co-authored-by: Qingyun Wu --- autogen/agentchat/agent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/agentchat/agent.py b/autogen/agentchat/agent.py index 8a71147297e..b83709dc30b 100644 --- a/autogen/agentchat/agent.py +++ b/autogen/agentchat/agent.py @@ -28,7 +28,7 @@ def send(self, message: Union[Dict, str], recipient: "Agent", request_reply: Opt """(Abstract method) Send a message to another agent.""" async def a_send(self, message: Union[Dict, str], recipient: "Agent", request_reply: Optional[bool] = None): - """(Aabstract async method) Send a message to another agent.""" + """(Abstract async method) Send a message to another agent.""" def receive(self, message: Union[Dict, str], sender: "Agent", request_reply: Optional[bool] = None): """(Abstract method) Receive a message from another agent.""" From 09c9dbe944e9a353e6666df96ebb5e2ae79f6817 Mon Sep 17 00:00:00 2001 From: Sagar Desai <60027013+SDcodehub@users.noreply.github.com> Date: Sat, 7 Oct 2023 10:05:48 +0530 Subject: [PATCH 026/151] typo fixed (#127) Co-authored-by: Sagar Desai <60027013+sagardesai-ml-mlops@users.noreply.github.com> Co-authored-by: Qingyun Wu --- website/docs/Examples/AutoGen-AgentChat.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Examples/AutoGen-AgentChat.md b/website/docs/Examples/AutoGen-AgentChat.md index 55988818ef0..4ecd42b5663 100644 --- a/website/docs/Examples/AutoGen-AgentChat.md +++ b/website/docs/Examples/AutoGen-AgentChat.md @@ -1,6 +1,6 @@ # AutoGen - Automated Multi Agent Chat -AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance via multi-agent conversation. +AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participance via multi-agent conversation. Please find documentation about this feature [here](/docs/Use-Cases/agent_chat). Links to notebook examples: From 5510e87c0a5386976e558d78f5bfeabd1dab4de4 Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Sat, 7 Oct 2023 02:18:04 -0700 Subject: [PATCH 027/151] bump version to 0.1.7 (#141) --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index 0a8da882586..f1380eede21 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.6" +__version__ = "0.1.7" From 5ff85a3febe2ecdd494fe3c6e788fff3ab4371ba Mon Sep 17 00:00:00 2001 From: mrauter1 Date: Sat, 7 Oct 2023 10:29:52 -0300 Subject: [PATCH 028/151] Title: Adjust shell language switch in execute_code for Docker usage (#139) Description: This commit modifies the conditional check in execute_code to ensure the switch to PowerShell on Windows only occurs when Docker is not being used. This keeps shell script execution consistent within a Docker container across all platforms, aligning with the function's intended behavior. Co-authored-by: Xiaoyun Zhang --- autogen/code_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/code_utils.py b/autogen/code_utils.py index 4e76b70738c..ff97f567de5 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -259,7 +259,7 @@ def execute_code( timeout = timeout or DEFAULT_TIMEOUT original_filename = filename - if WIN32 and lang in ["sh", "shell"]: + if WIN32 and lang in ["sh", "shell"] and (not use_docker): lang = "ps1" if filename is None: code_hash = md5(code.encode()).hexdigest() From 50d6d9e0b8fc74ee022a1b98d20c07fa3882687a Mon Sep 17 00:00:00 2001 From: Manish Kumar <51908018+manish7017@users.noreply.github.com> Date: Sun, 8 Oct 2023 20:15:54 +0530 Subject: [PATCH 029/151] move citation before contributing (#154) --- README.md | 91 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 49 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index 60a7a35c52c..2e8a7cafa22 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ - [![PyPI version](https://badge.fury.io/py/pyautogen.svg)](https://badge.fury.io/py/pyautogen) [![Build](https://github.com/microsoft/autogen/actions/workflows/python-package.yml/badge.svg)](https://github.com/microsoft/autogen/actions/workflows/python-package.yml) ![Python Version](https://img.shields.io/badge/3.8%20%7C%203.9%20%7C%203.10%20%7C%203.11-blue) @@ -23,18 +22,17 @@ This project is a spinoff from [FLAML](https://github.com/microsoft/FLAML). :fire: FLAML supports Code-First AutoML & Tuning – Private Preview in [Microsoft Fabric Data Science](https://learn.microsoft.com/en-us/fabric/data-science/). --> - ## What is AutoGen AutoGen is a framework that enables the development of LLM applications using multiple agents that can converse with each other to solve tasks. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. ![AutoGen Overview](https://github.com/microsoft/autogen/blob/main/website/static/img/autogen_agentchat.png) -* AutoGen enables building next-gen LLM applications based on **multi-agent conversations** with minimal effort. It simplifies the orchestration, automation, and optimization of a complex LLM workflow. It maximizes the performance of LLM models and overcomes their weaknesses. -* It supports **diverse conversation patterns** for complex workflows. With customizable and conversable agents, developers can use AutoGen to build a wide range of conversation patterns concerning conversation autonomy, -the number of agents, and agent conversation topology. -* It provides a collection of working systems with different complexities. These systems span a **wide range of applications** from various domains and complexities. This demonstrates how AutoGen can easily support diverse conversation patterns. -* AutoGen provides a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` as an **enhanced inference API**. It allows easy performance tuning, utilities like API unification and caching, and advanced usage patterns, such as error handling, multi-config inference, context programming, etc. +- AutoGen enables building next-gen LLM applications based on **multi-agent conversations** with minimal effort. It simplifies the orchestration, automation, and optimization of a complex LLM workflow. It maximizes the performance of LLM models and overcomes their weaknesses. +- It supports **diverse conversation patterns** for complex workflows. With customizable and conversable agents, developers can use AutoGen to build a wide range of conversation patterns concerning conversation autonomy, + the number of agents, and agent conversation topology. +- It provides a collection of working systems with different complexities. These systems span a **wide range of applications** from various domains and complexities. This demonstrates how AutoGen can easily support diverse conversation patterns. +- AutoGen provides a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` as an **enhanced inference API**. It allows easy performance tuning, utilities like API unification and caching, and advanced usage patterns, such as error handling, multi-config inference, context programming, etc. AutoGen is powered by collaborative [research studies](https://microsoft.github.io/autogen/docs/Research) from Microsoft, Penn State University, and the University of Washington. @@ -47,18 +45,20 @@ pip install pyautogen ``` Minimal dependencies are installed without extra options. You can install extra options based on the feature you need. + Find more options in [Installation](https://microsoft.github.io/autogen/docs/Installation). + + For [code execution](https://microsoft.github.io/autogen/docs/FAQ/#code-execution), we strongly recommend installing the python docker package, and using docker. For LLM inference configurations, check the [FAQ](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). - ## Quickstart ## Multi-Agent Conversation Framework @@ -73,6 +73,7 @@ Features of this use case include: - **Human participation**: AutoGen seamlessly allows human participation. This means that humans can provide input and feedback to the agents as needed. For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), + ```python from autogen import AssistantAgent, UserProxyAgent, config_list_from_json # Load LLM inference endpoints from an env variable or a file @@ -86,17 +87,21 @@ user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stoc ``` This example can be run with + ```python python test/twoagent.py ``` + After the repo is cloned. The figure below shows an example conversation flow with AutoGen. ![Agent Chat Example](https://github.com/microsoft/autogen/blob/main/website/static/img/chat_example.png) Please find more [code examples](https://microsoft.github.io/autogen/docs/Examples/AutoGen-AgentChat) for this feature. + ## Enhanced LLM Inferences Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers a drop-in replacement of `openai.Completion` or `openai.ChatCompletion` adding powerful functionalities like tuning, caching, error handling, and templating. For example, you can optimize generations by LLM with your own tuning data, success metrics, and budgets. + ```python # perform tuning config, analysis = autogen.Completion.tune( @@ -126,42 +131,10 @@ In addition, you can find: - [Contributing guide](https://microsoft.github.io/autogen/docs/Contribute). -## Contributing - -This project welcomes contributions and suggestions. Most contributions require you to agree to a -Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us -the rights to use your contribution. For details, visit . - -If you are new to GitHub [here](https://help.github.com/categories/collaborating-with-issues-and-pull-requests/) is a detailed help source on getting involved with development on GitHub. - -When you submit a pull request, a CLA bot will automatically determine whether you need to provide -a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions -provided by the bot. You will only need to do this once across all repos using our CLA. - -This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). -For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or -contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. - -# Legal Notices - -Microsoft and any contributors grant you a license to the Microsoft documentation and other content -in this repository under the [Creative Commons Attribution 4.0 International Public License](https://creativecommons.org/licenses/by/4.0/legalcode), -see the [LICENSE](LICENSE) file, and grant you a license to any code in the repository under the [MIT License](https://opensource.org/licenses/MIT), see the -[LICENSE-CODE](LICENSE-CODE) file. - -Microsoft, Windows, Microsoft Azure, and/or other Microsoft products and services referenced in the documentation -may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. -The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. -Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653. - -Privacy information can be found at https://privacy.microsoft.com/en-us/ - -Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, -or trademarks, whether by implication, estoppel, or otherwise. - - ## Citation + [AutoGen](https://arxiv.org/abs/2308.08155). + ``` @inproceedings{wu2023autogen, title={AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation Framework}, @@ -174,6 +147,7 @@ or trademarks, whether by implication, estoppel, or otherwise. ``` [EcoOptiGen](https://arxiv.org/abs/2303.04673). + ``` @inproceedings{wang2023EcoOptiGen, title={Cost-Effective Hyperparameter Optimization for Large Language Model Generation Inference}, @@ -193,3 +167,36 @@ or trademarks, whether by implication, estoppel, or otherwise. booktitle={ArXiv preprint arXiv:2306.01337}, } ``` + +## Contributing + +This project welcomes contributions and suggestions. Most contributions require you to agree to a +Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us +the rights to use your contribution. For details, visit . + +If you are new to GitHub [here](https://help.github.com/categories/collaborating-with-issues-and-pull-requests/) is a detailed help source on getting involved with development on GitHub. + +When you submit a pull request, a CLA bot will automatically determine whether you need to provide +a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions +provided by the bot. You will only need to do this once across all repos using our CLA. + +This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). +For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or +contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. + +# Legal Notices + +Microsoft and any contributors grant you a license to the Microsoft documentation and other content +in this repository under the [Creative Commons Attribution 4.0 International Public License](https://creativecommons.org/licenses/by/4.0/legalcode), +see the [LICENSE](LICENSE) file, and grant you a license to any code in the repository under the [MIT License](https://opensource.org/licenses/MIT), see the +[LICENSE-CODE](LICENSE-CODE) file. + +Microsoft, Windows, Microsoft Azure, and/or other Microsoft products and services referenced in the documentation +may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. +The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. +Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653. + +Privacy information can be found at https://privacy.microsoft.com/en-us/ + +Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, +or trademarks, whether by implication, estoppel, or otherwise. From 24adfb0c05922a7033bf8c405f0d9964d68c4fa7 Mon Sep 17 00:00:00 2001 From: Qingyun Wu Date: Sun, 8 Oct 2023 12:20:55 -0400 Subject: [PATCH 030/151] bump version to 0.1.8 --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index f1380eede21..9cb17e79762 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.7" +__version__ = "0.1.8" From ae497a0323e592a080e67cf301866daffeb2ac9f Mon Sep 17 00:00:00 2001 From: Olaoluwa Ademola Salami Date: Mon, 9 Oct 2023 00:34:24 +0100 Subject: [PATCH 031/151] add twitter account to website (#150) Co-authored-by: Chi Wang --- website/docusaurus.config.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 8ac69648e2d..cebbac257f2 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -69,6 +69,10 @@ module.exports = { label: 'Discord', href: 'https://discord.gg/pAbnFJrkgZ', }, + { + label: 'Twitter', + href: 'https://twitter.com/pyautogen', + }, ], }, ], From 19f8711c1beccbff83da69bad581c4a7c4bdaaa8 Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Mon, 9 Oct 2023 10:30:11 +0800 Subject: [PATCH 032/151] Update num tokens from text (#149) * Improve num_tokens_from_text * Format * Update comments * Improve docstrings --- .../contrib/retrieve_user_proxy_agent.py | 6 +- autogen/retrieve_utils.py | 93 +++++++++++-------- test/test_retrieve_utils.py | 9 ++ 3 files changed, 69 insertions(+), 39 deletions(-) diff --git a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py index 11193a91e04..37b8c5c33a7 100644 --- a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py +++ b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py @@ -128,6 +128,9 @@ def __init__( - update_context (Optional, bool): if False, will not apply `Update Context` for interactive retrieval. Default is True. - get_or_create (Optional, bool): if True, will create/recreate a collection for the retrieve chat. This is the same as that used in chromadb. Default is False. + - custom_token_count_function(Optional, Callable): a custom function to count the number of tokens in a string. + The function should take a string as input and return three integers (token_count, tokens_per_message, tokens_per_name). + Default is None, tiktoken will be used and may not be accurate for non-OpenAI models. **kwargs (dict): other kwargs in [UserProxyAgent](../user_proxy_agent#__init__). """ super().__init__( @@ -152,6 +155,7 @@ def __init__( self.customized_answer_prefix = self._retrieve_config.get("customized_answer_prefix", "").upper() self.update_context = self._retrieve_config.get("update_context", True) self._get_or_create = self._retrieve_config.get("get_or_create", False) + self.custom_token_count_function = self._retrieve_config.get("custom_token_count_function", None) self._context_max_tokens = self._max_tokens * 0.8 self._collection = False # the collection is not created self._ipython = get_ipython() @@ -191,7 +195,7 @@ def _get_context(self, results): continue if results["ids"][0][idx] in self._doc_ids: continue - _doc_tokens = num_tokens_from_text(doc) + _doc_tokens = num_tokens_from_text(doc, custom_token_count_function=self.custom_token_count_function) if _doc_tokens > self._context_max_tokens: func_print = f"Skip doc_id {results['ids'][0][idx]} as it is too long to fit in the context." print(colored(func_print, "green"), flush=True) diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index ecca2f2b0bf..fbe7c28784a 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -1,4 +1,4 @@ -from typing import List, Union, Dict, Tuple +from typing import List, Union, Dict, Tuple, Callable import os import requests from urllib.parse import urlparse @@ -33,59 +33,76 @@ def num_tokens_from_text( - text: str, model: str = "gpt-3.5-turbo-0613", return_tokens_per_name_and_message: bool = False + text: str, + model: str = "gpt-3.5-turbo-0613", + return_tokens_per_name_and_message: bool = False, + custom_token_count_function: Callable = None, ) -> Union[int, Tuple[int, int, int]]: - """Return the number of tokens used by a text.""" - # https://github.com/openai/openai-cookbook/blob/main/examples/How_to_count_tokens_with_tiktoken.ipynb - try: - encoding = tiktoken.encoding_for_model(model) - except KeyError: - logger.debug("Warning: model not found. Using cl100k_base encoding.") - encoding = tiktoken.get_encoding("cl100k_base") - if model in { - "gpt-3.5-turbo-0613", - "gpt-3.5-turbo-16k-0613", - "gpt-4-0314", - "gpt-4-32k-0314", - "gpt-4-0613", - "gpt-4-32k-0613", - }: - tokens_per_message = 3 - tokens_per_name = 1 - elif model == "gpt-3.5-turbo-0301": - tokens_per_message = 4 # every message follows <|start|>{role/name}\n{content}<|end|>\n - tokens_per_name = -1 # if there's a name, the role is omitted - elif "gpt-3.5-turbo" in model or "gpt-35-turbo" in model: - logger.warning("Warning: gpt-3.5-turbo may update over time. Returning num tokens assuming gpt-3.5-turbo-0613.") - return num_tokens_from_text(text, model="gpt-3.5-turbo-0613") - elif "gpt-4" in model: - logger.warning("Warning: gpt-4 may update over time. Returning num tokens assuming gpt-4-0613.") - return num_tokens_from_text(text, model="gpt-4-0613") + """Return the number of tokens used by a text. + + Args: + text (str): The text to count tokens for. + model (Optional, str): The model to use for tokenization. Default is "gpt-3.5-turbo-0613". + return_tokens_per_name_and_message (Optional, bool): Whether to return the number of tokens per name and per + message. Default is False. + custom_token_count_function (Optional, Callable): A custom function to count tokens. Default is None. + + Returns: + int: The number of tokens used by the text. + int: The number of tokens per message. Only returned if return_tokens_per_name_and_message is True. + int: The number of tokens per name. Only returned if return_tokens_per_name_and_message is True. + """ + if isinstance(custom_token_count_function, Callable): + token_count, tokens_per_message, tokens_per_name = custom_token_count_function(text) else: - raise NotImplementedError( - f"""num_tokens_from_text() is not implemented for model {model}. See """ - f"""https://github.com/openai/openai-python/blob/main/chatml.md for information on how messages are """ - f"""converted to tokens.""" - ) + # https://github.com/openai/openai-cookbook/blob/main/examples/How_to_count_tokens_with_tiktoken.ipynb + try: + encoding = tiktoken.encoding_for_model(model) + except KeyError: + logger.debug("Warning: model not found. Using cl100k_base encoding.") + encoding = tiktoken.get_encoding("cl100k_base") + known_models = { + "gpt-3.5-turbo": (3, 1), + "gpt-35-turbo": (3, 1), + "gpt-3.5-turbo-0613": (3, 1), + "gpt-3.5-turbo-16k-0613": (3, 1), + "gpt-3.5-turbo-0301": (4, -1), + "gpt-4": (3, 1), + "gpt-4-0314": (3, 1), + "gpt-4-32k-0314": (3, 1), + "gpt-4-0613": (3, 1), + "gpt-4-32k-0613": (3, 1), + } + tokens_per_message, tokens_per_name = known_models.get(model, (3, 1)) + token_count = len(encoding.encode(text)) + if return_tokens_per_name_and_message: - return len(encoding.encode(text)), tokens_per_message, tokens_per_name + return token_count, tokens_per_message, tokens_per_name else: - return len(encoding.encode(text)) + return token_count -def num_tokens_from_messages(messages: dict, model: str = "gpt-3.5-turbo-0613"): +def num_tokens_from_messages( + messages: dict, + model: str = "gpt-3.5-turbo-0613", + custom_token_count_function: Callable = None, + custom_prime_count: int = 3, +): """Return the number of tokens used by a list of messages.""" num_tokens = 0 for message in messages: for key, value in message.items(): _num_tokens, tokens_per_message, tokens_per_name = num_tokens_from_text( - value, model=model, return_tokens_per_name_and_message=True + value, + model=model, + return_tokens_per_name_and_message=True, + custom_token_count_function=custom_token_count_function, ) num_tokens += _num_tokens if key == "name": num_tokens += tokens_per_name num_tokens += tokens_per_message - num_tokens += 3 # every reply is primed with <|start|>assistant<|message|> + num_tokens += custom_prime_count # With ChatGPT, every reply is primed with <|start|>assistant<|message|> return num_tokens diff --git a/test/test_retrieve_utils.py b/test/test_retrieve_utils.py index b0743455fbc..fdb93d26ca8 100644 --- a/test/test_retrieve_utils.py +++ b/test/test_retrieve_utils.py @@ -31,6 +31,15 @@ class TestRetrieveUtils: + def test_num_tokens_from_text_custom_token_count_function(self): + def custom_token_count_function(text): + return len(text), 1, 2 + + text = "This is a sample text." + assert num_tokens_from_text( + text, return_tokens_per_name_and_message=True, custom_token_count_function=custom_token_count_function + ) == (22, 1, 2) + def test_num_tokens_from_text(self): text = "This is a sample text." assert num_tokens_from_text(text) == len(tiktoken.get_encoding("cl100k_base").encode(text)) From 46ab5b8c68330a81c4c567ba3f5de81b62f703ec Mon Sep 17 00:00:00 2001 From: Olaoluwa Ademola Salami Date: Mon, 9 Oct 2023 04:40:12 +0100 Subject: [PATCH 033/151] add twitter account to start page (#159) --- website/docs/Getting-Started.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index c09296e3806..75a16afb9d1 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -70,6 +70,7 @@ response = autogen.Completion.create(context=test_instance, **config) * Read [SDK](/docs/reference/agentchat/conversable_agent/). * Learn about [research](/docs/Research) around AutoGen. * Chat on [Discord](https://discord.gg/pAbnFJrkgZ). +* Follow on [Twitter](https://twitter.com/pyautogen). If you like our project, please give it a [star](https://github.com/microsoft/autogen/stargazers) on GitHub. If you are interested in contributing, please read [Contributor's Guide](/docs/Contribute). From 95e4c5851547294e6ffb5b77239b3200e988d3fe Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Mon, 9 Oct 2023 11:50:29 +0800 Subject: [PATCH 034/151] Update termination logic (#155) --- .../contrib/retrieve_user_proxy_agent.py | 54 ++++++++++--------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py index 37b8c5c33a7..0fc83bdb759 100644 --- a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py +++ b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py @@ -62,26 +62,10 @@ def colored(x, *args, **kwargs): """ -def _is_termination_msg_retrievechat(message): - """Check if a message is a termination message.""" - if isinstance(message, dict): - message = message.get("content") - if message is None: - return False - cb = extract_code(message) - contain_code = False - for c in cb: - if c[0] == "python": - contain_code = True - break - return not contain_code - - class RetrieveUserProxyAgent(UserProxyAgent): def __init__( self, name="RetrieveChatAgent", # default set to RetrieveChatAgent - is_termination_msg: Optional[Callable[[Dict], bool]] = _is_termination_msg_retrievechat, human_input_mode: Optional[str] = "ALWAYS", retrieve_config: Optional[Dict] = None, # config for the retrieve agent **kwargs, @@ -135,7 +119,6 @@ def __init__( """ super().__init__( name=name, - is_termination_msg=is_termination_msg, human_input_mode=human_input_mode, **kwargs, ) @@ -164,7 +147,27 @@ def __init__( self._intermediate_answers = set() # the intermediate answers self._doc_contents = [] # the contents of the current used doc self._doc_ids = [] # the ids of the current used doc - self.register_reply(Agent, RetrieveUserProxyAgent._generate_retrieve_user_reply) + self._is_termination_msg = self._is_termination_msg_retrievechat # update the termination message function + self.register_reply(Agent, RetrieveUserProxyAgent._generate_retrieve_user_reply, position=1) + + def _is_termination_msg_retrievechat(self, message): + """Check if a message is a termination message. + For code generation, terminate when no code block is detected. Currently only detect python code blocks. + For question answering, terminate when don't update context, i.e., answer is given. + """ + if isinstance(message, dict): + message = message.get("content") + if message is None: + return False + cb = extract_code(message) + contain_code = False + for c in cb: + # todo: support more languages + if c[0] == "python": + contain_code = True + break + update_context_case1, update_context_case2 = self._check_update_context(message) + return not (contain_code or update_context_case1 or update_context_case2) @staticmethod def get_max_tokens(model="gpt-3.5-turbo"): @@ -231,6 +234,13 @@ def _generate_message(self, doc_contents, task="default"): raise NotImplementedError(f"task {task} is not implemented.") return message + def _check_update_context(self, message): + if isinstance(message, dict): + message = message.get("content", "") + update_context_case1 = "UPDATE CONTEXT" in message[-20:].upper() or "UPDATE CONTEXT" in message[:20].upper() + update_context_case2 = self.customized_answer_prefix and self.customized_answer_prefix not in message.upper() + return update_context_case1, update_context_case2 + def _generate_retrieve_user_reply( self, messages: Optional[List[Dict]] = None, @@ -247,13 +257,7 @@ def _generate_retrieve_user_reply( if messages is None: messages = self._oai_messages[sender] message = messages[-1] - update_context_case1 = ( - "UPDATE CONTEXT" in message.get("content", "")[-20:].upper() - or "UPDATE CONTEXT" in message.get("content", "")[:20].upper() - ) - update_context_case2 = ( - self.customized_answer_prefix and self.customized_answer_prefix not in message.get("content", "").upper() - ) + update_context_case1, update_context_case2 = self._check_update_context(message) if (update_context_case1 or update_context_case2) and self.update_context: print(colored("Updating context and resetting conversation.", "green"), flush=True) # extract the first sentence in the response as the intermediate answer From 71ac774cd0dcbee4314c6fe906c0adf0d09178ff Mon Sep 17 00:00:00 2001 From: Vidhula <58629266+vidhula17@users.noreply.github.com> Date: Mon, 9 Oct 2023 15:43:25 +0530 Subject: [PATCH 035/151] Added twitter link to the contributing section (#162) Co-authored-by: vidhula17 --- website/docs/Contribute.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Contribute.md b/website/docs/Contribute.md index 49d44ef53f4..83a3a47eec0 100644 --- a/website/docs/Contribute.md +++ b/website/docs/Contribute.md @@ -6,7 +6,7 @@ This project welcomes and encourages all forms of contributions, including but n - Code review of pull requests. - Documentation, examples and test cases. - Readability improvement, e.g., improvement on docstr and comments. -- Community participation in [issues](https://github.com/microsoft/autogen/issues), [discussions](https://github.com/microsoft/autogen/discussions), and [discord](https://discord.gg/pAbnFJrkgZ). +- Community participation in [issues](https://github.com/microsoft/autogen/issues), [discussions](https://github.com/microsoft/autogen/discussions), [discord](https://discord.gg/pAbnFJrkgZ), and [twitter](https://twitter.com/pyautogen). - Tutorials, blog posts, talks that promote the project. - Sharing application scenarios and/or related research. From fbe82da2085361bf13a4fb9f285b5f0428a110dc Mon Sep 17 00:00:00 2001 From: Allen Shi <33379392+AllenJShi@users.noreply.github.com> Date: Mon, 9 Oct 2023 06:30:04 -0400 Subject: [PATCH 036/151] =?UTF-8?q?fix:=20replace=20gpt-35-turbo=20in=20mo?= =?UTF-8?q?del=20name=20to=20gpt-3.5-turbo=20so=20the=20name=20=E2=80=A6?= =?UTF-8?q?=20(#138)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: replace gpt-35-turbo in model name to gpt-3.5-turbo so the name string is in the current chat_model list * ref: reformatted with black --------- Co-authored-by: Chi Wang Co-authored-by: Qingyun Wu --- autogen/oai/completion.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index 55ca278f88a..fa01616128a 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -194,7 +194,8 @@ def _get_response(cls, config: Dict, raise_on_ratelimit_or_timeout=False, use_ca return response openai_completion = ( openai.ChatCompletion - if config["model"] in cls.chat_models or issubclass(cls, ChatCompletion) + if config["model"].replace("gpt-35-turbo", "gpt-3.5-turbo") in cls.chat_models + or issubclass(cls, ChatCompletion) else openai.Completion ) start_time = time.time() From d8ebf6c8c63a48cd5046fd5918192c176248c81d Mon Sep 17 00:00:00 2001 From: afourney Date: Mon, 9 Oct 2023 13:15:39 -0700 Subject: [PATCH 037/151] Output a warning if attempting to load the OAI_CONFIG_LIST from a file, but the file is not found. (#174) --- autogen/oai/openai_utils.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/autogen/oai/openai_utils.py b/autogen/oai/openai_utils.py index b34d5d465ab..cbae458c59c 100644 --- a/autogen/oai/openai_utils.py +++ b/autogen/oai/openai_utils.py @@ -237,10 +237,12 @@ def config_list_from_json( if json_str: config_list = json.loads(json_str) else: + config_list_path = os.path.join(file_location, env_or_file) try: - with open(os.path.join(file_location, env_or_file)) as json_file: + with open(config_list_path) as json_file: config_list = json.load(json_file) except FileNotFoundError: + logging.warning(f"The specified config_list file '{config_list_path}' does not exist.") return [] return filter_config(config_list, filter_dict) From 4522900487b65766d0f89dd30b10b6021b45e313 Mon Sep 17 00:00:00 2001 From: afourney Date: Mon, 9 Oct 2023 14:30:20 -0700 Subject: [PATCH 038/151] Warn if GroupChat is underpopulatd. (#170) --- autogen/agentchat/groupchat.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/autogen/agentchat/groupchat.py b/autogen/agentchat/groupchat.py index fae72f26ac4..d2f53002b41 100644 --- a/autogen/agentchat/groupchat.py +++ b/autogen/agentchat/groupchat.py @@ -3,6 +3,9 @@ from typing import Dict, List, Optional, Union from .agent import Agent from .conversable_agent import ConversableAgent +import logging + +logger = logging.getLogger(__name__) @dataclass @@ -42,6 +45,14 @@ def select_speaker_msg(self): def select_speaker(self, last_speaker: Agent, selector: ConversableAgent): """Select the next speaker.""" selector.update_system_message(self.select_speaker_msg()) + + # Warn if GroupChat is underpopulated, without established changing behavior + n_agents = len(self.agent_names) + if n_agents < 3: + logger.warning( + f"GroupChat is underpopulated with {n_agents} agents. Direct communication would be more efficient." + ) + final, name = selector.generate_oai_reply( self.messages + [ From 9571b7fbe753c91f4a7460d6a7c16ce13f33b98f Mon Sep 17 00:00:00 2001 From: afourney Date: Mon, 9 Oct 2023 16:27:54 -0700 Subject: [PATCH 039/151] Display a warning if use_docker evlauates to True but the python docker package is not available. (#172) Co-authored-by: Qingyun Wu --- autogen/code_utils.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/autogen/code_utils.py b/autogen/code_utils.py index ff97f567de5..a338e642e67 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -218,7 +218,7 @@ def execute_code( timeout: Optional[int] = None, filename: Optional[str] = None, work_dir: Optional[str] = None, - use_docker: Optional[Union[List[str], str, bool]] = docker is not None, + use_docker: Optional[Union[List[str], str, bool]] = True, lang: Optional[str] = "python", ) -> Tuple[int, str, str]: """Execute code in a docker container. @@ -257,6 +257,15 @@ def execute_code( logger.error(error_msg) raise AssertionError(error_msg) + # Warn if docker was requested but cannot be provided. In this case + # the current behavior is to fall back to run natively, but this behavior + # is subject to change. + if use_docker and docker is None: + use_docker = False + logger.warning( + "execute_code was called with use_docker evaluating to True, but the python docker package is not available. Falling back to native code execution. Note: this fallback behavior is subject to change" + ) + timeout = timeout or DEFAULT_TIMEOUT original_filename = filename if WIN32 and lang in ["sh", "shell"] and (not use_docker): From 72239a6d5d00f4d0d94a337a966ee8cd2235ce80 Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Mon, 9 Oct 2023 17:08:08 -0700 Subject: [PATCH 040/151] bump version to 0.1.9 (#177) Co-authored-by: Qingyun Wu --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index 9cb17e79762..c11f861afbe 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.8" +__version__ = "0.1.9" From afdff3ea14c53b69253072258d96e49eacdbf263 Mon Sep 17 00:00:00 2001 From: afourney Date: Mon, 9 Oct 2023 17:17:36 -0700 Subject: [PATCH 041/151] Warn if oai.Completion is provided with an empty config_list (#178) Co-authored-by: Qingyun Wu --- autogen/oai/completion.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index fa01616128a..595cbe3bed0 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -768,6 +768,13 @@ def yes_or_no_filter(context, config, response): """ if ERROR: raise ERROR + + # Warn if a config list was provided but was empty + if type(config_list) is list and len(config_list) == 0: + logger.warning( + "Completion was provided with a config_list, but the list was empty. Adopting default OpenAI behavior, which reads from the 'model' parameter instead." + ) + if config_list: last = len(config_list) - 1 cost = 0 From 37a07a83c3c3c938e54b837329c885d815d0cd0f Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Tue, 10 Oct 2023 13:21:56 +0800 Subject: [PATCH 042/151] Bump version to 0.1.10 (#181) --- autogen/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/version.py b/autogen/version.py index c11f861afbe..569b1212f7e 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.9" +__version__ = "0.1.10" From fa6e2a52c00a28756b9cf30e85bc336d4c5da055 Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Tue, 10 Oct 2023 20:53:18 +0800 Subject: [PATCH 043/151] Add support to customized vectordb and embedding functions (#161) * Add custom embedding function * Add support to custom vector db * Improve docstring * Improve docstring * Improve docstring * Add support to customized is_termination_msg fucntion * Add a test for customize vector db with lancedb * Fix tests * Add test for embedding_function * Update docstring --- .github/workflows/build.yml | 2 +- .../contrib/retrieve_user_proxy_agent.py | 75 ++++++++++++++++--- autogen/retrieve_utils.py | 62 +++++++++++++-- setup.py | 1 + test/agentchat/test_retrievechat.py | 3 + test/test_retrieve_utils.py | 64 ++++++++++++++++ 6 files changed, 192 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 63ca0a25460..5e5fd186bea 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -40,7 +40,7 @@ jobs: python -m pip install --upgrade pip wheel pip install -e . python -c "import autogen" - pip install -e.[mathchat,retrievechat] datasets pytest + pip install -e.[mathchat,retrievechat,test] datasets pytest pip uninstall -y openai - name: Test with pytest if: matrix.python-version != '3.10' diff --git a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py index 0fc83bdb759..0f29aa62d14 100644 --- a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py +++ b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py @@ -67,6 +67,7 @@ def __init__( self, name="RetrieveChatAgent", # default set to RetrieveChatAgent human_input_mode: Optional[str] = "ALWAYS", + is_termination_msg: Optional[Callable[[Dict], bool]] = None, retrieve_config: Optional[Dict] = None, # config for the retrieve agent **kwargs, ): @@ -82,14 +83,17 @@ def __init__( the number of auto reply reaches the max_consecutive_auto_reply. (3) When "NEVER", the agent will never prompt for human input. Under this mode, the conversation stops when the number of auto reply reaches the max_consecutive_auto_reply or when is_termination_msg is True. + is_termination_msg (function): a function that takes a message in the form of a dictionary + and returns a boolean value indicating if this received message is a termination message. + The dict can contain the following keys: "content", "role", "name", "function_call". retrieve_config (dict or None): config for the retrieve agent. To use default config, set to None. Otherwise, set to a dictionary with the following keys: - task (Optional, str): the task of the retrieve chat. Possible values are "code", "qa" and "default". System prompt will be different for different tasks. The default value is `default`, which supports both code and qa. - - client (Optional, chromadb.Client): the chromadb client. - If key not provided, a default client `chromadb.Client()` will be used. + - client (Optional, chromadb.Client): the chromadb client. If key not provided, a default client `chromadb.Client()` + will be used. If you want to use other vector db, extend this class and override the `retrieve_docs` function. - docs_path (Optional, str): the path to the docs directory. It can also be the path to a single file, - or the url to a single file. If key not provided, a default path `./docs` will be used. + or the url to a single file. Default is None, which works only if the collection is already created. - collection_name (Optional, str): the name of the collection. If key not provided, a default name `autogen-docs` will be used. - model (Optional, str): the model to use for the retrieve chat. @@ -106,16 +110,45 @@ def __init__( If key not provided, a default model `all-MiniLM-L6-v2` will be used. All available models can be found at `https://www.sbert.net/docs/pretrained_models.html`. The default model is a fast model. If you want to use a high performance model, `all-mpnet-base-v2` is recommended. + - embedding_function (Optional, Callable): the embedding function for creating the vector db. Default is None, + SentenceTransformer with the given `embedding_model` will be used. If you want to use OpenAI, Cohere, HuggingFace or + other embedding functions, you can pass it here, follow the examples in `https://docs.trychroma.com/embeddings`. - customized_prompt (Optional, str): the customized prompt for the retrieve chat. Default is None. - customized_answer_prefix (Optional, str): the customized answer prefix for the retrieve chat. Default is "". If not "" and the customized_answer_prefix is not in the answer, `Update Context` will be triggered. - update_context (Optional, bool): if False, will not apply `Update Context` for interactive retrieval. Default is True. - get_or_create (Optional, bool): if True, will create/recreate a collection for the retrieve chat. - This is the same as that used in chromadb. Default is False. + This is the same as that used in chromadb. Default is False. Will be set to False if docs_path is None. - custom_token_count_function(Optional, Callable): a custom function to count the number of tokens in a string. The function should take a string as input and return three integers (token_count, tokens_per_message, tokens_per_name). Default is None, tiktoken will be used and may not be accurate for non-OpenAI models. **kwargs (dict): other kwargs in [UserProxyAgent](../user_proxy_agent#__init__). + + Example of overriding retrieve_docs: + If you have set up a customized vector db, and it's not compatible with chromadb, you can easily plug in it with below code. + ```python + class MyRetrieveUserProxyAgent(RetrieveUserProxyAgent): + def query_vector_db( + self, + query_texts: List[str], + n_results: int = 10, + search_string: str = "", + **kwargs, + ) -> Dict[str, Union[List[str], List[List[str]]]]: + # define your own query function here + pass + + def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = "", **kwargs): + results = self.query_vector_db( + query_texts=[problem], + n_results=n_results, + search_string=search_string, + **kwargs, + ) + + self._results = results + print("doc_ids: ", results["ids"]) + ``` """ super().__init__( name=name, @@ -126,7 +159,7 @@ def __init__( self._retrieve_config = {} if retrieve_config is None else retrieve_config self._task = self._retrieve_config.get("task", "default") self._client = self._retrieve_config.get("client", chromadb.Client()) - self._docs_path = self._retrieve_config.get("docs_path", "./docs") + self._docs_path = self._retrieve_config.get("docs_path", None) self._collection_name = self._retrieve_config.get("collection_name", "autogen-docs") self._model = self._retrieve_config.get("model", "gpt-4") self._max_tokens = self.get_max_tokens(self._model) @@ -134,20 +167,26 @@ def __init__( self._chunk_mode = self._retrieve_config.get("chunk_mode", "multi_lines") self._must_break_at_empty_line = self._retrieve_config.get("must_break_at_empty_line", True) self._embedding_model = self._retrieve_config.get("embedding_model", "all-MiniLM-L6-v2") + self._embedding_function = self._retrieve_config.get("embedding_function", None) self.customized_prompt = self._retrieve_config.get("customized_prompt", None) self.customized_answer_prefix = self._retrieve_config.get("customized_answer_prefix", "").upper() self.update_context = self._retrieve_config.get("update_context", True) - self._get_or_create = self._retrieve_config.get("get_or_create", False) + self._get_or_create = ( + self._retrieve_config.get("get_or_create", False) if self._docs_path is not None else False + ) self.custom_token_count_function = self._retrieve_config.get("custom_token_count_function", None) self._context_max_tokens = self._max_tokens * 0.8 - self._collection = False # the collection is not created + self._collection = True if self._docs_path is None else False # whether the collection is created self._ipython = get_ipython() self._doc_idx = -1 # the index of the current used doc self._results = {} # the results of the current query self._intermediate_answers = set() # the intermediate answers self._doc_contents = [] # the contents of the current used doc self._doc_ids = [] # the ids of the current used doc - self._is_termination_msg = self._is_termination_msg_retrievechat # update the termination message function + # update the termination message function + self._is_termination_msg = ( + self._is_termination_msg_retrievechat if is_termination_msg is None else is_termination_msg + ) self.register_reply(Agent, RetrieveUserProxyAgent._generate_retrieve_user_reply, position=1) def _is_termination_msg_retrievechat(self, message): @@ -188,7 +227,7 @@ def _reset(self, intermediate=False): self._doc_contents = [] # the contents of the current used doc self._doc_ids = [] # the ids of the current used doc - def _get_context(self, results): + def _get_context(self, results: Dict[str, Union[List[str], List[List[str]]]]): doc_contents = "" current_tokens = 0 _doc_idx = self._doc_idx @@ -297,6 +336,22 @@ def _generate_retrieve_user_reply( return False, None def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = ""): + """Retrieve docs based on the given problem and assign the results to the class property `_results`. + In case you want to customize the retrieval process, such as using a different vector db whose APIs are not + compatible with chromadb or filter results with metadata, you can override this function. Just keep the current + parameters and add your own parameters with default values, and keep the results in below type. + + Type of the results: Dict[str, List[List[Any]]], should have keys "ids" and "documents", "ids" for the ids of + the retrieved docs and "documents" for the contents of the retrieved docs. Any other keys are optional. Refer + to `chromadb.api.types.QueryResult` as an example. + ids: List[string] + documents: List[List[string]] + + Args: + problem (str): the problem to be solved. + n_results (int): the number of results to be retrieved. + search_string (str): only docs containing this string will be retrieved. + """ if not self._collection or self._get_or_create: print("Trying to create collection.") create_vector_db_from_dir( @@ -308,6 +363,7 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = must_break_at_empty_line=self._must_break_at_empty_line, embedding_model=self._embedding_model, get_or_create=self._get_or_create, + embedding_function=self._embedding_function, ) self._collection = True self._get_or_create = False @@ -319,6 +375,7 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = client=self._client, collection_name=self._collection_name, embedding_model=self._embedding_model, + embedding_function=self._embedding_function, ) self._results = results print("doc_ids: ", results["ids"]) diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index fbe7c28784a..721b1ec29a5 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -6,6 +6,7 @@ import tiktoken import chromadb from chromadb.api import API +from chromadb.api.types import QueryResult import chromadb.utils.embedding_functions as ef import logging import pypdf @@ -263,12 +264,36 @@ def create_vector_db_from_dir( chunk_mode: str = "multi_lines", must_break_at_empty_line: bool = True, embedding_model: str = "all-MiniLM-L6-v2", + embedding_function: Callable = None, ): - """Create a vector db from all the files in a given directory.""" + """Create a vector db from all the files in a given directory, the directory can also be a single file or a url to + a single file. We support chromadb compatible APIs to create the vector db, this function is not required if + you prepared your own vector db. + + Args: + dir_path (str): the path to the directory, file or url. + max_tokens (Optional, int): the maximum number of tokens per chunk. Default is 4000. + client (Optional, API): the chromadb client. Default is None. + db_path (Optional, str): the path to the chromadb. Default is "/tmp/chromadb.db". + collection_name (Optional, str): the name of the collection. Default is "all-my-documents". + get_or_create (Optional, bool): Whether to get or create the collection. Default is False. If True, the collection + will be recreated if it already exists. + chunk_mode (Optional, str): the chunk mode. Default is "multi_lines". + must_break_at_empty_line (Optional, bool): Whether to break at empty line. Default is True. + embedding_model (Optional, str): the embedding model to use. Default is "all-MiniLM-L6-v2". Will be ignored if + embedding_function is not None. + embedding_function (Optional, Callable): the embedding function to use. Default is None, SentenceTransformer with + the given `embedding_model` will be used. If you want to use OpenAI, Cohere, HuggingFace or other embedding + functions, you can pass it here, follow the examples in `https://docs.trychroma.com/embeddings`. + """ if client is None: client = chromadb.PersistentClient(path=db_path) try: - embedding_function = ef.SentenceTransformerEmbeddingFunction(embedding_model) + embedding_function = ( + ef.SentenceTransformerEmbeddingFunction(embedding_model) + if embedding_function is None + else embedding_function + ) collection = client.create_collection( collection_name, get_or_create=get_or_create, @@ -300,14 +325,41 @@ def query_vector_db( collection_name: str = "all-my-documents", search_string: str = "", embedding_model: str = "all-MiniLM-L6-v2", -) -> Dict[str, List[str]]: - """Query a vector db.""" + embedding_function: Callable = None, +) -> QueryResult: + """Query a vector db. We support chromadb compatible APIs, it's not required if you prepared your own vector db + and query function. + + Args: + query_texts (List[str]): the query texts. + n_results (Optional, int): the number of results to return. Default is 10. + client (Optional, API): the chromadb compatible client. Default is None, a chromadb client will be used. + db_path (Optional, str): the path to the vector db. Default is "/tmp/chromadb.db". + collection_name (Optional, str): the name of the collection. Default is "all-my-documents". + search_string (Optional, str): the search string. Default is "". + embedding_model (Optional, str): the embedding model to use. Default is "all-MiniLM-L6-v2". Will be ignored if + embedding_function is not None. + embedding_function (Optional, Callable): the embedding function to use. Default is None, SentenceTransformer with + the given `embedding_model` will be used. If you want to use OpenAI, Cohere, HuggingFace or other embedding + functions, you can pass it here, follow the examples in `https://docs.trychroma.com/embeddings`. + + Returns: + QueryResult: the query result. The format is: + class QueryResult(TypedDict): + ids: List[IDs] + embeddings: Optional[List[List[Embedding]]] + documents: Optional[List[List[Document]]] + metadatas: Optional[List[List[Metadata]]] + distances: Optional[List[List[float]]] + """ if client is None: client = chromadb.PersistentClient(path=db_path) # the collection's embedding function is always the default one, but we want to use the one we used to create the # collection. So we compute the embeddings ourselves and pass it to the query function. collection = client.get_collection(collection_name) - embedding_function = ef.SentenceTransformerEmbeddingFunction(embedding_model) + embedding_function = ( + ef.SentenceTransformerEmbeddingFunction(embedding_model) if embedding_function is None else embedding_function + ) query_embeddings = embedding_function(query_texts) # Query/search n most similar results. You can also .get by id results = collection.query( diff --git a/setup.py b/setup.py index 37c9d2d883f..a42432eb033 100644 --- a/setup.py +++ b/setup.py @@ -40,6 +40,7 @@ extras_require={ "test": [ "chromadb", + "lancedb", "coverage>=5.3", "datasets", "ipykernel", diff --git a/test/agentchat/test_retrievechat.py b/test/agentchat/test_retrievechat.py index bde5730cbbb..99e395de505 100644 --- a/test/agentchat/test_retrievechat.py +++ b/test/agentchat/test_retrievechat.py @@ -12,6 +12,7 @@ ) from autogen.retrieve_utils import create_vector_db_from_dir, query_vector_db import chromadb + from chromadb.utils import embedding_functions as ef skip_test = False except ImportError: @@ -49,6 +50,7 @@ def test_retrievechat(): }, ) + sentence_transformer_ef = ef.SentenceTransformerEmbeddingFunction() ragproxyagent = RetrieveUserProxyAgent( name="ragproxyagent", human_input_mode="NEVER", @@ -58,6 +60,7 @@ def test_retrievechat(): "chunk_token_size": 2000, "model": config_list[0]["model"], "client": chromadb.PersistentClient(path="/tmp/chromadb"), + "embedding_function": sentence_transformer_ef, }, ) diff --git a/test/test_retrieve_utils.py b/test/test_retrieve_utils.py index fdb93d26ca8..be215facb84 100644 --- a/test/test_retrieve_utils.py +++ b/test/test_retrieve_utils.py @@ -100,6 +100,70 @@ def test_query_vector_db(self): results = query_vector_db(["autogen"], client=client) assert isinstance(results, dict) and any("autogen" in res[0].lower() for res in results.get("documents", [])) + def test_custom_vector_db(self): + try: + import lancedb + except ImportError: + return + from autogen.agentchat.contrib.retrieve_user_proxy_agent import RetrieveUserProxyAgent + + db_path = "/tmp/lancedb" + + def create_lancedb(): + db = lancedb.connect(db_path) + data = [ + {"vector": [1.1, 1.2], "id": 1, "documents": "This is a test document spark"}, + {"vector": [0.2, 1.8], "id": 2, "documents": "This is another test document"}, + {"vector": [0.1, 0.3], "id": 3, "documents": "This is a third test document spark"}, + {"vector": [0.5, 0.7], "id": 4, "documents": "This is a fourth test document"}, + {"vector": [2.1, 1.3], "id": 5, "documents": "This is a fifth test document spark"}, + {"vector": [5.1, 8.3], "id": 6, "documents": "This is a sixth test document"}, + ] + try: + db.create_table("my_table", data) + except OSError: + pass + + class MyRetrieveUserProxyAgent(RetrieveUserProxyAgent): + def query_vector_db( + self, + query_texts, + n_results=10, + search_string="", + ): + if query_texts: + vector = [0.1, 0.3] + db = lancedb.connect(db_path) + table = db.open_table("my_table") + query = table.search(vector).where(f"documents LIKE '%{search_string}%'").limit(n_results).to_df() + return {"ids": query["id"].tolist(), "documents": query["documents"].tolist()} + + def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = ""): + results = self.query_vector_db( + query_texts=[problem], + n_results=n_results, + search_string=search_string, + ) + + self._results = results + print("doc_ids: ", results["ids"]) + + ragragproxyagent = MyRetrieveUserProxyAgent( + name="ragproxyagent", + human_input_mode="NEVER", + max_consecutive_auto_reply=2, + retrieve_config={ + "task": "qa", + "chunk_token_size": 2000, + "client": "__", + "embedding_model": "all-mpnet-base-v2", + }, + ) + + create_lancedb() + ragragproxyagent.retrieve_docs("This is a test document spark", n_results=10, search_string="spark") + assert ragragproxyagent._results["ids"] == [3, 1, 5] + if __name__ == "__main__": pytest.main() From 688cf44d0e2bae339a9753c261fc9eb6714a0c3a Mon Sep 17 00:00:00 2001 From: Ikko Eltociear Ashimine Date: Wed, 11 Oct 2023 02:43:55 +0900 Subject: [PATCH 044/151] Fix typo in agentchat_MathChat.ipynb (#191) requries -> requires --- notebook/agentchat_MathChat.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/notebook/agentchat_MathChat.ipynb b/notebook/agentchat_MathChat.ipynb index 226355c07d7..14a2d758387 100644 --- a/notebook/agentchat_MathChat.ipynb +++ b/notebook/agentchat_MathChat.ipynb @@ -240,7 +240,7 @@ "Check out `MathUserProxyAgent.generate_init_message(problem, prompt_type='default', customized_prompt=None)`:\n", "- You may choose from `['default', 'python', 'two_tools']` for parameter `prompt_type`. We include two more prompts in the paper: \n", " 1. `'python'` is a simplified prompt from the default prompt that uses Python only. \n", - " 2. `'two_tools'` further allows the selection of Python or Wolfram Alpha based on this simplified `python` prompt. Note that this option requries a Wolfram Alpha API key and put it in `wolfram.txt`.\n", + " 2. `'two_tools'` further allows the selection of Python or Wolfram Alpha based on this simplified `python` prompt. Note that this option requires a Wolfram Alpha API key and put it in `wolfram.txt`.\n", "\n", "- You can also input your customized prompt if needed: `mathproxyagent.generate_init_message(problem, customized_prompt=\"Your customized prompt\")`. Since this mathproxyagent detects '\\boxed{}' as termination, you need to have a similar termination sentence in the prompt: \"If you get the answer, put the answer in \\\\boxed{}.\". If the customized is provided, the `prompt_type` will be ignored.\n", "\n", From 0a1214f875aedfc4ff1bc0c7cb690b32499e4f45 Mon Sep 17 00:00:00 2001 From: wayliums Date: Tue, 10 Oct 2023 18:20:04 -0700 Subject: [PATCH 045/151] Make getting started a little easier (#180) * Update README.md add codespace quick start * add codespace * update path --------- Co-authored-by: Li Jiang --- README.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2e8a7cafa22..eac057fffae 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,17 @@ AutoGen is a framework that enables the development of LLM applications using mu AutoGen is powered by collaborative [research studies](https://microsoft.github.io/autogen/docs/Research) from Microsoft, Penn State University, and the University of Washington. +## Quickstart +The easiest way to start playing is +1. Click below to use the Github Codespace + + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/microsoft/autogen?quickstart=1) + + 2. Copy OAI_CONFIG_LIST_sample to /notebook folder, name to OAI_CONFIG_LIST, and set the correct config. + 3. Start playing with the notebooks! + + + ## Installation AutoGen requires **Python version >= 3.8**. It can be installed from pip: @@ -59,8 +70,6 @@ For [code execution](https://microsoft.github.io/autogen/docs/FAQ/#code-executio For LLM inference configurations, check the [FAQ](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). -## Quickstart - ## Multi-Agent Conversation Framework Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents that integrate LLMs, tools, and humans. From d481aebb9bfcf677bf3a7038d88bb3df2109647b Mon Sep 17 00:00:00 2001 From: Manuel Saelices Date: Wed, 11 Oct 2023 19:27:54 +0200 Subject: [PATCH 046/151] Fix edge cases extracting code when the message's content is None (#205) --- autogen/agentchat/conversable_agent.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/autogen/agentchat/conversable_agent.py b/autogen/agentchat/conversable_agent.py index 1c875da8469..87845f910d1 100644 --- a/autogen/agentchat/conversable_agent.py +++ b/autogen/agentchat/conversable_agent.py @@ -627,6 +627,8 @@ def generate_code_execution_reply( # if no code blocks are found, continue for i in range(min(len(messages), last_n_messages)): message = messages[-(i + 1)] + if not message["content"]: + continue code_blocks = extract_code(message["content"]) if len(code_blocks) == 1 and code_blocks[0][0] == UNKNOWN: continue From c7dd6ce1f783057a610f359b7770276963a6dc29 Mon Sep 17 00:00:00 2001 From: gagb Date: Wed, 11 Oct 2023 20:27:55 -0700 Subject: [PATCH 047/151] Add md for faqs (#194) * Add md for faq; Update readme * Update TRANSPARENCY_FAQS.md Co-authored-by: Chi Wang * Update TRANSPARENCY_FAQS.md Co-authored-by: Chi Wang * Remove trailing space * Fix trailing space issue --------- Co-authored-by: Chi Wang --- README.md | 2 +- TRANSPARENCY_FAQS.md | 56 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 TRANSPARENCY_FAQS.md diff --git a/README.md b/README.md index eac057fffae..36282c028fc 100644 --- a/README.md +++ b/README.md @@ -134,7 +134,7 @@ You can find detailed documentation about AutoGen [here](https://microsoft.githu In addition, you can find: -- [Research](https://microsoft.github.io/autogen/docs/Research) and [blogposts](https://microsoft.github.io/autogen/blog) around AutoGen. +- [Research](https://microsoft.github.io/autogen/docs/Research), [blogposts](https://microsoft.github.io/autogen/blog) around AutoGen, and [Transparency FAQs](https://github.com/microsoft/autogen/blob/main/TRANSPARENCY_FAQS.md) - [Discord](https://discord.gg/pAbnFJrkgZ). diff --git a/TRANSPARENCY_FAQS.md b/TRANSPARENCY_FAQS.md new file mode 100644 index 00000000000..3953f4c076d --- /dev/null +++ b/TRANSPARENCY_FAQS.md @@ -0,0 +1,56 @@ +# AutoGen: Responsible AI FAQ + +## What is AutoGen? +AutoGen is a framework for simplifying the orchestration, optimization, and automation of LLM workflows. It offers customizable and conversable agents that leverage the strongest capabilities of the most advanced LLMs, like GPT-4, while addressing their limitations by integrating with humans and tools and having conversations between multiple agents via automated chat. + +## What can AutoGen do? +AutoGen is an experimentational framework for building a complex multi-agent conversation system by: +- Defining a set of agents with specialized capabilities and roles. +- Defining the interaction behavior between agents, i.e., what to reply when an agent receives messages from another agent. + +The agent conversation-centric design has numerous benefits, including that it: +- Naturally handles ambiguity, feedback, progress, and collaboration. +- Enables effective coding-related tasks, like tool use with back-and-forth troubleshooting. +- Allows users to seamlessly opt in or opt out via an agent in the chat. +- Achieves a collective goal with the cooperation of multiple specialists. + +## What is/are AutoGen’s intended use(s)? +Please note that AutoGen is an open-source library under active development and intended for use for research purposes. It should not be used in any downstream applications without additional detailed evaluation of robustness, safety issues and assessment of any potential harm or bias in the proposed application. + +AutoGen is a generic infrastructure that can be used in multiple scenarios. The system’s intended uses include: + +- Building LLM workflows that solve more complex tasks: Users can create agents that interleave reasoning and tool use capabilities of the latest LLMs such as GPT-4. To solve complex tasks, multiple agents can converse to work together (e.g., by partitioning a complex problem into simpler steps or by providing different viewpoints or perspectives). +- Application-specific agent topologies: Users can create application specific agent topologies and patterns for agents to interact. The exact topology may depend on the domain’s complexity and semantic capabilities of the LLM available. +- Code generation and execution: Users can implement agents that can assume the roles of writing code and other agents that can execute code. Agents can do this with varying levels of human involvement. Users can add more agents and program the conversations to enforce constraints on code and output. +- Question answering: Users can create agents that can help answer questions using retrieval augmented generation. +- End user and multi-agent chat and debate: Users can build chat applications where they converse with multiple agents at the same time. + +While AutoGen automates LLM workflows, decisions about how to use specific LLM outputs should always have a human in the loop. For example, you should not use AutoGen to automatically post LLM generated content to social media. + +## How was AutoGen evaluated? What metrics are used to measure performance? +- Current version of AutoGen was evaluated on six applications to illustrate its potential in simplifying the development of high-performance multi-agent applications. These applications are selected based on their real-world relevance, problem difficulty and problem solving capabilities enabled by AutoGen, and innovative potential. +- These applications involve using AutoGen to solve math problems, question answering, decision making in text world environments, supply chain optimization, etc. For each of these domains AutoGen was evaluated on various success based metrics (i.e., how often the AutoGen based implementation solved the task). And, in some cases, AutoGen based approach was also evaluated on implementation efficiency (e.g., to track reductions in developer effort to build). More details can be found at: https://aka.ms/AutoGen/TechReport + +## What are the limitations of AutoGen? How can users minimize the impact of AutoGen’s limitations when using the system? +AutoGen relies on existing LLMs. Experimenting with AutoGen would retain common limitations of large language models; including: + +- Data Biases: Large language models, trained on extensive data, can inadvertently carry biases present in the source data. Consequently, the models may generate outputs that could be potentially biased or unfair. +- Lack of Contextual Understanding: Despite their impressive capabilities in language understanding and generation, these models exhibit limited real-world understanding, resulting in potential inaccuracies or nonsensical responses. +- Lack of Transparency: Due to the complexity and size, large language models can act as `black boxes,' making it difficult to comprehend the rationale behind specific outputs or decisions. +- Content Harms: There are various types of content harms that large language models can cause. It is important to be aware of them when using these models, and to take actions to prevent them. It is recommended to leverage various content moderation services provided by different companies and institutions. +- Inaccurate or ungrounded content: It is important to be aware and cautious not to entirely rely on a given language model for critical decisions or information that might have deep impact as it is not obvious how to prevent these models to fabricate content without high authority input sources. +- Potential for Misuse: Without suitable safeguards, there is a risk that these models could be maliciously used for generating disinformation or harmful content. + + +Additionally, AutoGen’s multi-agent framework may amplify or introduce additional risks, such as: +- Privacy and Data Protection: The framework allows for human participation in conversations between agents. It is important to ensure that user data and conversations are protected and that developers use appropriate measures to safeguard privacy. +- Accountability and Transparency: The framework involves multiple agents conversing and collaborating, it is important to establish clear accountability and transparency mechanisms. Users should be able to understand and trace the decision-making process of the agents involved in order to ensure accountability and address any potential issues or biases. +- Trust and reliance: The framework leverages human understanding and intelligence while providing automation through conversations between agents. It is important to consider the impact of this interaction on user experience, trust, and reliance on AI systems. Clear communication and user education about the capabilities and limitations of the system will be essential. +- Security & unintended consequences: The use of multi-agent conversations and automation in complex tasks may have unintended consequences. Especially, allowing LLM agents to make changes in external environments through code execution or function calls, such as install packages, could pose significant risks. Developers should carefully consider the potential risks and ensure that appropriate safeguards are in place to prevent harm or negative outcomes, including keeping a human in the loop for decision making. + +## What operational factors and settings allow for effective and responsible use of AutoGen? +- Code execution: AutoGen recommends using docker containers so that code execution can happen in a safer manner. Users can use function call instead of free-form code to execute pre-defined functions only. That helps increase the reliability and safety. Users can customize the code execution environment to tailor to their requirements. +- Human involvement: AutoGen prioritizes human involvement in multi agent conversation. The overseers can step in to give feedback to agents and steer them in the correct direction. By default, users get chance to confirm before code is executed. +- Agent modularity: Modularity allows agents to have different levels of information access. Additional agents can assume roles that help keep other agents in check. For example, one can easily add a dedicated agent to play the role of safeguard. +- LLMs: Users can choose the LLM that is optimized for responsible use. The default LLM is GPT-4 which inherits the existing RAI mechanisms and filters from the LLM provider. Caching is enabled by default to increase reliability and control cost. We encourage developers to review [OpenAI’s Usage policies](https://openai.com/policies/usage-policies) and [Azure OpenAI’s Code of Conduct](https://learn.microsoft.com/en-us/legal/cognitive-services/openai/code-of-conduct) when using GPT-4. +- Multi-agent setup: When using auto replies, the users can limit the number of auto replies, termination conditions etc. in the settings to increase reliability. From 98ca5bcc80417280266a24dfdf57bcf406e87634 Mon Sep 17 00:00:00 2001 From: Deepanshu <91846266+creator0131@users.noreply.github.com> Date: Thu, 12 Oct 2023 09:17:04 +0530 Subject: [PATCH 048/151] Fix typo in README.md (#193) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 36282c028fc..925ad6e4d64 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ Find more options in [Installation](https://microsoft.github.io/autogen/docs/Ins For [code execution](https://microsoft.github.io/autogen/docs/FAQ/#code-execution), we strongly recommend installing the python docker package, and using docker. -For LLM inference configurations, check the [FAQ](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). +For LLM inference configurations, check the [FAQs](https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints). ## Multi-Agent Conversation Framework From 09854e4704c9c9270897bfcd2dccd1eda766d592 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABtan=20H?= Date: Thu, 12 Oct 2023 06:52:30 +0200 Subject: [PATCH 049/151] Icons not centered in the "autogen_agentchat.png" (#169) * Delete website/static/img/autogen_agentchat.png * Add files via upload --- website/static/img/autogen_agentchat.png | Bin 180819 -> 130557 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/website/static/img/autogen_agentchat.png b/website/static/img/autogen_agentchat.png index 893d3eecbfcf0a3ad14798c1db7bc75768e16667..989a850a21c67bbb007112055d58a019c8970674 100644 GIT binary patch literal 130557 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

Fji?elokH?nI?)r$@KnmQiJ? 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%0AOqUo!DQu-Lim5u*)4Vno=OoEcmBYv@x&L?v{ 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 B%dY?c From 6b14bd6609a30c25b71c598e7a2f27152a200f77 Mon Sep 17 00:00:00 2001 From: afourney Date: Thu, 12 Oct 2023 05:58:36 -0700 Subject: [PATCH 050/151] Addresses issue #199 (#200) * Addresses issue #199 * Fixed comment to align with new behavior. --------- Co-authored-by: Qingyun Wu --- autogen/code_utils.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/autogen/code_utils.py b/autogen/code_utils.py index a338e642e67..37b18ca2c12 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -218,7 +218,7 @@ def execute_code( timeout: Optional[int] = None, filename: Optional[str] = None, work_dir: Optional[str] = None, - use_docker: Optional[Union[List[str], str, bool]] = True, + use_docker: Optional[Union[List[str], str, bool]] = None, lang: Optional[str] = "python", ) -> Tuple[int, str, str]: """Execute code in a docker container. @@ -257,14 +257,18 @@ def execute_code( logger.error(error_msg) raise AssertionError(error_msg) - # Warn if docker was requested but cannot be provided. In this case - # the current behavior is to fall back to run natively, but this behavior + # Warn if use_docker was unspecified (or None), and cannot be provided (the default). + # In this case the current behavior is to fall back to run natively, but this behavior # is subject to change. - if use_docker and docker is None: - use_docker = False - logger.warning( - "execute_code was called with use_docker evaluating to True, but the python docker package is not available. Falling back to native code execution. Note: this fallback behavior is subject to change" - ) + if use_docker is None: + if docker is None: + use_docker = False + logger.warning( + "execute_code was called without specifying a value for use_docker. Since the python docker package is not available, code will be run natively. Note: this fallback behavior is subject to change" + ) + else: + # Default to true + use_docker = True timeout = timeout or DEFAULT_TIMEOUT original_filename = filename From b61aeb6cce65ea45027c88669e8d3ff5e53148ff Mon Sep 17 00:00:00 2001 From: Yiran Wu <32823396+kevin666aa@users.noreply.github.com> Date: Thu, 12 Oct 2023 10:31:52 -0400 Subject: [PATCH 051/151] Improving logging in oai.completion to show token_count (#179) * update * update doc --------- Co-authored-by: Chi Wang Co-authored-by: Qingyun Wu --- autogen/oai/completion.py | 48 ++++++++++++++++++++ test/agentchat/test_assistant_agent.py | 2 + website/docs/Use-Cases/enhanced_inference.md | 12 +++++ 3 files changed, 62 insertions(+) diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index 595cbe3bed0..f3ea897de6b 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -9,6 +9,7 @@ from flaml.tune.space import is_constant from flaml.automl.logger import logger_formatter from .openai_utils import get_key +from collections import defaultdict try: import openai @@ -157,6 +158,7 @@ def _book_keeping(cls, config: Dict, response): value = { "created_at": [], "cost": [], + "token_count": [], } if "messages" in config: messages = config["messages"] @@ -168,6 +170,14 @@ def _book_keeping(cls, config: Dict, response): key = get_key([config["prompt"]] + [choice.get("text") for choice in response["choices"]]) value["created_at"].append(cls._count_create) value["cost"].append(response["cost"]) + value["token_count"].append( + { + "model": response["model"], + "prompt_tokens": response["usage"]["prompt_tokens"], + "completion_tokens": response["usage"].get("completion_tokens", 0), + "total_tokens": response["usage"]["total_tokens"], + } + ) cls._history_dict[key] = value cls._count_create += 1 return @@ -1067,6 +1077,44 @@ def logged_history(cls) -> Dict: """Return the book keeping dictionary.""" return cls._history_dict + @classmethod + def print_usage_summary(cls) -> Dict: + """Return the usage summary.""" + if cls._history_dict is None: + print("No usage summary available.", flush=True) + + token_count_summary = defaultdict(lambda: {"prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0}) + + if not cls._history_compact: + source = cls._history_dict.values() + total_cost = sum(msg_pair["response"]["cost"] for msg_pair in source) + else: + # source = cls._history_dict["token_count"] + # total_cost = sum(cls._history_dict['cost']) + total_cost = sum(sum(value_list["cost"]) for value_list in cls._history_dict.values()) + source = ( + token_data for value_list in cls._history_dict.values() for token_data in value_list["token_count"] + ) + + for entry in source: + if not cls._history_compact: + model = entry["response"]["model"] + token_data = entry["response"]["usage"] + else: + model = entry["model"] + token_data = entry + + token_count_summary[model]["prompt_tokens"] += token_data["prompt_tokens"] + token_count_summary[model]["completion_tokens"] += token_data["completion_tokens"] + token_count_summary[model]["total_tokens"] += token_data["total_tokens"] + + print(f"Total cost: {total_cost}", flush=True) + for model, counts in token_count_summary.items(): + print( + f"Token count summary for model {model}: prompt_tokens: {counts['prompt_tokens']}, completion_tokens: {counts['completion_tokens']}, total_tokens: {counts['total_tokens']}", + flush=True, + ) + @classmethod def start_logging( cls, history_dict: Optional[Dict] = None, compact: Optional[bool] = True, reset_counter: Optional[bool] = True diff --git a/test/agentchat/test_assistant_agent.py b/test/agentchat/test_assistant_agent.py index c36cc35e4fb..1239bde453b 100644 --- a/test/agentchat/test_assistant_agent.py +++ b/test/agentchat/test_assistant_agent.py @@ -148,9 +148,11 @@ def test_create_execute_script(human_input_mode="NEVER", max_consecutive_auto_re ```""", ) print(conversations) + autogen.ChatCompletion.print_usage_summary() autogen.ChatCompletion.start_logging(compact=False) user.send("""Execute temp.py""", assistant) print(autogen.ChatCompletion.logged_history) + autogen.ChatCompletion.print_usage_summary() autogen.ChatCompletion.stop_logging() diff --git a/website/docs/Use-Cases/enhanced_inference.md b/website/docs/Use-Cases/enhanced_inference.md index 0d33fa18137..2766fd9a483 100644 --- a/website/docs/Use-Cases/enhanced_inference.md +++ b/website/docs/Use-Cases/enhanced_inference.md @@ -260,6 +260,10 @@ The API calls made after this will be automatically logged. They can be retrieve ```python autogen.ChatCompletion.logged_history ``` +There is a function that can be used to print usage summary (total cost, and token count usage from each model): +```python +autogen.ChatCompletion.print_usage_summary() +``` To stop logging, use ```python autogen.ChatCompletion.stop_logging() @@ -366,5 +370,13 @@ Set `compact=False` in `start_logging()` to switch. }, } ``` + +* Example of printing for usage summary +``` +Total cost: +Token count summary for model : prompt_tokens: , completion_tokens: , total_tokens: +``` + + It can be seen that the individual API call history contains redundant information of the conversation. For a long conversation the degree of redundancy is high. The compact history is more efficient and the individual API call history contains more details. From fbf8faeac10cfcaf15761c3751a4387051590904 Mon Sep 17 00:00:00 2001 From: Javid Jamae Date: Thu, 12 Oct 2023 11:06:31 -0500 Subject: [PATCH 052/151] Update Getting-Started.md (#213) Fixed minor typo Co-authored-by: Chi Wang --- website/docs/Getting-Started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index 75a16afb9d1..131985f0229 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -2,7 +2,7 @@ -AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve task. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. +AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve tasks. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. ![AutoGen Overview](/img/autogen_agentchat.png) From 04319c968a34a56f81bd8a0d047e41364010ee76 Mon Sep 17 00:00:00 2001 From: Sheetali Maity <74114936+smty2018@users.noreply.github.com> Date: Fri, 13 Oct 2023 21:19:47 +0530 Subject: [PATCH 053/151] Added comment about config_list in the README example #216 (#218) * Update README.md * Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 925ad6e4d64..12392527617 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,7 @@ from autogen import AssistantAgent, UserProxyAgent, config_list_from_json # See https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints # and OAI_CONFIG_LIST_sample config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST") +# You can also set config_list directly as a list, for example, config_list = [{'model': 'gpt-4', 'api_key': ''},] assistant = AssistantAgent("assistant", llm_config={"config_list": config_list}) user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding"}) user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stock price change YTD.") From 3eda9ed74d6f36a19f197702199fbceb51b1bf5e Mon Sep 17 00:00:00 2001 From: James Tsang Date: Fri, 13 Oct 2023 14:46:50 -0500 Subject: [PATCH 054/151] fix: be compatible with custom model without full response (#222) Co-authored-by: Qingyun Wu --- autogen/oai/completion.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/oai/completion.py b/autogen/oai/completion.py index f3ea897de6b..54739ec5d2f 100644 --- a/autogen/oai/completion.py +++ b/autogen/oai/completion.py @@ -1026,7 +1026,7 @@ def cost(cls, response: dict): Returns: The cost in USD. 0 if the model is not supported. """ - model = response["model"] + model = response.get("model") if model not in cls.price1K: return 0 # raise ValueError(f"Unknown model: {model}") From e69916d445b81951b0185fbd01aec4394129a3ad Mon Sep 17 00:00:00 2001 From: Hitesh Bansal <83907989+05hiteshbansal@users.noreply.github.com> Date: Sat, 14 Oct 2023 01:42:17 +0530 Subject: [PATCH 055/151] Update Installation.md-with detailed explanation on add a period or newline #219 (#231) * Update Installation.md Usage and importance of Docker is explained in more precise and to the point * Update website/docs/Installation.md --------- Co-authored-by: Qingyun Wu --- website/docs/Installation.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/website/docs/Installation.md b/website/docs/Installation.md index f1c70507a45..cf1fc70c75e 100644 --- a/website/docs/Installation.md +++ b/website/docs/Installation.md @@ -14,8 +14,11 @@ conda install pyautogen -c conda-forge ``` --> ### Optional Dependencies -* docker -We strongly recommend using docker for code execution or running AutoGen in a docker container (e.g., when developing in GitHub codespace, the autogen runs in a docker container). To use docker for code execution, you also need to install the python package `docker`: +1. For the best user experience and seamless code execution, we highly recommend using Docker with AutoGen. +2. Docker is a containerization platform that simplifies the setup and execution of your code. +3. If you're working in a GitHub Codespace environment, AutoGen make a easy development in environment with Docker container, which is convenient to use. + + To use docker for code execution, you also need to install the python package `docker`: ```bash pip install docker ``` From c46f8e54f13f26c3d8313cf79b18c5d583e1c517 Mon Sep 17 00:00:00 2001 From: Shruti Patel Date: Fri, 13 Oct 2023 17:34:15 -0400 Subject: [PATCH 056/151] Spelling fixes. (#220) Co-authored-by: Qingyun Wu --- notebook/agentchat_groupchat.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/notebook/agentchat_groupchat.ipynb b/notebook/agentchat_groupchat.ipynb index da769f3a2d8..ac3a74fca59 100644 --- a/notebook/agentchat_groupchat.ipynb +++ b/notebook/agentchat_groupchat.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Group Chat\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "This notebook is modified based on https://github.com/microsoft/FLAML/blob/4ea686af5c3e8ff24d9076a7a626c8b28ab5b1d7/notebook/autogen_multiagent_roleplay_chat.ipynb\n", From 6156faaa0a0495e0410e8e0d23d4410b6f772913 Mon Sep 17 00:00:00 2001 From: Qingyun Wu Date: Fri, 13 Oct 2023 18:07:17 -0400 Subject: [PATCH 057/151] Typo (#234) * fix typo * wording * typo --- notebook/agentchat_MathChat.ipynb | 2 +- notebook/agentchat_RetrieveChat.ipynb | 2 +- notebook/agentchat_chess.ipynb | 2 +- notebook/agentchat_function_call.ipynb | 2 +- notebook/agentchat_groupchat_research.ipynb | 2 +- notebook/agentchat_groupchat_vis.ipynb | 2 +- notebook/agentchat_human_feedback.ipynb | 2 +- notebook/agentchat_planning.ipynb | 2 +- notebook/agentchat_stream.ipynb | 2 +- notebook/agentchat_teaching.ipynb | 2 +- notebook/agentchat_two_users.ipynb | 2 +- notebook/agentchat_web_info.ipynb | 2 +- website/docs/Examples/AutoGen-AgentChat.md | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/notebook/agentchat_MathChat.ipynb b/notebook/agentchat_MathChat.ipynb index 14a2d758387..133db1d44af 100644 --- a/notebook/agentchat_MathChat.ipynb +++ b/notebook/agentchat_MathChat.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Using MathChat to Solve Math Problems\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "MathChat is an experimental convesational framework for math problem solving. In this notebook, we demonstrate how to use MathChat to solve math problems. MathChat uses the `AssistantAgent` and `MathUserProxyAgent`, which is similar to the usage of `AssistantAgent` and `UserProxyAgent` in other notebooks (e.g., [Automated Task Solving with Code Generation, Execution & Debugging](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_auto_feedback_from_code_execution.ipynb)). Essentially, `MathUserProxyAgent` implements a different auto reply mechanism corresponding to the MathChat prompts. You can find more details in the paper [An Empirical Study on Challenging Math Problem Solving with GPT-4](https://arxiv.org/abs/2306.01337) or the [blogpost](https://microsoft.github.io/autogen/blog/2023/06/28/MathChat).\n", "\n", diff --git a/notebook/agentchat_RetrieveChat.ipynb b/notebook/agentchat_RetrieveChat.ipynb index fca0ade9d86..bfdb43b9d50 100644 --- a/notebook/agentchat_RetrieveChat.ipynb +++ b/notebook/agentchat_RetrieveChat.ipynb @@ -16,7 +16,7 @@ "\n", "# Auto Generated Agent Chat: Using RetrieveChat for Retrieve Augmented Code Generation and Question Answering\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "RetrieveChat is a conversational system for retrieve augmented code generation and question answering. In this notebook, we demonstrate how to utilize RetrieveChat to generate code and answer questions based on customized documentations that are not present in the LLM's training dataset. RetrieveChat uses the `RetrieveAssistantAgent` and `RetrieveUserProxyAgent`, which is similar to the usage of `AssistantAgent` and `UserProxyAgent` in other notebooks (e.g., [Automated Task Solving with Code Generation, Execution & Debugging](https://github.com/microsoft/autogen/blob/main/notebook/agentchat_auto_feedback_from_code_execution.ipynb)). Essentially, `RetrieveAssistantAgent` and `RetrieveUserProxyAgent` implement a different auto-reply mechanism corresponding to the RetrieveChat prompts.\n", diff --git a/notebook/agentchat_chess.ipynb b/notebook/agentchat_chess.ipynb index d104eeb0ee8..d7aa6373c98 100644 --- a/notebook/agentchat_chess.ipynb +++ b/notebook/agentchat_chess.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Chess Game Playing While Chitchatting by GPT-4 Agents\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "This notebook is modified based on https://github.com/ekzhu/FLAML/blob/evaluation/evaluation/chess/play_chess.ipynb\n", diff --git a/notebook/agentchat_function_call.ipynb b/notebook/agentchat_function_call.ipynb index 4d0c2e9330c..80a1ae8f2a1 100644 --- a/notebook/agentchat_function_call.ipynb +++ b/notebook/agentchat_function_call.ipynb @@ -17,7 +17,7 @@ "source": [ "# Auto Generated Agent Chat: Task Solving with Provided Tools as Functions\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate how to use `AssistantAgent` and `UserProxyAgent` to make function calls with the new feature of OpenAI models (in model version 0613). A specified prompt and function configs need to be passed to `AssistantAgent` to initialize the agent. The corresponding functions need to be passed to `UserProxyAgent`, which will be responsible for executing any function calls made by `AssistantAgent`. Besides this requirement of matching descriptions with functions, we recommend checking the system message in the `AssistantAgent` to make sure the instructions align with the function call descriptions.\n", "\n", diff --git a/notebook/agentchat_groupchat_research.ipynb b/notebook/agentchat_groupchat_research.ipynb index e29ccafba1b..8ef047d30c8 100644 --- a/notebook/agentchat_groupchat_research.ipynb +++ b/notebook/agentchat_groupchat_research.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Performs Research with Multi-Agent Group Chat\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "## Requirements\n", diff --git a/notebook/agentchat_groupchat_vis.ipynb b/notebook/agentchat_groupchat_vis.ipynb index 1c619078f5a..786708e724d 100644 --- a/notebook/agentchat_groupchat_vis.ipynb +++ b/notebook/agentchat_groupchat_vis.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Group Chat with Coder and Visualization Critic\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "## Requirements\n", diff --git a/notebook/agentchat_human_feedback.ipynb b/notebook/agentchat_human_feedback.ipynb index ddf9921be92..72825f70536 100644 --- a/notebook/agentchat_human_feedback.ipynb +++ b/notebook/agentchat_human_feedback.ipynb @@ -19,7 +19,7 @@ "source": [ "# Auto Generated Agent Chat: Task Solving with Code Generation, Execution, Debugging & Human Feedback\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate how to use `AssistantAgent` and `UserProxyAgent` to solve a challenging math problem with human feedback. Here `AssistantAgent` is an LLM-based agent that can write Python code (in a Python coding block) for a user to execute for a given task. `UserProxyAgent` is an agent which serves as a proxy for a user to execute the code written by `AssistantAgent`. By setting `human_input_mode` properly, the `UserProxyAgent` can also prompt the user for feedback to `AssistantAgent`. For example, when `human_input_mode` is set to \"ALWAYS\", the `UserProxyAgent` will always prompt the user for feedback. When user feedback is provided, the `UserProxyAgent` will directly pass the feedback to `AssistantAgent`. When no user feedback is provided, the `UserProxyAgent` will execute the code written by `AssistantAgent` and return the execution results (success or failure and corresponding outputs) to `AssistantAgent`.\n", diff --git a/notebook/agentchat_planning.ipynb b/notebook/agentchat_planning.ipynb index 7a211028066..4f28c3b3195 100644 --- a/notebook/agentchat_planning.ipynb +++ b/notebook/agentchat_planning.ipynb @@ -19,7 +19,7 @@ "source": [ "# Auto Generated Agent Chat: Collaborative Task Solving with Coding and Planning Agent\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate how to use multiple agents to work together and accomplish a task which requires finding info from the web and coding. `AssistantAgent` is an LLM-based agent that can write and debug Python code (in a Python coding block) for a user to execute for a given task. `UserProxyAgent` is an agent which serves as a proxy for a user to execute the code written by `AssistantAgent`. We further create a planning agent for the assistant agent to consult. The planning agent is a variation of the LLM-based `AssistantAgent` with a different system message.\n", diff --git a/notebook/agentchat_stream.ipynb b/notebook/agentchat_stream.ipynb index a0edb1ca321..e6fa6e4405c 100644 --- a/notebook/agentchat_stream.ipynb +++ b/notebook/agentchat_stream.ipynb @@ -19,7 +19,7 @@ "source": [ "# Interactive LLM Agent Dealing with Data Stream\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate how to use customized agents to continuously acquires news from the web and ask for investment suggestions.\n", diff --git a/notebook/agentchat_teaching.ipynb b/notebook/agentchat_teaching.ipynb index f11a91ae19b..0910aefa3e1 100644 --- a/notebook/agentchat_teaching.ipynb +++ b/notebook/agentchat_teaching.ipynb @@ -15,7 +15,7 @@ "source": [ "# Auto Generated Agent Chat: Teaching\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork makes it easy to build many advanced applications of LLMs.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework makes it easy to build many advanced applications of LLMs.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "This notebook demonstrates how AutoGen enables a user to teach AI new skills via natural agent interactions, without requiring knowledge of programming language. It is modified based on https://github.com/microsoft/FLAML/blob/evaluation/notebook/research_paper/teaching.ipynb and https://github.com/microsoft/FLAML/blob/evaluation/notebook/research_paper/teaching_recipe_reuse.ipynb.\n", diff --git a/notebook/agentchat_two_users.ipynb b/notebook/agentchat_two_users.ipynb index 026efb4d9ad..f953cbaadb8 100644 --- a/notebook/agentchat_two_users.ipynb +++ b/notebook/agentchat_two_users.ipynb @@ -19,7 +19,7 @@ "source": [ "# Auto Generated Agent Chat: Collaborative Task Solving with Multiple Agents and Human Users\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate an application involving multiple agents and human users to work together and accomplish a task. `AssistantAgent` is an LLM-based agent that can write Python code (in a Python coding block) for a user to execute for a given task. `UserProxyAgent` is an agent which serves as a proxy for a user to execute the code written by `AssistantAgent`. We create multiple `UserProxyAgent` instances which can represent different human users.\n", "\n", diff --git a/notebook/agentchat_web_info.ipynb b/notebook/agentchat_web_info.ipynb index 986a5615c50..b63ff27bdff 100644 --- a/notebook/agentchat_web_info.ipynb +++ b/notebook/agentchat_web_info.ipynb @@ -19,7 +19,7 @@ "source": [ "# Auto Generated Agent Chat: Solving Tasks Requiring Web Info\n", "\n", - "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation.\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", "\n", "In this notebook, we demonstrate how to use `AssistantAgent` and `UserProxyAgent` to perform tasks which require acquiring info from the web:\n", diff --git a/website/docs/Examples/AutoGen-AgentChat.md b/website/docs/Examples/AutoGen-AgentChat.md index 4ecd42b5663..1360aa9f5d8 100644 --- a/website/docs/Examples/AutoGen-AgentChat.md +++ b/website/docs/Examples/AutoGen-AgentChat.md @@ -1,6 +1,6 @@ # AutoGen - Automated Multi Agent Chat -AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participance via multi-agent conversation. +AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framework allows tool use and human participation via multi-agent conversation. Please find documentation about this feature [here](/docs/Use-Cases/agent_chat). Links to notebook examples: From 1394e293266b1833a3a72daf8f2e34b3cb538dfe Mon Sep 17 00:00:00 2001 From: Chi Wang Date: Sun, 15 Oct 2023 08:01:05 -0700 Subject: [PATCH 058/151] bump version to 0.1.11 (#242) * bump version to 0.1.11 * fix format issue --- README.md | 2 +- autogen/version.py | 2 +- website/docs/Installation.md | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 12392527617..41fdb6c4dde 100644 --- a/README.md +++ b/README.md @@ -89,7 +89,7 @@ from autogen import AssistantAgent, UserProxyAgent, config_list_from_json # See https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints # and OAI_CONFIG_LIST_sample config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST") -# You can also set config_list directly as a list, for example, config_list = [{'model': 'gpt-4', 'api_key': ''},] +# You can also set config_list directly as a list, for example, config_list = [{'model': 'gpt-4', 'api_key': ''},] assistant = AssistantAgent("assistant", llm_config={"config_list": config_list}) user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding"}) user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stock price change YTD.") diff --git a/autogen/version.py b/autogen/version.py index 569b1212f7e..0c5c30071ab 100644 --- a/autogen/version.py +++ b/autogen/version.py @@ -1 +1 @@ -__version__ = "0.1.10" +__version__ = "0.1.11" diff --git a/website/docs/Installation.md b/website/docs/Installation.md index cf1fc70c75e..966ed40f1a9 100644 --- a/website/docs/Installation.md +++ b/website/docs/Installation.md @@ -14,11 +14,11 @@ conda install pyautogen -c conda-forge ``` --> ### Optional Dependencies -1. For the best user experience and seamless code execution, we highly recommend using Docker with AutoGen. -2. Docker is a containerization platform that simplifies the setup and execution of your code. -3. If you're working in a GitHub Codespace environment, AutoGen make a easy development in environment with Docker container, which is convenient to use. +* docker - To use docker for code execution, you also need to install the python package `docker`: +For the best user experience and seamless code execution, we highly recommend using Docker with AutoGen. Docker is a containerization platform that simplifies the setup and execution of your code. Developing in a docker container, such as GitHub Codespace, also makes the development convenient. + +When running AutoGen out of a docker container, to use docker for code execution, you also need to install the python package `docker`: ```bash pip install docker ``` From ea8dec7ea967e7115986d4472a1b4eb7a6aa2edd Mon Sep 17 00:00:00 2001 From: Gourav Date: Mon, 16 Oct 2023 09:45:03 +0530 Subject: [PATCH 059/151] docstr updated for `use_docker` in `execute_code ` (#233) * docstr updated * fixed line 245 * Fixed line 246 * space_traling error Fix_01 * Revert space in '-' * Fixed line 245 FIX_02 --------- Co-authored-by: Qingyun Wu --- autogen/code_utils.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/autogen/code_utils.py b/autogen/code_utils.py index 37b18ca2c12..814a1e15b96 100644 --- a/autogen/code_utils.py +++ b/autogen/code_utils.py @@ -242,7 +242,11 @@ def execute_code( If a list or a str of image name(s) is provided, the code will be executed in a docker container with the first image successfully pulled. If None, False or empty, the code will be executed in the current environment. - Default is True, which will be converted into a list. + Default is None, which will be converted into an empty list when docker package is available. + Expected behaviour: + - If `use_docker` is explicitly set to True and the docker package is available, the code will run in a Docker container. + - If `use_docker` is explicitly set to True but the Docker package is missing, an error will be raised. + - If `use_docker` is not set (i.e., left default to None) and the Docker package is not available, a warning will be displayed, but the code will run natively. If the code is executed in the current environment, the code must be trusted. lang (Optional, str): The language of the code. Default is "python". From 356f6e599ffa6efb5bc6822733650d76778b12cd Mon Sep 17 00:00:00 2001 From: Olaoluwa Ademola Salami Date: Mon, 16 Oct 2023 17:41:51 +0100 Subject: [PATCH 060/151] document retrieve chat (#258) * document retrieve chat * Ran pre commit hook --- website/docs/Installation.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/docs/Installation.md b/website/docs/Installation.md index 966ed40f1a9..8310e594934 100644 --- a/website/docs/Installation.md +++ b/website/docs/Installation.md @@ -27,3 +27,8 @@ pip install docker ```bash pip install "pyautogen[blendsearch]" ``` + +* retrievechat +```bash +pip install "pyautogen[retrievechat]" +``` From 4fb2f1f449a23efe57e0a573cb592188123484c2 Mon Sep 17 00:00:00 2001 From: Sheetali Maity <74114936+smty2018@users.noreply.github.com> Date: Mon, 16 Oct 2023 22:50:53 +0530 Subject: [PATCH 061/151] Added figure to notebook (#246) Co-authored-by: Li Jiang --- notebook/agentchat_groupchat_vis.ipynb | 9 +++++++++ notebook/viz_gc.png | Bin 0 -> 223332 bytes 2 files changed, 9 insertions(+) create mode 100644 notebook/viz_gc.png diff --git a/notebook/agentchat_groupchat_vis.ipynb b/notebook/agentchat_groupchat_vis.ipynb index 786708e724d..c780a588a6b 100644 --- a/notebook/agentchat_groupchat_vis.ipynb +++ b/notebook/agentchat_groupchat_vis.ipynb @@ -118,6 +118,15 @@ "## Construct Agents" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "

\n", + " \"Drawing\"/\n", + "
" + ] + }, { "cell_type": "code", "execution_count": 3, diff --git a/notebook/viz_gc.png b/notebook/viz_gc.png new file mode 100644 index 0000000000000000000000000000000000000000..f45b7ff3980376a04c96b5af08dedcc0fad56ded GIT binary patch literal 223332 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�Rxeg)lIUG?FdmSN9iOCvH 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 Date: Mon, 16 Oct 2023 16:23:27 -0700 Subject: [PATCH 062/151] Lancgain tool bridge (#262) (#263) * Added a LangChain tooling bridge example * Updated Doco * Update agentchat_langchain.ipynb remove key --------- Co-authored-by: Elliot Wood Co-authored-by: Li Jiang --- notebook/agentchat_langchain.ipynb | 740 +++++++++++++++++++++++++++++ 1 file changed, 740 insertions(+) create mode 100644 notebook/agentchat_langchain.ipynb diff --git a/notebook/agentchat_langchain.ipynb b/notebook/agentchat_langchain.ipynb new file mode 100644 index 00000000000..76afa8fcd5d --- /dev/null +++ b/notebook/agentchat_langchain.ipynb @@ -0,0 +1,740 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "id": "ae1f50ec", + "metadata": { + "id": "ae1f50ec" + }, + "source": [ + "\"Open" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "9a71fa36", + "metadata": { + "id": "9a71fa36" + }, + "source": [ + "# Auto Generated Agent Chat: Task Solving with Langchain Provided Tools as Functions\n", + "\n", + "AutoGen offers conversable agents powered by LLM, tool or human, which can be used to perform tasks collectively via automated chat. This framwork allows tool use and human participance through multi-agent conversation. Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", + "\n", + "In this notebook, we demonstrate how to use `AssistantAgent` and `UserProxyAgent` to make function calls with the new feature of OpenAI models (in model version 0613) with a set of Langchain provided tools and toolkits, to demonstrate how to leverage the 35+ tools available. \n", + "A specified prompt and function configs need to be passed to `AssistantAgent` to initialize the agent. The corresponding functions need to be passed to `UserProxyAgent`, which will be responsible for executing any function calls made by `AssistantAgent`. Besides this requirement of matching descriptions with functions, we recommend checking the system message in the `AssistantAgent` to make sure the instructions align with the function call descriptions.\n", + "\n", + "## Requirements\n", + "\n", + "AutoGen requires `Python>=3.8`. To run this notebook example, please install the [mathchat] option since we will import functions from `MathUserProxyAgent`:\n", + "```bash\n", + "pip install \"pyautogen[mathchat]\"\n", + "```\n", + "```bash\n", + "%pip install Langchain\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2b803c17", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "2b803c17", + "outputId": "2e12aa3f-e46c-4b82-cc2e-1495f70a2961" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: pyautogen[mathchat]~=0.1.0 in /usr/local/lib/python3.10/dist-packages (0.1.4)\n", + "Requirement already satisfied: diskcache in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (5.6.3)\n", + "Requirement already satisfied: flaml in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (2.1.0)\n", + "Requirement already satisfied: openai in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (0.28.1)\n", + "Requirement already satisfied: termcolor in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (2.3.0)\n", + "Requirement already satisfied: pydantic==1.10.9 in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (1.10.9)\n", + "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (1.12)\n", + "Requirement already satisfied: wolframalpha in /usr/local/lib/python3.10/dist-packages (from pyautogen[mathchat]~=0.1.0) (5.0.0)\n", + "Requirement already satisfied: typing-extensions>=4.2.0 in /usr/local/lib/python3.10/dist-packages (from pydantic==1.10.9->pyautogen[mathchat]~=0.1.0) (4.5.0)\n", + "Requirement already satisfied: NumPy>=1.17.0rc1 in /usr/local/lib/python3.10/dist-packages (from flaml->pyautogen[mathchat]~=0.1.0) (1.23.5)\n", + "Requirement already satisfied: requests>=2.20 in /usr/local/lib/python3.10/dist-packages (from openai->pyautogen[mathchat]~=0.1.0) (2.31.0)\n", + "Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from openai->pyautogen[mathchat]~=0.1.0) (4.66.1)\n", + "Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from openai->pyautogen[mathchat]~=0.1.0) (3.8.5)\n", + "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->pyautogen[mathchat]~=0.1.0) (1.3.0)\n", + "Requirement already satisfied: xmltodict in /usr/local/lib/python3.10/dist-packages (from wolframalpha->pyautogen[mathchat]~=0.1.0) (0.13.0)\n", + "Requirement already satisfied: more-itertools in /usr/local/lib/python3.10/dist-packages (from wolframalpha->pyautogen[mathchat]~=0.1.0) (10.1.0)\n", + "Requirement already satisfied: jaraco.context in /usr/local/lib/python3.10/dist-packages (from wolframalpha->pyautogen[mathchat]~=0.1.0) (4.3.0)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.20->openai->pyautogen[mathchat]~=0.1.0) (3.2.0)\n", + "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.20->openai->pyautogen[mathchat]~=0.1.0) (3.4)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.20->openai->pyautogen[mathchat]~=0.1.0) (2.0.4)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.20->openai->pyautogen[mathchat]~=0.1.0) (2023.7.22)\n", + "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (23.1.0)\n", + "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (6.0.4)\n", + "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (4.0.3)\n", + "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (1.9.2)\n", + "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (1.4.0)\n", + "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->openai->pyautogen[mathchat]~=0.1.0) (1.3.1)\n" + ] + } + ], + "source": [ + "%pip install \"pyautogen[mathchat]~=0.1.0\"" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "5ebd2397", + "metadata": { + "id": "5ebd2397" + }, + "source": [ + "## Set your API Endpoint\n", + "\n", + "The [`config_list_from_models`](https://microsoft.github.io/autogen/docs/reference/oai/openai_utils#config_list_from_models) function tries to create a list of configurations using Azure OpenAI endpoints and OpenAI endpoints for the provided list of models. It assumes the api keys and api bases are stored in the corresponding environment variables or local txt files:\n", + "\n", + "- OpenAI API key: os.environ[\"OPENAI_API_KEY\"] or `openai_api_key_file=\"key_openai.txt\"`.\n", + "- Azure OpenAI API key: os.environ[\"AZURE_OPENAI_API_KEY\"] or `aoai_api_key_file=\"key_aoai.txt\"`. Multiple keys can be stored, one per line.\n", + "- Azure OpenAI API base: os.environ[\"AZURE_OPENAI_API_BASE\"] or `aoai_api_base_file=\"base_aoai.txt\"`. Multiple bases can be stored, one per line.\n", + "\n", + "It's OK to have only the OpenAI API key, or only the Azure OpenAI API key + base.\n", + "If you open this notebook in google colab, you can upload your files by click the file icon on the left panel and then choose \"upload file\" icon.\n", + "\n", + "The following code excludes Azure OpenAI endpoints from the config list because some endpoints don't support functions yet. Remove the `exclude` argument if they do." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dca301a4", + "metadata": { + "id": "dca301a4" + }, + "outputs": [], + "source": [ + "import autogen\n", + "\n", + "config_list = autogen.config_list_from_models(model_list=[\"gpt-4\", \"gpt-3.5-turbo\", \"gpt-3.5-turbo-16k\"], exclude=\"aoai\", openai_api_key_file=\"key_openai.txt\")\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "2b9526e7", + "metadata": { + "id": "2b9526e7" + }, + "source": [ + "## Making Function Calls\n", + "\n", + "In this example, we demonstrate function call execution with `AssistantAgent` and `UserProxyAgent`. With the default system prompt of `AssistantAgent`, we allow the LLM assistant to perform tasks with code, and the `UserProxyAgent` would extract code blocks from the LLM response and execute them. With the new \"function_call\" feature, we define functions and specify the description of the function in the OpenAI config for the `AssistantAgent`. Then we register the functions in `UserProxyAgent`.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ngpFkWh5ad9M", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "ngpFkWh5ad9M", + "outputId": "d33b51c6-5dfe-402d-dce4-6b40fca85d3d" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: Langchain in /usr/local/lib/python3.10/dist-packages (0.0.305)\n", + "Requirement already satisfied: PyYAML>=5.3 in /usr/local/lib/python3.10/dist-packages (from Langchain) (6.0.1)\n", + "Requirement already satisfied: SQLAlchemy<3,>=1.4 in /usr/local/lib/python3.10/dist-packages (from Langchain) (2.0.20)\n", + "Requirement already satisfied: aiohttp<4.0.0,>=3.8.3 in /usr/local/lib/python3.10/dist-packages (from Langchain) (3.8.5)\n", + "Requirement already satisfied: anyio<4.0 in /usr/local/lib/python3.10/dist-packages (from Langchain) (3.7.1)\n", + "Requirement already satisfied: async-timeout<5.0.0,>=4.0.0 in /usr/local/lib/python3.10/dist-packages (from Langchain) (4.0.3)\n", + "Requirement already satisfied: dataclasses-json<0.7,>=0.5.7 in /usr/local/lib/python3.10/dist-packages (from Langchain) (0.6.1)\n", + "Requirement already satisfied: jsonpatch<2.0,>=1.33 in /usr/local/lib/python3.10/dist-packages (from Langchain) (1.33)\n", + "Requirement already satisfied: langsmith<0.1.0,>=0.0.38 in /usr/local/lib/python3.10/dist-packages (from Langchain) (0.0.41)\n", + "Requirement already satisfied: numexpr<3.0.0,>=2.8.4 in /usr/local/lib/python3.10/dist-packages (from Langchain) (2.8.5)\n", + "Requirement already satisfied: numpy<2,>=1 in /usr/local/lib/python3.10/dist-packages (from Langchain) (1.23.5)\n", + "Requirement already satisfied: pydantic<3,>=1 in /usr/local/lib/python3.10/dist-packages (from Langchain) (1.10.9)\n", + "Requirement already satisfied: requests<3,>=2 in /usr/local/lib/python3.10/dist-packages (from Langchain) (2.31.0)\n", + "Requirement already satisfied: tenacity<9.0.0,>=8.1.0 in /usr/local/lib/python3.10/dist-packages (from Langchain) (8.2.3)\n", + "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (23.1.0)\n", + "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (3.2.0)\n", + "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (6.0.4)\n", + "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (1.9.2)\n", + "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (1.4.0)\n", + "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->Langchain) (1.3.1)\n", + "Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->Langchain) (3.4)\n", + "Requirement already satisfied: sniffio>=1.1 in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->Langchain) (1.3.0)\n", + "Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->Langchain) (1.1.3)\n", + "Requirement already satisfied: marshmallow<4.0.0,>=3.18.0 in /usr/local/lib/python3.10/dist-packages (from dataclasses-json<0.7,>=0.5.7->Langchain) (3.20.1)\n", + "Requirement already satisfied: typing-inspect<1,>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from dataclasses-json<0.7,>=0.5.7->Langchain) (0.9.0)\n", + "Requirement already satisfied: jsonpointer>=1.9 in /usr/local/lib/python3.10/dist-packages (from jsonpatch<2.0,>=1.33->Langchain) (2.4)\n", + "Requirement already satisfied: typing-extensions>=4.2.0 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1->Langchain) (4.5.0)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->Langchain) (2.0.4)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->Langchain) (2023.7.22)\n", + "Requirement already satisfied: greenlet!=0.4.17 in /usr/local/lib/python3.10/dist-packages (from SQLAlchemy<3,>=1.4->Langchain) (2.0.2)\n", + "Requirement already satisfied: packaging>=17.0 in /usr/local/lib/python3.10/dist-packages (from marshmallow<4.0.0,>=3.18.0->dataclasses-json<0.7,>=0.5.7->Langchain) (23.1)\n", + "Requirement already satisfied: mypy-extensions>=0.3.0 in /usr/local/lib/python3.10/dist-packages (from typing-inspect<1,>=0.4.0->dataclasses-json<0.7,>=0.5.7->Langchain) (1.0.0)\n" + ] + } + ], + "source": [ + "%pip install Langchain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "qCzNbbVajvpc", + "metadata": { + "id": "qCzNbbVajvpc" + }, + "outputs": [], + "source": [ + "# Import things that are needed generically\n", + "from langchain.pydantic_v1 import BaseModel, Field\n", + "from langchain.tools import BaseTool\n", + "from typing import Optional, Type\n", + "import math\n", + "\n", + "class CircumferenceToolInput(BaseModel):\n", + " radius: float = Field()\n", + "\n", + "class CircumferenceTool(BaseTool):\n", + " name = \"circumference_calculator\"\n", + " description = \"Use this tool when you need to calculate a circumference using the radius of a circle\"\n", + " args_schema: Type[BaseModel] = CircumferenceToolInput\n", + "\n", + " def _run(self, radius: float):\n", + " return float(radius) * 2.0 * math.pi" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "COlL5_98atDs", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "COlL5_98atDs", + "outputId": "24ce236d-8993-4a69-99e2-65453574d61e" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "user_proxy (to chatbot):\n", + "\n", + "Read the file with the path 'Test.txt', then calculate the circumference of a circle that has a radius of that files contents.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "***** Suggested function Call: read_file *****\n", + "Arguments: \n", + "{\n", + " \"file_path\": \"Test.txt\"\n", + "}\n", + "**********************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\n", + ">>>>>>>> EXECUTING FUNCTION read_file...\n", + "user_proxy (to chatbot):\n", + "\n", + "***** Response from calling function \"read_file\" *****\n", + "7.81mm\n", + "******************************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "***** Suggested function Call: circumference_calculator *****\n", + "Arguments: \n", + "{\n", + " \"radius\": 7.81\n", + "}\n", + "*************************************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\n", + ">>>>>>>> EXECUTING FUNCTION circumference_calculator...\n", + "user_proxy (to chatbot):\n", + "\n", + "***** Response from calling function \"circumference_calculator\" *****\n", + "49.071677249072565\n", + "*********************************************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "The circumference of a circle with a radius of 7.81mm is approximately 49.071mm.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "user_proxy (to chatbot):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "from langchain.tools.file_management.read import ReadFileTool\n", + "\n", + "# Define a function to generate llm_config from a LangChain tool\n", + "def generate_llm_config(tool):\n", + " # Define the function schema based on the tool's args_schema\n", + " function_schema = {\n", + " \"name\": tool.name.lower().replace (' ', '_'),\n", + " \"description\": tool.description,\n", + " \"parameters\": {\n", + " \"type\": \"object\",\n", + " \"properties\": {},\n", + " \"required\": [],\n", + " },\n", + " }\n", + "\n", + " if tool.args is not None:\n", + " function_schema[\"parameters\"][\"properties\"] = tool.args\n", + "\n", + " return function_schema\n", + "\n", + "# Instantiate the ReadFileTool\n", + "read_file_tool = ReadFileTool()\n", + "custom_tool = CircumferenceTool()\n", + "\n", + "# Construct the llm_config\n", + "llm_config = {\n", + " #Generate functions config for the Tool\n", + " \"functions\":[\n", + " generate_llm_config(custom_tool),\n", + " generate_llm_config(read_file_tool),\n", + " ],\n", + " \"config_list\": config_list, # Assuming you have this defined elsewhere\n", + " \"request_timeout\": 120,\n", + "}\n", + "\n", + "user_proxy = autogen.UserProxyAgent(\n", + " name=\"user_proxy\",\n", + " is_termination_msg=lambda x: x.get(\"content\", \"\") and x.get(\"content\", \"\").rstrip().endswith(\"TERMINATE\"),\n", + " human_input_mode=\"NEVER\",\n", + " max_consecutive_auto_reply=10,\n", + " code_execution_config={\"work_dir\": \"coding\"},\n", + ")\n", + "\n", + "# Register the tool and start the conversation\n", + "user_proxy.register_function(\n", + " function_map={\n", + " custom_tool.name: custom_tool._run,\n", + " read_file_tool.name: read_file_tool._run,\n", + " }\n", + ")\n", + "\n", + "chatbot = autogen.AssistantAgent(\n", + " name=\"chatbot\",\n", + " system_message=\"For coding tasks, only use the functions you have been provided with. Reply TERMINATE when the task is done.\",\n", + " llm_config=llm_config,\n", + ")\n", + "\n", + "user_proxy.initiate_chat(\n", + " chatbot,\n", + " message=\"Read the file with the path 'Test.txt', then calculate the circumference of a circle that has a radius of that files contents.\", #\" 7.81mm\" in the file\n", + " llm_config=llm_config,\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "id": "11cc4e60", + "metadata": {}, + "source": [ + "# A PySpark Examle" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "Y-ozf9EFCegw", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "Y-ozf9EFCegw", + "outputId": "db7b73a8-6129-4dfb-9d5c-ac3536f310d7" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: pyspark in /usr/local/lib/python3.10/dist-packages (3.5.0)\n", + "Requirement already satisfied: py4j==0.10.9.7 in /usr/local/lib/python3.10/dist-packages (from pyspark) (0.10.9.7)\n" + ] + } + ], + "source": [ + "%pip install pyspark" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7iFp-Sm4CYq_", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "7iFp-Sm4CYq_", + "outputId": "2e1a2a70-53e6-4896-9232-63db6d097d63" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "+---------+--------+------------------+-----------+--------------+----------+----------+-------------+------------------+\n", + "|longitude|latitude|housing_median_age|total_rooms|total_bedrooms|population|households|median_income|median_house_value|\n", + "+---------+--------+------------------+-----------+--------------+----------+----------+-------------+------------------+\n", + "| -114.31| 34.19| 15.0| 5612.0| 1283.0| 1015.0| 472.0| 1.4936| 66900.0|\n", + "| -114.47| 34.4| 19.0| 7650.0| 1901.0| 1129.0| 463.0| 1.82| 80100.0|\n", + "| -114.56| 33.69| 17.0| 720.0| 174.0| 333.0| 117.0| 1.6509| 85700.0|\n", + "| -114.57| 33.64| 14.0| 1501.0| 337.0| 515.0| 226.0| 3.1917| 73400.0|\n", + "| -114.57| 33.57| 20.0| 1454.0| 326.0| 624.0| 262.0| 1.925| 65500.0|\n", + "| -114.58| 33.63| 29.0| 1387.0| 236.0| 671.0| 239.0| 3.3438| 74000.0|\n", + "| -114.58| 33.61| 25.0| 2907.0| 680.0| 1841.0| 633.0| 2.6768| 82400.0|\n", + "| -114.59| 34.83| 41.0| 812.0| 168.0| 375.0| 158.0| 1.7083| 48500.0|\n", + "| -114.59| 33.61| 34.0| 4789.0| 1175.0| 3134.0| 1056.0| 2.1782| 58400.0|\n", + "| -114.6| 34.83| 46.0| 1497.0| 309.0| 787.0| 271.0| 2.1908| 48100.0|\n", + "| -114.6| 33.62| 16.0| 3741.0| 801.0| 2434.0| 824.0| 2.6797| 86500.0|\n", + "| -114.6| 33.6| 21.0| 1988.0| 483.0| 1182.0| 437.0| 1.625| 62000.0|\n", + "| -114.61| 34.84| 48.0| 1291.0| 248.0| 580.0| 211.0| 2.1571| 48600.0|\n", + "| -114.61| 34.83| 31.0| 2478.0| 464.0| 1346.0| 479.0| 3.212| 70400.0|\n", + "| -114.63| 32.76| 15.0| 1448.0| 378.0| 949.0| 300.0| 0.8585| 45000.0|\n", + "| -114.65| 34.89| 17.0| 2556.0| 587.0| 1005.0| 401.0| 1.6991| 69100.0|\n", + "| -114.65| 33.6| 28.0| 1678.0| 322.0| 666.0| 256.0| 2.9653| 94900.0|\n", + "| -114.65| 32.79| 21.0| 44.0| 33.0| 64.0| 27.0| 0.8571| 25000.0|\n", + "| -114.66| 32.74| 17.0| 1388.0| 386.0| 775.0| 320.0| 1.2049| 44000.0|\n", + "| -114.67| 33.92| 17.0| 97.0| 24.0| 29.0| 15.0| 1.2656| 27500.0|\n", + "+---------+--------+------------------+-----------+--------------+----------+----------+-------------+------------------+\n", + "only showing top 20 rows\n", + "\n" + ] + } + ], + "source": [ + "#Starndard Langchain example\n", + "from langchain.agents import create_spark_sql_agent\n", + "from langchain.agents.agent_toolkits import SparkSQLToolkit\n", + "from langchain.chat_models import ChatOpenAI\n", + "from langchain.utilities.spark_sql import SparkSQL\n", + "from pyspark.sql import SparkSession\n", + "\n", + "spark = SparkSession.builder.getOrCreate()\n", + "schema = \"langchain_example\"\n", + "spark.sql(f\"CREATE DATABASE IF NOT EXISTS {schema}\")\n", + "spark.sql(f\"USE {schema}\")\n", + "csv_file_path = \"./sample_data/california_housing_train.csv\"\n", + "table = \"california_housing_train\"\n", + "spark.read.csv(csv_file_path, header=True, inferSchema=True).write.option(\"path\", \"file:/content/spark-warehouse/langchain_example.db/california_housing_train\").mode(\"overwrite\").saveAsTable(table)\n", + "spark.table(table).show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "iLtSTHoJD7Jn", + "metadata": { + "id": "iLtSTHoJD7Jn" + }, + "outputs": [], + "source": [ + "# Note, you can also connect to Spark via Spark connect. For example:\n", + "# db = SparkSQL.from_uri(\"sc://localhost:15002\", schema=schema)\n", + "spark_sql = SparkSQL(schema=schema)\n", + "llm = ChatOpenAI(temperature=0, model=\"gpt-3.5-turbo-16k\")\n", + "toolkit = SparkSQLToolkit(db=spark_sql, llm=llm)\n", + "agent_executor = create_spark_sql_agent(llm=llm, toolkit=toolkit, verbose=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "VzqNYlVjCqQa", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 608 + }, + "id": "VzqNYlVjCqQa", + "outputId": "dd4de772-7b0c-4650-d106-c83d4593158e" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + "\u001b[1m> Entering new AgentExecutor chain...\u001b[0m\n", + "\u001b[32;1m\u001b[1;3mAction: list_tables_sql_db\n", + "Action Input: \"\"\u001b[0m\n", + "Observation: \u001b[38;5;200m\u001b[1;3mcalifornia_housing_train\u001b[0m\n", + "Thought:\u001b[32;1m\u001b[1;3mI see that there is a table called \"california_housing_train\" in the database. I can use the \"schema_sql_db\" tool to get more information about this table.\n", + "Action: schema_sql_db\n", + "Action Input: \"california_housing_train\"\u001b[0m\n", + "Observation: \u001b[33;1m\u001b[1;3mCREATE TABLE spark_catalog.langchain_example.california_housing_train (\n", + " longitude DOUBLE,\n", + " latitude DOUBLE,\n", + " housing_median_age DOUBLE,\n", + " total_rooms DOUBLE,\n", + " total_bedrooms DOUBLE,\n", + " population DOUBLE,\n", + " households DOUBLE,\n", + " median_income DOUBLE,\n", + " median_house_value DOUBLE)\n", + ";\n", + "\n", + "/*\n", + "3 rows from california_housing_train table:\n", + "longitude\tlatitude\thousing_median_age\ttotal_rooms\ttotal_bedrooms\tpopulation\thouseholds\tmedian_income\tmedian_house_value\n", + "-114.31\t34.19\t15.0\t5612.0\t1283.0\t1015.0\t472.0\t1.4936\t66900.0\n", + "-114.47\t34.4\t19.0\t7650.0\t1901.0\t1129.0\t463.0\t1.82\t80100.0\n", + "-114.56\t33.69\t17.0\t720.0\t174.0\t333.0\t117.0\t1.6509\t85700.0\n", + "*/\u001b[0m\n", + "Thought:\u001b[32;1m\u001b[1;3mThe \"california_housing_train\" table has the following columns: longitude, latitude, housing_median_age, total_rooms, total_bedrooms, population, households, median_income, and median_house_value. It contains information about housing in California. I can now answer the question.\n", + "Action: None\n", + "Final Answer: The \"california_housing_train\" table has the following columns: longitude, latitude, housing_median_age, total_rooms, total_bedrooms, population, households, median_income, and median_house_value.\u001b[0m\n", + "\n", + "\u001b[1m> Finished chain.\u001b[0m\n" + ] + }, + { + "data": { + "application/vnd.google.colaboratory.intrinsic+json": { + "type": "string" + }, + "text/plain": [ + "'The \"california_housing_train\" table has the following columns: longitude, latitude, housing_median_age, total_rooms, total_bedrooms, population, households, median_income, and median_house_value.'" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#Starndard Langchain example\n", + "agent_executor.run(\"Describe the california_housing_train table\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d94d45a9", + "metadata": {}, + "outputs": [], + "source": [ + "# LangChain direct tool usage instead of toolkit example\n", + "# from langchain.tools.spark_sql.tool import (\n", + "# InfoSparkSQLTool,\n", + "# ListSparkSQLTool,\n", + "# QueryCheckerTool,\n", + "# QuerySparkSQLTool,\n", + "# )\n", + "# debug_toolkit = [\n", + "# QuerySparkSQLTool(db=spark_sql),\n", + "# InfoSparkSQLTool(db=spark_sql),\n", + "# ListSparkSQLTool(db=spark_sql),\n", + "# QueryCheckerTool(db=spark_sql, llm=llm),\n", + "#]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "r7PFvDS7Ev-E", + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "r7PFvDS7Ev-E", + "outputId": "53d9c45d-058e-4e37-ba73-556591aaab42" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'name': 'query_sql_db', 'description': '\\n Input to this tool is a detailed and correct SQL query, output is a result from the Spark SQL.\\n If the query is not correct, an error message will be returned.\\n If an error is returned, rewrite the query, check the query, and try again.\\n ', 'parameters': {'type': 'object', 'properties': {'query': {'title': 'Query', 'type': 'string'}}, 'required': []}}\n", + "{'name': 'schema_sql_db', 'description': '\\n Input to this tool is a comma-separated list of tables, output is the schema and sample rows for those tables.\\n Be sure that the tables actually exist by calling list_tables_sql_db first!\\n\\n Example Input: \"table1, table2, table3\"\\n ', 'parameters': {'type': 'object', 'properties': {'table_names': {'title': 'Table Names', 'type': 'string'}}, 'required': []}}\n", + "{'name': 'list_tables_sql_db', 'description': 'Input is an empty string, output is a comma separated list of tables in the Spark SQL.', 'parameters': {'type': 'object', 'properties': {'tool_input': {'title': 'Tool Input', 'default': '', 'type': 'string'}}, 'required': []}}\n", + "{'name': 'query_checker_sql_db', 'description': '\\n Use this tool to double check if your query is correct before executing it.\\n Always use this tool before executing a query with query_sql_db!\\n ', 'parameters': {'type': 'object', 'properties': {'query': {'title': 'Query', 'type': 'string'}}, 'required': []}}\n", + "user_proxy (to chatbot):\n", + "\n", + "Describe the table names california_housing_train\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "***** Suggested function Call: schema_sql_db *****\n", + "Arguments: \n", + "{\n", + " \"table_names\": \"california_housing_train\"\n", + "}\n", + "**************************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\n", + ">>>>>>>> EXECUTING FUNCTION schema_sql_db...\n", + "user_proxy (to chatbot):\n", + "\n", + "***** Response from calling function \"schema_sql_db\" *****\n", + "CREATE TABLE spark_catalog.langchain_example.california_housing_train (\n", + " longitude DOUBLE,\n", + " latitude DOUBLE,\n", + " housing_median_age DOUBLE,\n", + " total_rooms DOUBLE,\n", + " total_bedrooms DOUBLE,\n", + " population DOUBLE,\n", + " households DOUBLE,\n", + " median_income DOUBLE,\n", + " median_house_value DOUBLE)\n", + ";\n", + "\n", + "/*\n", + "3 rows from california_housing_train table:\n", + "longitude\tlatitude\thousing_median_age\ttotal_rooms\ttotal_bedrooms\tpopulation\thouseholds\tmedian_income\tmedian_house_value\n", + "-114.31\t34.19\t15.0\t5612.0\t1283.0\t1015.0\t472.0\t1.4936\t66900.0\n", + "-114.47\t34.4\t19.0\t7650.0\t1901.0\t1129.0\t463.0\t1.82\t80100.0\n", + "-114.56\t33.69\t17.0\t720.0\t174.0\t333.0\t117.0\t1.6509\t85700.0\n", + "*/\n", + "**********************************************************\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "The california_housing_train table has the following schema:\n", + "\n", + "- longitude: DOUBLE\n", + "- latitude: DOUBLE\n", + "- housing_median_age: DOUBLE\n", + "- total_rooms: DOUBLE\n", + "- total_bedrooms: DOUBLE\n", + "- population: DOUBLE\n", + "- households: DOUBLE\n", + "- median_income: DOUBLE\n", + "- median_house_value: DOUBLE\n", + "\n", + "Here are sample rows from the table:\n", + "\n", + "| longitude | latitude | housing_median_age | total_rooms | total_bedrooms | population | households | median_income | median_house_value |\n", + "|-----------|----------|--------------------|-------------|----------------|------------|------------|---------------|--------------------|\n", + "| -114.31 | 34.19 | 15.0 | 5612.0 | 1283.0 | 1015.0 | 472.0 | 1.4936 | 66900.0 |\n", + "| -114.47 | 34.4 | 19.0 | 7650.0 | 1901.0 | 1129.0 | 463.0 | 1.82 | 80100.0 |\n", + "| -114.56 | 33.69 | 17.0 | 720.0 | 174.0 | 333.0 | 117.0 | 1.6509 | 85700.0 |\n", + "\n", + "--------------------------------------------------------------------------------\n", + "user_proxy (to chatbot):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "chatbot (to user_proxy):\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "\n", + "# Now use AutoGen with Langchain Tool Bridgre\n", + "tools = []\n", + "function_map = {}\n", + "\n", + "for tool in toolkit.get_tools(): #debug_toolkit if you want to use tools directly\n", + " tool_schema = generate_llm_config(tool)\n", + " print(tool_schema)\n", + " tools.append(tool_schema)\n", + " function_map[tool.name] = tool._run\n", + "\n", + "# Construct the llm_config\n", + "llm_config = {\n", + " \"functions\": tools,\n", + " \"config_list\": config_list, # Assuming you have this defined elsewhere\n", + " \"request_timeout\": 120,\n", + "}\n", + "\n", + "user_proxy = autogen.UserProxyAgent(\n", + " name=\"user_proxy\",\n", + " is_termination_msg=lambda x: x.get(\"content\", \"\") and x.get(\"content\", \"\").rstrip().endswith(\"TERMINATE\"),\n", + " human_input_mode=\"NEVER\",\n", + " max_consecutive_auto_reply=10,\n", + " code_execution_config={\"work_dir\": \"coding\"},\n", + ")\n", + "\n", + "print(function_map)\n", + "\n", + "# Register the tool and start the conversation\n", + "user_proxy.register_function(\n", + " function_map = function_map\n", + ")\n", + "\n", + "chatbot = autogen.AssistantAgent(\n", + " name=\"chatbot\",\n", + " system_message=\"For coding tasks, only use the functions you have been provided with. Reply TERMINATE when the task is done.\",\n", + " llm_config=llm_config,\n", + ")\n", + "\n", + "user_proxy.initiate_chat(\n", + " chatbot,\n", + " message=\"Describe the table names california_housing_train\",\n", + " llm_config=llm_config,\n", + ")" + ] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "flaml_dev", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.17" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From f2d7553cdcfed076a4dd793aec0ffd349b6fbdd0 Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Tue, 17 Oct 2023 22:53:40 +0800 Subject: [PATCH 063/151] Add support to custom text spliter (#270) * Add support to custom text spliter function and a list of files or urls * Add parameter to retrieve_config, add tests * Fix tests * Fix tests --- .../contrib/retrieve_user_proxy_agent.py | 4 +++ autogen/retrieve_utils.py | 36 ++++++++++++++++--- test/test_retrieve_utils.py | 22 ++++++++++++ 3 files changed, 57 insertions(+), 5 deletions(-) diff --git a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py index 0f29aa62d14..94677244abe 100644 --- a/autogen/agentchat/contrib/retrieve_user_proxy_agent.py +++ b/autogen/agentchat/contrib/retrieve_user_proxy_agent.py @@ -122,6 +122,8 @@ def __init__( - custom_token_count_function(Optional, Callable): a custom function to count the number of tokens in a string. The function should take a string as input and return three integers (token_count, tokens_per_message, tokens_per_name). Default is None, tiktoken will be used and may not be accurate for non-OpenAI models. + - custom_text_split_function(Optional, Callable): a custom function to split a string into a list of strings. + Default is None, will use the default function in `autogen.retrieve_utils.split_text_to_chunks`. **kwargs (dict): other kwargs in [UserProxyAgent](../user_proxy_agent#__init__). Example of overriding retrieve_docs: @@ -175,6 +177,7 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = self._retrieve_config.get("get_or_create", False) if self._docs_path is not None else False ) self.custom_token_count_function = self._retrieve_config.get("custom_token_count_function", None) + self.custom_text_split_function = self._retrieve_config.get("custom_text_split_function", None) self._context_max_tokens = self._max_tokens * 0.8 self._collection = True if self._docs_path is None else False # whether the collection is created self._ipython = get_ipython() @@ -364,6 +367,7 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = embedding_model=self._embedding_model, get_or_create=self._get_or_create, embedding_function=self._embedding_function, + custom_text_split_function=self.custom_text_split_function, ) self._collection = True self._get_or_create = False diff --git a/autogen/retrieve_utils.py b/autogen/retrieve_utils.py index 721b1ec29a5..c660fa85d6d 100644 --- a/autogen/retrieve_utils.py +++ b/autogen/retrieve_utils.py @@ -180,7 +180,11 @@ def extract_text_from_pdf(file: str) -> str: def split_files_to_chunks( - files: list, max_tokens: int = 4000, chunk_mode: str = "multi_lines", must_break_at_empty_line: bool = True + files: list, + max_tokens: int = 4000, + chunk_mode: str = "multi_lines", + must_break_at_empty_line: bool = True, + custom_text_split_function: Callable = None, ): """Split a list of files into chunks of max_tokens.""" @@ -200,18 +204,33 @@ def split_files_to_chunks( logger.warning(f"No text available in file: {file}") continue # Skip to the next file if no text is available - chunks += split_text_to_chunks(text, max_tokens, chunk_mode, must_break_at_empty_line) + if custom_text_split_function is not None: + chunks += custom_text_split_function(text) + else: + chunks += split_text_to_chunks(text, max_tokens, chunk_mode, must_break_at_empty_line) return chunks -def get_files_from_dir(dir_path: str, types: list = TEXT_FORMATS, recursive: bool = True): +def get_files_from_dir(dir_path: Union[str, List[str]], types: list = TEXT_FORMATS, recursive: bool = True): """Return a list of all the files in a given directory.""" if len(types) == 0: raise ValueError("types cannot be empty.") types = [t[1:].lower() if t.startswith(".") else t.lower() for t in set(types)] types += [t.upper() for t in types] + files = [] + # If the path is a list of files or urls, process and return them + if isinstance(dir_path, list): + for item in dir_path: + if os.path.isfile(item): + files.append(item) + elif is_url(item): + files.append(get_file_from_url(item)) + else: + logger.warning(f"File {item} does not exist. Skipping.") + return files + # If the path is a file, return it if os.path.isfile(dir_path): return [dir_path] @@ -220,7 +239,6 @@ def get_files_from_dir(dir_path: str, types: list = TEXT_FORMATS, recursive: boo if is_url(dir_path): return [get_file_from_url(dir_path)] - files = [] if os.path.exists(dir_path): for type in types: if recursive: @@ -265,6 +283,7 @@ def create_vector_db_from_dir( must_break_at_empty_line: bool = True, embedding_model: str = "all-MiniLM-L6-v2", embedding_function: Callable = None, + custom_text_split_function: Callable = None, ): """Create a vector db from all the files in a given directory, the directory can also be a single file or a url to a single file. We support chromadb compatible APIs to create the vector db, this function is not required if @@ -304,7 +323,14 @@ def create_vector_db_from_dir( metadata={"hnsw:space": "ip", "hnsw:construction_ef": 30, "hnsw:M": 32}, # ip, l2, cosine ) - chunks = split_files_to_chunks(get_files_from_dir(dir_path), max_tokens, chunk_mode, must_break_at_empty_line) + if custom_text_split_function is not None: + chunks = split_files_to_chunks( + get_files_from_dir(dir_path), custom_text_split_function=custom_text_split_function + ) + else: + chunks = split_files_to_chunks( + get_files_from_dir(dir_path), max_tokens, chunk_mode, must_break_at_empty_line + ) logger.info(f"Found {len(chunks)} chunks.") # Upsert in batch of 40000 or less if the total number of chunks is less than 40000 for i in range(0, len(chunks), min(40000, len(chunks))): diff --git a/test/test_retrieve_utils.py b/test/test_retrieve_utils.py index be215facb84..a1c70d9cf28 100644 --- a/test/test_retrieve_utils.py +++ b/test/test_retrieve_utils.py @@ -74,6 +74,10 @@ def test_split_files_to_chunks(self): def test_get_files_from_dir(self): files = get_files_from_dir(test_dir) assert all(os.path.isfile(file) for file in files) + pdf_file_path = os.path.join(test_dir, "example.pdf") + txt_file_path = os.path.join(test_dir, "example.txt") + files = get_files_from_dir([pdf_file_path, txt_file_path]) + assert all(os.path.isfile(file) for file in files) def test_is_url(self): assert is_url("https://www.example.com") @@ -164,6 +168,24 @@ def retrieve_docs(self, problem: str, n_results: int = 20, search_string: str = ragragproxyagent.retrieve_docs("This is a test document spark", n_results=10, search_string="spark") assert ragragproxyagent._results["ids"] == [3, 1, 5] + def test_custom_text_split_function(self): + def custom_text_split_function(text): + return [text[: len(text) // 2], text[len(text) // 2 :]] + + db_path = "/tmp/test_retrieve_utils_chromadb.db" + client = chromadb.PersistentClient(path=db_path) + create_vector_db_from_dir( + os.path.join(test_dir, "example.txt"), + client=client, + collection_name="mytestcollection", + custom_text_split_function=custom_text_split_function, + ) + results = query_vector_db(["autogen"], client=client, collection_name="mytestcollection", n_results=1) + assert ( + results.get("documents")[0][0] + == "AutoGen is an advanced tool designed to assist developers in harnessing the capabilities\nof Large Language Models (LLMs) for various applications. The primary purpose o" + ) + if __name__ == "__main__": pytest.main() From f594333f7238386ef2069cfb5e6c667c36d95170 Mon Sep 17 00:00:00 2001 From: Maxim Saplin Date: Tue, 17 Oct 2023 17:57:31 +0300 Subject: [PATCH 064/151] Update FAQ.md, elaborate on how to customise docker image and pick 'python:3' to solve typical errors (#269) * Update FAQ.md * Update website/docs/FAQ.md Co-authored-by: Qingyun Wu * Update website/docs/FAQ.md Co-authored-by: Qingyun Wu * Update website/docs/FAQ.md Co-authored-by: Qingyun Wu --------- Co-authored-by: Qingyun Wu --- website/docs/FAQ.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/website/docs/FAQ.md b/website/docs/FAQ.md index 57eb30103ac..79d033cfbc6 100644 --- a/website/docs/FAQ.md +++ b/website/docs/FAQ.md @@ -141,3 +141,20 @@ We strongly recommend using docker to execute code. There are two ways to use do 1. Run autogen in a docker container. For example, when developing in GitHub codespace, the autogen runs in a docker container. 2. Run autogen outside of a docker, while perform code execution with a docker container. For this option, make sure the python package `docker` is installed. When it is not installed and `use_docker` is omitted in `code_execution_config`, the code will be executed locally (this behavior is subject to change in future). + +### Enable Python 3 docker image + +You might want to override the default docker image used for code execution. To do that set `use_docker` key of `code_execution_config` property to the name of the image. E.g.: +```python +user_proxy = autogen.UserProxyAgent( + name="agent", + human_input_mode="TERMINATE", + max_consecutive_auto_reply=10, + code_execution_config={"work_dir":"_output", "use_docker":"python:3"}, + llm_config=llm_config, + system_message=""""Reply TERMINATE if the task has been solved at full satisfaction. +Otherwise, reply CONTINUE, or the reason why the task is not solved yet.""" +) +``` + +If you have problems with agents running `pip install` or get errors similar to `Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory')`, you can choose **'python:3'** as image as shown in the code example above and that should solve the problem. From 88ebb77048607eeb6d33e826ba2a2000c18a6f0a Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Wed, 18 Oct 2023 04:31:27 +0800 Subject: [PATCH 065/151] 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 --- notebook/agentchat_groupchat_RAG.ipynb | 1501 ++++++++++++++++++++++++ 1 file changed, 1501 insertions(+) create mode 100644 notebook/agentchat_groupchat_RAG.ipynb diff --git a/notebook/agentchat_groupchat_RAG.ipynb b/notebook/agentchat_groupchat_RAG.ipynb new file mode 100644 index 00000000000..fd12cbe8c9b --- /dev/null +++ b/notebook/agentchat_groupchat_RAG.ipynb @@ -0,0 +1,1501 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\"Open" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Auto Generated Agent Chat: Group Chat with Retrieval Augmented Generation\n", + "\n", + "AutoGen supports conversable agents powered by LLMs, tools or humans, performing tasks collectively via automated chat. This framework allows tool use and human participation through multi-agent conversation.\n", + "Please find documentation about this feature [here](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat).\n", + "\n", + "## Requirements\n", + "\n", + "AutoGen requires `Python>=3.8`. To run this notebook example, please install:\n", + "```bash\n", + "pip install pyautogen\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%%capture --no-stderr\n", + "# %pip install pyautogen[retrievechat]~=0.1.11" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set your API Endpoint\n", + "\n", + "The [`config_list_from_json`](https://microsoft.github.io/autogen/docs/reference/oai/openai_utils#config_list_from_json) function loads a list of configurations from an environment variable or a json file." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "LLM models: ['gpt-35-turbo', 'gpt-35-turbo-0613']\n" + ] + } + ], + "source": [ + "import autogen\n", + "\n", + "config_list = autogen.config_list_from_json(\n", + " \"OAI_CONFIG_LIST\",\n", + " file_location=\".\",\n", + " filter_dict={\n", + " \"model\": [\"gpt-3.5-turbo\", \"gpt-35-turbo\", \"gpt-35-turbo-0613\", \"gpt-4\", \"gpt4\", \"gpt-4-32k\"],\n", + " },\n", + ")\n", + "\n", + "print(\"LLM models: \", [config_list[i][\"model\"] for i in range(len(config_list))])" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It first looks for environment variable \"OAI_CONFIG_LIST\" which needs to be a valid json string. If that variable is not found, it then looks for a json file named \"OAI_CONFIG_LIST\". It filters the configs by models (you can filter by other keys as well).\n", + "\n", + "The config list looks like the following:\n", + "```python\n", + "config_list = [\n", + " {\n", + " \"model\": \"gpt-4\",\n", + " \"api_key\": \"\",\n", + " }, # OpenAI API endpoint for gpt-4\n", + " {\n", + " \"engine\": \"gpt-35-turbo-0631\", \n", + " \"model\": \"gpt-35-turbo-0631\", # 0631 or newer is needed to use functions\n", + " \"api_base\": \"\", \n", + " \"api_type\": \"azure\", \n", + " \"api_version\": \"2023-07-01-preview\", # 2023-07-01-preview or newer is needed to use functions\n", + " \"api_key\": \"\"\n", + " }\n", + "]\n", + "```\n", + "\n", + "If you open this notebook in colab, you can upload your files by clicking the file icon on the left panel and then choose \"upload file\" icon.\n", + "\n", + "You can set the value of config_list in other ways you prefer, e.g., loading from a YAML file." + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Construct Agents" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "from autogen.agentchat.contrib.retrieve_user_proxy_agent import RetrieveUserProxyAgent\n", + "from autogen import AssistantAgent\n", + "import chromadb\n", + "\n", + "llm_config = {\n", + " \"request_timeout\": 60,\n", + " \"seed\": 42,\n", + " \"config_list\": config_list,\n", + " \"temperature\": 0,\n", + "}\n", + "\n", + "autogen.ChatCompletion.start_logging()\n", + "termination_msg = lambda x: isinstance(x, dict) and \"TERMINATE\" == str(x.get(\"content\", \"\"))[-9:].upper()\n", + "\n", + "boss = autogen.UserProxyAgent(\n", + " name=\"Boss\",\n", + " is_termination_msg=termination_msg,\n", + " human_input_mode=\"TERMINATE\",\n", + " system_message=\"The boss who ask questions and give tasks.\",\n", + " code_execution_config=False, # we don't want to execute code in this case.\n", + ")\n", + "\n", + "boss_aid = RetrieveUserProxyAgent(\n", + " name=\"Boss_Assistant\",\n", + " is_termination_msg=termination_msg,\n", + " system_message=\"Assistant who has extra content retrieval power for solving difficult problems.\",\n", + " human_input_mode=\"TERMINATE\",\n", + " max_consecutive_auto_reply=3,\n", + " retrieve_config={\n", + " \"task\": \"code\",\n", + " \"docs_path\": \"https://raw.githubusercontent.com/microsoft/FLAML/main/website/docs/Examples/Integrate%20-%20Spark.md\",\n", + " \"chunk_token_size\": 1000,\n", + " \"model\": config_list[0][\"model\"],\n", + " \"client\": chromadb.PersistentClient(path=\"/tmp/chromadb\"),\n", + " \"collection_name\": \"groupchat\",\n", + " \"get_or_create\": True,\n", + " },\n", + " code_execution_config=False, # we don't want to execute code in this case.\n", + ")\n", + "\n", + "coder = AssistantAgent(\n", + " name=\"Senior_Python_Engineer\",\n", + " is_termination_msg=termination_msg,\n", + " system_message=\"You are a senior python engineer. Reply `TERMINATE` in the end when everything is done.\",\n", + " llm_config=llm_config,\n", + ")\n", + "\n", + "pm = autogen.AssistantAgent(\n", + " name=\"Product_Manager\",\n", + " is_termination_msg=termination_msg,\n", + " system_message=\"You are a product manager. Reply `TERMINATE` in the end when everything is done.\",\n", + " llm_config=llm_config,\n", + ")\n", + "\n", + "reviewer = autogen.AssistantAgent(\n", + " name=\"Code_Reviewer\",\n", + " is_termination_msg=termination_msg,\n", + " system_message=\"You are a code reviewer. Reply `TERMINATE` in the end when everything is done.\",\n", + " llm_config=llm_config,\n", + ")\n", + "\n", + "PROBLEM = \"How to use spark for parallel training in FLAML? Give me sample code.\"\n", + "\n", + "def _reset_agents():\n", + " boss.reset()\n", + " boss_aid.reset()\n", + " coder.reset()\n", + " pm.reset()\n", + " reviewer.reset()\n", + "\n", + "def rag_chat():\n", + " _reset_agents()\n", + " groupchat = autogen.GroupChat(\n", + " agents=[boss_aid, coder, pm, reviewer], messages=[], max_round=12\n", + " )\n", + " manager = autogen.GroupChatManager(groupchat=groupchat, llm_config=llm_config)\n", + "\n", + " # Start chatting with boss_aid as this is the user proxy agent.\n", + " boss_aid.initiate_chat(\n", + " manager,\n", + " problem=PROBLEM,\n", + " n_results=3,\n", + " )\n", + "\n", + "def norag_chat():\n", + " _reset_agents()\n", + " groupchat = autogen.GroupChat(\n", + " agents=[boss, coder, pm, reviewer], messages=[], max_round=12\n", + " )\n", + " manager = autogen.GroupChatManager(groupchat=groupchat, llm_config=llm_config)\n", + "\n", + " # Start chatting with boss as this is the user proxy agent.\n", + " boss.initiate_chat(\n", + " manager,\n", + " message=PROBLEM,\n", + " )\n", + "\n", + "def call_rag_chat():\n", + " _reset_agents()\n", + " # In this case, we will have multiple user proxy agents and we don't initiate the chat\n", + " # with RAG user proxy agent.\n", + " # In order to use RAG user proxy agent, we need to wrap RAG agents in a function and call\n", + " # it from other agents.\n", + " def retrieve_content(message, n_results=3):\n", + " boss_aid.n_results = n_results # Set the number of results to be retrieved.\n", + " # Check if we need to update the context.\n", + " update_context_case1, update_context_case2 = boss_aid._check_update_context(message)\n", + " if (update_context_case1 or update_context_case2) and boss_aid.update_context:\n", + " boss_aid.problem = message if not hasattr(boss_aid, \"problem\") else boss_aid.problem\n", + " _, ret_msg = boss_aid._generate_retrieve_user_reply(message)\n", + " else:\n", + " ret_msg = boss_aid.generate_init_message(message, n_results=n_results)\n", + " return ret_msg if ret_msg else message\n", + " \n", + " boss_aid.human_input_mode = \"NEVER\" # Disable human input for boss_aid since it only retrieves content.\n", + " \n", + " llm_config = {\n", + " \"functions\": [\n", + " {\n", + " \"name\": \"retrieve_content\",\n", + " \"description\": \"retrieve content for code generation and question answering.\",\n", + " \"parameters\": {\n", + " \"type\": \"object\",\n", + " \"properties\": {\n", + " \"message\": {\n", + " \"type\": \"string\",\n", + " \"description\": \"Refined message which keeps the original meaning and can be used to retrieve content for code generation and question answering.\",\n", + " }\n", + " },\n", + " \"required\": [\"message\"],\n", + " },\n", + " },\n", + " ],\n", + " \"config_list\": config_list,\n", + " \"request_timeout\": 60,\n", + " \"seed\": 42,\n", + " }\n", + "\n", + " for agent in [coder, pm, reviewer]:\n", + " # update llm_config for assistant agents.\n", + " agent.llm_config.update(llm_config)\n", + "\n", + " for agent in [boss, coder, pm, reviewer]:\n", + " # register functions for all agents.\n", + " agent.register_function(\n", + " function_map={\n", + " \"retrieve_content\": retrieve_content,\n", + " }\n", + " )\n", + "\n", + " groupchat = autogen.GroupChat(\n", + " agents=[boss, coder, pm, reviewer], messages=[], max_round=12\n", + " )\n", + " manager = autogen.GroupChatManager(groupchat=groupchat, llm_config=llm_config)\n", + "\n", + " # Start chatting with boss as this is the user proxy agent.\n", + " boss.initiate_chat(\n", + " manager,\n", + " message=PROBLEM,\n", + " )" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Start Chat\n", + "\n", + "### UserProxyAgent doesn't get the correct code\n", + "[FLAML](https://github.com/microsoft/FLAML) was open sourced in 2020, so ChatGPT is familiar with it. However, Spark-related APIs were added in 2022, so they were not in ChatGPT's training data. As a result, we end up with invalid code." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "To use Spark for parallel training in FLAML, you can use the `SparkTrials` class provided by FLAML. Here is a sample code:\n", + "\n", + "```python\n", + "from flaml import AutoML\n", + "from flaml.data import load_credit\n", + "from flaml.model import SparkTrials\n", + "\n", + "# Load data\n", + "X_train, y_train, X_test, y_test = load_credit()\n", + "\n", + "# Define the search space\n", + "search_space = {\n", + " \"n_estimators\": {\"domain\": range(10, 100)},\n", + " \"max_depth\": {\"domain\": range(6, 10)},\n", + " \"learning_rate\": {\"domain\": (0.01, 0.1, 1)},\n", + "}\n", + "\n", + "# Create an AutoML instance with SparkTrials\n", + "automl = AutoML(\n", + " search_space=search_space,\n", + " task=\"classification\",\n", + " n_jobs=1,\n", + " ensemble_size=0,\n", + " max_time=60,\n", + " trials=SparkTrials(parallelism=2),\n", + ")\n", + "\n", + "# Train the model\n", + "automl.fit(X_train=X_train, y_train=y_train)\n", + "\n", + "# Evaluate the model\n", + "print(\"Best model:\", automl.best_model)\n", + "print(\"Best hyperparameters:\", automl.best_config)\n", + "print(\"Test accuracy:\", automl.score(X_test, y_test))\n", + "\n", + "# Terminate\n", + "TERMINATE\n", + "```\n", + "\n", + "In this code, we first load the credit dataset. Then, we define the search space for the hyperparameters. We create an `AutoML` instance with `SparkTrials` as the `trials` parameter. We set the `parallelism` parameter to 2 to use 2 Spark workers for parallel training. Finally, we fit the model and evaluate it.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Reviewer\u001b[0m (to chat_manager):\n", + "\n", + "Great! This code looks good to me.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mProduct_Manager\u001b[0m (to chat_manager):\n", + "\n", + "Thank you! Let me know if you have any other questions.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "norag_chat()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### RetrieveUserProxyAgent get the correct code\n", + "Since RetrieveUserProxyAgent can perform retrieval-augmented generation based on the given documentation file, ChatGPT can generate the correct code for us!" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Trying to create collection.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO:autogen.retrieve_utils:Found 2 chunks.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "doc_ids: [['doc_0', 'doc_1', 'doc_4']]\n", + "\u001b[32mAdding doc_id doc_0 to context.\u001b[0m\n", + "\u001b[32mAdding doc_id doc_1 to context.\u001b[0m\n", + "\u001b[32mAdding doc_id doc_4 to context.\u001b[0m\n", + "\u001b[33mBoss_Assistant\u001b[0m (to chat_manager):\n", + "\n", + "You're a retrieve augmented coding assistant. You answer user's questions based on your own knowledge and the\n", + "context provided by the user.\n", + "If you can't answer the question with or without the current context, you should reply exactly `UPDATE CONTEXT`.\n", + "For code generation, you must obey the following rules:\n", + "Rule 1. You MUST NOT install any packages because all the packages needed are already installed.\n", + "Rule 2. You must follow the formats below to write your code:\n", + "```language\n", + "# your code\n", + "```\n", + "\n", + "User's question is: How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "Context is: # Integrate - Spark\n", + "\n", + "FLAML has integrated Spark for distributed training. There are two main aspects of integration with Spark:\n", + "- Use Spark ML estimators for AutoML.\n", + "- Use Spark to run training in parallel spark jobs.\n", + "\n", + "## Spark ML Estimators\n", + "\n", + "FLAML integrates estimators based on Spark ML models. These models are trained in parallel using Spark, so we called them Spark estimators. To use these models, you first need to organize your data in the required format.\n", + "\n", + "### Data\n", + "\n", + "For Spark estimators, AutoML only consumes Spark data. FLAML provides a convenient function `to_pandas_on_spark` in the `flaml.automl.spark.utils` module to convert your data into a pandas-on-spark (`pyspark.pandas`) dataframe/series, which Spark estimators require.\n", + "\n", + "This utility function takes data in the form of a `pandas.Dataframe` or `pyspark.sql.Dataframe` and converts it into a pandas-on-spark dataframe. It also takes `pandas.Series` or `pyspark.sql.Dataframe` and converts it into a [pandas-on-spark](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/index.html) series. If you pass in a `pyspark.pandas.Dataframe`, it will not make any changes.\n", + "\n", + "This function also accepts optional arguments `index_col` and `default_index_type`.\n", + "- `index_col` is the column name to use as the index, default is None.\n", + "- `default_index_type` is the default index type, default is \"distributed-sequence\". More info about default index type could be found on Spark official [documentation](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/options.html#default-index-type)\n", + "\n", + "Here is an example code snippet for Spark Data:\n", + "\n", + "```python\n", + "import pandas as pd\n", + "from flaml.automl.spark.utils import to_pandas_on_spark\n", + "# Creating a dictionary\n", + "data = {\"Square_Feet\": [800, 1200, 1800, 1500, 850],\n", + " \"Age_Years\": [20, 15, 10, 7, 25],\n", + " \"Price\": [100000, 200000, 300000, 240000, 120000]}\n", + "\n", + "# Creating a pandas DataFrame\n", + "dataframe = pd.DataFrame(data)\n", + "label = \"Price\"\n", + "\n", + "# Convert to pandas-on-spark dataframe\n", + "psdf = to_pandas_on_spark(dataframe)\n", + "```\n", + "\n", + "To use Spark ML models you need to format your data appropriately. Specifically, use [`VectorAssembler`](https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.ml.feature.VectorAssembler.html) to merge all feature columns into a single vector column.\n", + "\n", + "Here is an example of how to use it:\n", + "```python\n", + "from pyspark.ml.feature import VectorAssembler\n", + "columns = psdf.columns\n", + "feature_cols = [col for col in columns if col != label]\n", + "featurizer = VectorAssembler(inputCols=feature_cols, outputCol=\"features\")\n", + "psdf = featurizer.transform(psdf.to_spark(index_col=\"index\"))[\"index\", \"features\"]\n", + "```\n", + "\n", + "Later in conducting the experiment, use your pandas-on-spark data like non-spark data and pass them using `X_train, y_train` or `dataframe, label`.\n", + "\n", + "### Estimators\n", + "#### Model List\n", + "- `lgbm_spark`: The class for fine-tuning Spark version LightGBM models, using [SynapseML](https://microsoft.github.io/SynapseML/docs/features/lightgbm/about/) API.\n", + "\n", + "#### Usage\n", + "First, prepare your data in the required format as described in the previous section.\n", + "\n", + "By including the models you intend to try in the `estimators_list` argument to `flaml.automl`, FLAML will start trying configurations for these models. If your input is Spark data, FLAML will also use estimators with the `_spark` postfix by default, even if you haven't specified them.\n", + "\n", + "Here is an example code snippet using SparkML models in AutoML:\n", + "\n", + "```python\n", + "import flaml\n", + "# prepare your data in pandas-on-spark format as we previously mentioned\n", + "\n", + "automl = flaml.AutoML()\n", + "settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"estimator_list\": [\"lgbm_spark\"], # this setting is optional\n", + " \"task\": \"regression\",\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=psdf,\n", + " label=label,\n", + " **settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb)\n", + "\n", + "## Parallel Spark Jobs\n", + "You can activate Spark as the parallel backend during parallel tuning in both [AutoML](/docs/Use-Cases/Task-Oriented-AutoML#parallel-tuning) and [Hyperparameter Tuning](/docs/Use-Cases/Tune-User-Defined-Function#parallel-tuning), by setting the `use_spark` to `true`. FLAML will dispatch your job to the distributed Spark backend using [`joblib-spark`](https://github.com/joblib/joblib-spark).\n", + "\n", + "Please note that you should not set `use_spark` to `true` when applying AutoML and Tuning for Spark Data. This is because only SparkML models will be used for Spark Data in AutoML and Tuning. As SparkML models run in parallel, there is no need to distribute them with `use_spark` again.\n", + "\n", + "All the Spark-related arguments are stated below. These arguments are available in both Hyperparameter Tuning and AutoML:\n", + "\n", + "\n", + "- `use_spark`: boolean, default=False | Whether to use spark to run the training in parallel spark jobs. This can be used to accelerate training on large models and large datasets, but will incur more overhead in time and thus slow down training in some cases. GPU training is not supported yet when use_spark is True. For Spark clusters, by default, we will launch one trial per executor. However, sometimes we want to launch more trials than the number of executors (e.g., local mode). In this case, we can set the environment variable `FLAML_MAX_CONCURRENT` to override the detected `num_executors`. The final number of concurrent trials will be the minimum of `n_concurrent_trials` and `num_executors`.\n", + "- `n_concurrent_trials`: int, default=1 | The number of concurrent trials. When n_concurrent_trials > 1, FLAML performes parallel tuning.\n", + "- `force_cancel`: boolean, default=False | Whether to forcely cancel Spark jobs if the search time exceeded the time budget. Spark jobs include parallel tuning jobs and Spark-based model training jobs.\n", + "\n", + "An example code snippet for using parallel Spark jobs:\n", + "```python\n", + "import flaml\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"n_concurrent_trials\": 2,\n", + " \"use_spark\": True,\n", + " \"force_cancel\": True, # Activating the force_cancel option can immediately halt Spark jobs once they exceed the allocated time_budget.\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=dataframe,\n", + " label=label,\n", + " **automl_settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb)\n", + "\n", + "\n", + "```python\n", + "import flaml\n", + "# for flaml.tune\n", + "with mlflow.start_run(run_name=f\"spark_auto_trials_1686631558\"):\n", + " analysis = flaml.tune.run(\n", + " func_to_tune,\n", + " params,\n", + " metric=\"r2\",\n", + " mode=\"max\",\n", + " mlflow_exp_name=\"test_doc\",\n", + " use_spark=True,\n", + " )\n", + "\n", + "# for flaml.automl\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"use_spark\": True,\n", + " \"mlflow_exp_name\": \"test_doc\",\n", + " \"estimator_list\": [\n", + " \"lgbm\",\n", + " \"rf\",\n", + " \"xgboost\",\n", + " \"extra_tree\",\n", + " \"xgb_limitdepth\",\n", + " ], # catboost does not yet support mlflow autologging\n", + "}\n", + "with mlflow.start_run(run_name=f\"automl_spark_trials_1686631579\"):\n", + " automl_experiment.fit(X_train=train_x, y_train=train_y, **automl_settings)\n", + "```\n", + "\n", + "\n", + "\n", + "### Results\n", + "*Tune Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![Tune Autolog Trials on MLFlow UI](Images/tune_trials.png)\n", + "\n", + "\n", + "*AutoML Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![AutoML Autolog Trials on MLFlow UI](Images/automl_trials.png)\n", + "\n", + "\n", + "### Differences Between Auto and Manual Logging\n", + "Autologging is managed by MLFlow, while manual logging is maintained by FLAML.\n", + "\n", + "\n", + "#### Details of Manual Logging\n", + "FLAML logs general artifacts for AutoML tasks. Specifically, we log these artifacts:\n", + "\n", + "**`flaml.tune`**\n", + "\n", + "\n", + "![Manual Log Example for Tuning](Images/manual_log_tune.png)\n", + "\n", + "\n", + "- We create a parent run to log the best metric and the best configuration for the entire tuning process.\n", + "- For each trial, we create a child run to log the metric specific to the tune function and the configuration for that trial.\n", + "\n", + "**`flaml.automl`**\n", + "\n", + "\n", + "![Manual Log Example for AutoML](Images/manual_log_automl.png)\n", + "\n", + "\n", + "- We create a parent run to log the results of the experiment. This includes:\n", + " - The configuration of this model.\n", + " - The `best_validation_loss` produced by this model.\n", + " - The `best_iteration` to identify the point at which this model was found.\n", + "- For each state (a specific learner with different hyperparameters), we record the best trial for this model. This includes:\n", + " - The configuration of the best trial.\n", + " - The `validation_loss` the best trial produces.\n", + " - The `iter_count` to identify how many trials we have conducted for this state.\n", + " - The `pred_time`, which is the time cost of predicting test data for this model.\n", + " - The `wall_clock_time`, which is the time cost of this state.\n", + " - The `sample_size` to show how much data we sampled in this state.\n", + "Note that we also added these information to autolog AutoML run.\n", + "\n", + "\n", + "#### Details of Autologging\n", + "Autolog artifacts typically include model parameters, model files, and runtime metrics like the following:\n", + "\n", + "\n", + "![Autolog Example](Images/autolog_example.png)\n", + "\n", + "\n", + "Artifacts can differ among various machine learning libraries. More detailed information can be found [here](https://mlflow.org/docs/latest/tracking.html#automatic-logging).\n", + "\n", + "\n", + "\n", + "\n", + "## Plot Experiment Result\n", + "The `flaml.visualization` module provides utility functions for plotting the optimization process using [plotly](https://plotly.com/python/). Leveraging `plotly`, users can interactively explore experiment results. To use these plotting functions, simply provide your optimized `flaml.AutoML` or `flaml.tune.tune.ExperimentAnalysis` object as input. Optional parameters can be added using keyword arguments.\n", + "\n", + "Avaliable plotting functions:\n", + "- `plot_optimization_history`: Plot optimization history of all trials in the experiment.\n", + "- `plot_feature_importance`: Plot importance for each feature in the dataset.\n", + "- `plot_parallel_coordinate`: Plot the high-dimensional parameter relationships in the experiment.\n", + "- `plot_contour`: Plot the parameter relationship as contour plot in the experiment.\n", + "- `plot_edf`: Plot the objective value EDF (empirical distribution function) of the experiment.\n", + "- `plot_timeline`: Plot the timeline of the experiment.\n", + "- `plot_slice`: Plot the parameter relationship as slice plot in a study.\n", + "\n", + "### Figure Examples\n", + "![Plot Examples](Images/plot_samples.png)\n", + "\n", + "Check out our example [notebook](../../notebook/trident/automl_plot.ipynb) for a preview of all interactive plots.\n", + "\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[32mAdding doc_id doc_1 to context.\u001b[0m\n", + "\u001b[32mAdding doc_id doc_4 to context.\u001b[0m\n", + "\u001b[33mBoss_Assistant\u001b[0m (to chat_manager):\n", + "\n", + "You're a retrieve augmented coding assistant. You answer user's questions based on your own knowledge and the\n", + "context provided by the user.\n", + "If you can't answer the question with or without the current context, you should reply exactly `UPDATE CONTEXT`.\n", + "For code generation, you must obey the following rules:\n", + "Rule 1. You MUST NOT install any packages because all the packages needed are already installed.\n", + "Rule 2. You must follow the formats below to write your code:\n", + "```language\n", + "# your code\n", + "```\n", + "\n", + "User's question is: How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "Context is: # Integrate - Spark\n", + "\n", + "FLAML has integrated Spark for distributed training. There are two main aspects of integration with Spark:\n", + "- Use Spark ML estimators for AutoML.\n", + "- Use Spark to run training in parallel spark jobs.\n", + "\n", + "## Spark ML Estimators\n", + "\n", + "FLAML integrates estimators based on Spark ML models. These models are trained in parallel using Spark, so we called them Spark estimators. To use these models, you first need to organize your data in the required format.\n", + "\n", + "### Data\n", + "\n", + "For Spark estimators, AutoML only consumes Spark data. FLAML provides a convenient function `to_pandas_on_spark` in the `flaml.automl.spark.utils` module to convert your data into a pandas-on-spark (`pyspark.pandas`) dataframe/series, which Spark estimators require.\n", + "\n", + "This utility function takes data in the form of a `pandas.Dataframe` or `pyspark.sql.Dataframe` and converts it into a pandas-on-spark dataframe. It also takes `pandas.Series` or `pyspark.sql.Dataframe` and converts it into a [pandas-on-spark](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/index.html) series. If you pass in a `pyspark.pandas.Dataframe`, it will not make any changes.\n", + "\n", + "This function also accepts optional arguments `index_col` and `default_index_type`.\n", + "- `index_col` is the column name to use as the index, default is None.\n", + "- `default_index_type` is the default index type, default is \"distributed-sequence\". More info about default index type could be found on Spark official [documentation](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/options.html#default-index-type)\n", + "\n", + "Here is an example code snippet for Spark Data:\n", + "\n", + "```python\n", + "import pandas as pd\n", + "from flaml.automl.spark.utils import to_pandas_on_spark\n", + "# Creating a dictionary\n", + "data = {\"Square_Feet\": [800, 1200, 1800, 1500, 850],\n", + " \"Age_Years\": [20, 15, 10, 7, 25],\n", + " \"Price\": [100000, 200000, 300000, 240000, 120000]}\n", + "\n", + "# Creating a pandas DataFrame\n", + "dataframe = pd.DataFrame(data)\n", + "label = \"Price\"\n", + "\n", + "# Convert to pandas-on-spark dataframe\n", + "psdf = to_pandas_on_spark(dataframe)\n", + "```\n", + "\n", + "To use Spark ML models you need to format your data appropriately. Specifically, use [`VectorAssembler`](https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.ml.feature.VectorAssembler.html) to merge all feature columns into a single vector column.\n", + "\n", + "Here is an example of how to use it:\n", + "```python\n", + "from pyspark.ml.feature import VectorAssembler\n", + "columns = psdf.columns\n", + "feature_cols = [col for col in columns if col != label]\n", + "featurizer = VectorAssembler(inputCols=feature_cols, outputCol=\"features\")\n", + "psdf = featurizer.transform(psdf.to_spark(index_col=\"index\"))[\"index\", \"features\"]\n", + "```\n", + "\n", + "Later in conducting the experiment, use your pandas-on-spark data like non-spark data and pass them using `X_train, y_train` or `dataframe, label`.\n", + "\n", + "### Estimators\n", + "#### Model List\n", + "- `lgbm_spark`: The class for fine-tuning Spark version LightGBM models, using [SynapseML](https://microsoft.github.io/SynapseML/docs/features/lightgbm/about/) API.\n", + "\n", + "#### Usage\n", + "First, prepare your data in the required format as described in the previous section.\n", + "\n", + "By including the models you intend to try in the `estimators_list` argument to `flaml.automl`, FLAML will start trying configurations for these models. If your input is Spark data, FLAML will also use estimators with the `_spark` postfix by default, even if you haven't specified them.\n", + "\n", + "Here is an example code snippet using SparkML models in AutoML:\n", + "\n", + "```python\n", + "import flaml\n", + "# prepare your data in pandas-on-spark format as we previously mentioned\n", + "\n", + "automl = flaml.AutoML()\n", + "settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"estimator_list\": [\"lgbm_spark\"], # this setting is optional\n", + " \"task\": \"regression\",\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=psdf,\n", + " label=label,\n", + " **settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb)\n", + "\n", + "## Parallel Spark Jobs\n", + "You can activate Spark as the parallel backend during parallel tuning in both [AutoML](/docs/Use-Cases/Task-Oriented-AutoML#parallel-tuning) and [Hyperparameter Tuning](/docs/Use-Cases/Tune-User-Defined-Function#parallel-tuning), by setting the `use_spark` to `true`. FLAML will dispatch your job to the distributed Spark backend using [`joblib-spark`](https://github.com/joblib/joblib-spark).\n", + "\n", + "Please note that you should not set `use_spark` to `true` when applying AutoML and Tuning for Spark Data. This is because only SparkML models will be used for Spark Data in AutoML and Tuning. As SparkML models run in parallel, there is no need to distribute them with `use_spark` again.\n", + "\n", + "All the Spark-related arguments are stated below. These arguments are available in both Hyperparameter Tuning and AutoML:\n", + "\n", + "\n", + "- `use_spark`: boolean, default=False | Whether to use spark to run the training in parallel spark jobs. This can be used to accelerate training on large models and large datasets, but will incur more overhead in time and thus slow down training in some cases. GPU training is not supported yet when use_spark is True. For Spark clusters, by default, we will launch one trial per executor. However, sometimes we want to launch more trials than the number of executors (e.g., local mode). In this case, we can set the environment variable `FLAML_MAX_CONCURRENT` to override the detected `num_executors`. The final number of concurrent trials will be the minimum of `n_concurrent_trials` and `num_executors`.\n", + "- `n_concurrent_trials`: int, default=1 | The number of concurrent trials. When n_concurrent_trials > 1, FLAML performes parallel tuning.\n", + "- `force_cancel`: boolean, default=False | Whether to forcely cancel Spark jobs if the search time exceeded the time budget. Spark jobs include parallel tuning jobs and Spark-based model training jobs.\n", + "\n", + "An example code snippet for using parallel Spark jobs:\n", + "```python\n", + "import flaml\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"n_concurrent_trials\": 2,\n", + " \"use_spark\": True,\n", + " \"force_cancel\": True, # Activating the force_cancel option can immediately halt Spark jobs once they exceed the allocated time_budget.\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=dataframe,\n", + " label=label,\n", + " **automl_settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb)\n", + "\n", + "\n", + "```python\n", + "import flaml\n", + "# for flaml.tune\n", + "with mlflow.start_run(run_name=f\"spark_auto_trials_1686631558\"):\n", + " analysis = flaml.tune.run(\n", + " func_to_tune,\n", + " params,\n", + " metric=\"r2\",\n", + " mode=\"max\",\n", + " mlflow_exp_name=\"test_doc\",\n", + " use_spark=True,\n", + " )\n", + "\n", + "# for flaml.automl\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"use_spark\": True,\n", + " \"mlflow_exp_name\": \"test_doc\",\n", + " \"estimator_list\": [\n", + " \"lgbm\",\n", + " \"rf\",\n", + " \"xgboost\",\n", + " \"extra_tree\",\n", + " \"xgb_limitdepth\",\n", + " ], # catboost does not yet support mlflow autologging\n", + "}\n", + "with mlflow.start_run(run_name=f\"automl_spark_trials_1686631579\"):\n", + " automl_experiment.fit(X_train=train_x, y_train=train_y, **automl_settings)\n", + "```\n", + "\n", + "\n", + "\n", + "### Results\n", + "*Tune Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![Tune Autolog Trials on MLFlow UI](Images/tune_trials.png)\n", + "\n", + "\n", + "*AutoML Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![AutoML Autolog Trials on MLFlow UI](Images/automl_trials.png)\n", + "\n", + "\n", + "### Differences Between Auto and Manual Logging\n", + "Autologging is managed by MLFlow, while manual logging is maintained by FLAML.\n", + "\n", + "\n", + "#### Details of Manual Logging\n", + "FLAML logs general artifacts for AutoML tasks. Specifically, we log these artifacts:\n", + "\n", + "**`flaml.tune`**\n", + "\n", + "\n", + "![Manual Log Example for Tuning](Images/manual_log_tune.png)\n", + "\n", + "\n", + "- We create a parent run to log the best metric and the best configuration for the entire tuning process.\n", + "- For each trial, we create a child run to log the metric specific to the tune function and the configuration for that trial.\n", + "\n", + "**`flaml.automl`**\n", + "\n", + "\n", + "![Manual Log Example for AutoML](Images/manual_log_automl.png)\n", + "\n", + "\n", + "- We create a parent run to log the results of the experiment. This includes:\n", + " - The configuration of this model.\n", + " - The `best_validation_loss` produced by this model.\n", + " - The `best_iteration` to identify the point at which this model was found.\n", + "- For each state (a specific learner with different hyperparameters), we record the best trial for this model. This includes:\n", + " - The configuration of the best trial.\n", + " - The `validation_loss` the best trial produces.\n", + " - The `iter_count` to identify how many trials we have conducted for this state.\n", + " - The `pred_time`, which is the time cost of predicting test data for this model.\n", + " - The `wall_clock_time`, which is the time cost of this state.\n", + " - The `sample_size` to show how much data we sampled in this state.\n", + "Note that we also added these information to autolog AutoML run.\n", + "\n", + "\n", + "#### Details of Autologging\n", + "Autolog artifacts typically include model parameters, model files, and runtime metrics like the following:\n", + "\n", + "\n", + "![Autolog Example](Images/autolog_example.png)\n", + "\n", + "\n", + "Artifacts can differ among various machine learning libraries. More detailed information can be found [here](https://mlflow.org/docs/latest/tracking.html#automatic-logging).\n", + "\n", + "\n", + "\n", + "\n", + "## Plot Experiment Result\n", + "The `flaml.visualization` module provides utility functions for plotting the optimization process using [plotly](https://plotly.com/python/). Leveraging `plotly`, users can interactively explore experiment results. To use these plotting functions, simply provide your optimized `flaml.AutoML` or `flaml.tune.tune.ExperimentAnalysis` object as input. Optional parameters can be added using keyword arguments.\n", + "\n", + "Avaliable plotting functions:\n", + "- `plot_optimization_history`: Plot optimization history of all trials in the experiment.\n", + "- `plot_feature_importance`: Plot importance for each feature in the dataset.\n", + "- `plot_parallel_coordinate`: Plot the high-dimensional parameter relationships in the experiment.\n", + "- `plot_contour`: Plot the parameter relationship as contour plot in the experiment.\n", + "- `plot_edf`: Plot the objective value EDF (empirical distribution function) of the experiment.\n", + "- `plot_timeline`: Plot the timeline of the experiment.\n", + "- `plot_slice`: Plot the parameter relationship as slice plot in a study.\n", + "\n", + "### Figure Examples\n", + "![Plot Examples](Images/plot_samples.png)\n", + "\n", + "Check out our example [notebook](../../notebook/trident/automl_plot.ipynb) for a preview of all interactive plots.\n", + "\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "To use Spark for parallel training in FLAML, you can activate Spark as the parallel backend during parallel tuning in both AutoML and Hyperparameter Tuning, by setting the `use_spark` to `true`. FLAML will dispatch your job to the distributed Spark backend using `joblib-spark`. \n", + "\n", + "Here is an example code snippet for using parallel Spark jobs:\n", + "\n", + "```python\n", + "import flaml\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"use_spark\": True,\n", + " \"estimator_list\": [\n", + " \"lgbm\",\n", + " \"rf\",\n", + " \"xgboost\",\n", + " \"extra_tree\",\n", + " \"xgb_limitdepth\",\n", + " ],\n", + "}\n", + "automl_experiment.fit(X_train=train_x, y_train=train_y, **automl_settings)\n", + "```\n", + "\n", + "Note that you should not set `use_spark` to `true` when applying AutoML and Tuning for Spark Data. This is because only SparkML models will be used for Spark Data in AutoML and Tuning. As SparkML models run in parallel, there is no need to distribute them with `use_spark` again.\n", + "\n", + "You can also use Spark ML estimators for AutoML. FLAML integrates estimators based on Spark ML models. These models are trained in parallel using Spark, so we called them Spark estimators. To use these models, you first need to organize your data in the required format.\n", + "\n", + "Here is an example code snippet for Spark Data:\n", + "\n", + "```python\n", + "import pandas as pd\n", + "from flaml.automl.spark.utils import to_pandas_on_spark\n", + "# Creating a dictionary\n", + "data = {\"Square_Feet\": [800, 1200, 1800, 1500, 850],\n", + " \"Age_Years\": [20, 15, 10, 7, 25],\n", + " \"Price\": [100000, 200000, 300000, 240000, 120000]}\n", + "\n", + "# Creating a pandas DataFrame\n", + "dataframe = pd.DataFrame(data)\n", + "label = \"Price\"\n", + "\n", + "# Convert to pandas-on-spark dataframe\n", + "psdf = to_pandas_on_spark(dataframe)\n", + "```\n", + "\n", + "To use Spark ML models you need to format your data appropriately. Specifically, use `VectorAssembler` to merge all feature columns into a single vector column.\n", + "\n", + "Here is an example of how to use it:\n", + "```python\n", + "from pyspark.ml.feature import VectorAssembler\n", + "columns = psdf.columns\n", + "feature_cols = [col for col in columns if col != label]\n", + "featurizer = VectorAssembler(inputCols=feature_cols, outputCol=\"features\")\n", + "psdf = featurizer.transform(psdf.to_spark(index_col=\"index\"))[\"index\", \"features\"]\n", + "```\n", + "\n", + "Later in conducting the experiment, use your pandas-on-spark data like non-spark data and pass them using `X_train, y_train` or `dataframe, label`.\n", + "\n", + "You can also plot the optimization process using `plotly` by providing your optimized `flaml.AutoML` or `flaml.tune.tune.ExperimentAnalysis` object as input. Optional parameters can be added using keyword arguments. Available plotting functions include `plot_optimization_history`, `plot_feature_importance`, `plot_parallel_coordinate`, `plot_contour`, `plot_edf`, `plot_timeline`, and `plot_slice`.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mProduct_Manager\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Reviewer\u001b[0m (to chat_manager):\n", + "\n", + "Is there anything else you need help with?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss_Assistant\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mProduct_Manager\u001b[0m (to chat_manager):\n", + "\n", + "No, that's all. Thank you for your help!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Reviewer\u001b[0m (to chat_manager):\n", + "\n", + "You're welcome! Don't hesitate to ask if you have any more questions in the future. Have a great day!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss_Assistant\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "Have a great day too!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mProduct_Manager\u001b[0m (to chat_manager):\n", + "\n", + "Thank you!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Reviewer\u001b[0m (to chat_manager):\n", + "\n", + "You're welcome!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss_Assistant\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "rag_chat()\n", + "# type exit to terminate the chat" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Call RetrieveUserProxyAgent while init chat with another user proxy agent\n", + "Sometimes, there might be a need to use RetrieveUserProxyAgent in group chat without initializing the chat with it. In such scenarios, it becomes essential to create a function that wraps the RAG agents and allows them to be called from other agents." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "How to use spark for parallel training in FLAML? Give me sample code.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "\u001b[32m***** Suggested function Call: retrieve_content *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"message\": \"How to use spark for parallel training in FLAML?\"\n", + "}\n", + "\u001b[32m*****************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION retrieve_content...\u001b[0m\n", + "doc_ids: [['doc_0', 'doc_1', 'doc_4']]\n", + "\u001b[32mAdding doc_id doc_0 to context.\u001b[0m\n", + "\u001b[32mAdding doc_id doc_1 to context.\u001b[0m\n", + "\u001b[32mAdding doc_id doc_4 to context.\u001b[0m\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "\u001b[32m***** Response from calling function \"retrieve_content\" *****\u001b[0m\n", + "You're a retrieve augmented coding assistant. You answer user's questions based on your own knowledge and the\n", + "context provided by the user.\n", + "If you can't answer the question with or without the current context, you should reply exactly `UPDATE CONTEXT`.\n", + "For code generation, you must obey the following rules:\n", + "Rule 1. You MUST NOT install any packages because all the packages needed are already installed.\n", + "Rule 2. You must follow the formats below to write your code:\n", + "```language\n", + "# your code\n", + "```\n", + "\n", + "User's question is: How to use spark for parallel training in FLAML?\n", + "\n", + "Context is: # Integrate - Spark\n", + "\n", + "FLAML has integrated Spark for distributed training. There are two main aspects of integration with Spark:\n", + "- Use Spark ML estimators for AutoML.\n", + "- Use Spark to run training in parallel spark jobs.\n", + "\n", + "## Spark ML Estimators\n", + "\n", + "FLAML integrates estimators based on Spark ML models. These models are trained in parallel using Spark, so we called them Spark estimators. To use these models, you first need to organize your data in the required format.\n", + "\n", + "### Data\n", + "\n", + "For Spark estimators, AutoML only consumes Spark data. FLAML provides a convenient function `to_pandas_on_spark` in the `flaml.automl.spark.utils` module to convert your data into a pandas-on-spark (`pyspark.pandas`) dataframe/series, which Spark estimators require.\n", + "\n", + "This utility function takes data in the form of a `pandas.Dataframe` or `pyspark.sql.Dataframe` and converts it into a pandas-on-spark dataframe. It also takes `pandas.Series` or `pyspark.sql.Dataframe` and converts it into a [pandas-on-spark](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/index.html) series. If you pass in a `pyspark.pandas.Dataframe`, it will not make any changes.\n", + "\n", + "This function also accepts optional arguments `index_col` and `default_index_type`.\n", + "- `index_col` is the column name to use as the index, default is None.\n", + "- `default_index_type` is the default index type, default is \"distributed-sequence\". More info about default index type could be found on Spark official [documentation](https://spark.apache.org/docs/latest/api/python/user_guide/pandas_on_spark/options.html#default-index-type)\n", + "\n", + "Here is an example code snippet for Spark Data:\n", + "\n", + "```python\n", + "import pandas as pd\n", + "from flaml.automl.spark.utils import to_pandas_on_spark\n", + "# Creating a dictionary\n", + "data = {\"Square_Feet\": [800, 1200, 1800, 1500, 850],\n", + " \"Age_Years\": [20, 15, 10, 7, 25],\n", + " \"Price\": [100000, 200000, 300000, 240000, 120000]}\n", + "\n", + "# Creating a pandas DataFrame\n", + "dataframe = pd.DataFrame(data)\n", + "label = \"Price\"\n", + "\n", + "# Convert to pandas-on-spark dataframe\n", + "psdf = to_pandas_on_spark(dataframe)\n", + "```\n", + "\n", + "To use Spark ML models you need to format your data appropriately. Specifically, use [`VectorAssembler`](https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.ml.feature.VectorAssembler.html) to merge all feature columns into a single vector column.\n", + "\n", + "Here is an example of how to use it:\n", + "```python\n", + "from pyspark.ml.feature import VectorAssembler\n", + "columns = psdf.columns\n", + "feature_cols = [col for col in columns if col != label]\n", + "featurizer = VectorAssembler(inputCols=feature_cols, outputCol=\"features\")\n", + "psdf = featurizer.transform(psdf.to_spark(index_col=\"index\"))[\"index\", \"features\"]\n", + "```\n", + "\n", + "Later in conducting the experiment, use your pandas-on-spark data like non-spark data and pass them using `X_train, y_train` or `dataframe, label`.\n", + "\n", + "### Estimators\n", + "#### Model List\n", + "- `lgbm_spark`: The class for fine-tuning Spark version LightGBM models, using [SynapseML](https://microsoft.github.io/SynapseML/docs/features/lightgbm/about/) API.\n", + "\n", + "#### Usage\n", + "First, prepare your data in the required format as described in the previous section.\n", + "\n", + "By including the models you intend to try in the `estimators_list` argument to `flaml.automl`, FLAML will start trying configurations for these models. If your input is Spark data, FLAML will also use estimators with the `_spark` postfix by default, even if you haven't specified them.\n", + "\n", + "Here is an example code snippet using SparkML models in AutoML:\n", + "\n", + "```python\n", + "import flaml\n", + "# prepare your data in pandas-on-spark format as we previously mentioned\n", + "\n", + "automl = flaml.AutoML()\n", + "settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"estimator_list\": [\"lgbm_spark\"], # this setting is optional\n", + " \"task\": \"regression\",\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=psdf,\n", + " label=label,\n", + " **settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/automl_bankrupt_synapseml.ipynb)\n", + "\n", + "## Parallel Spark Jobs\n", + "You can activate Spark as the parallel backend during parallel tuning in both [AutoML](/docs/Use-Cases/Task-Oriented-AutoML#parallel-tuning) and [Hyperparameter Tuning](/docs/Use-Cases/Tune-User-Defined-Function#parallel-tuning), by setting the `use_spark` to `true`. FLAML will dispatch your job to the distributed Spark backend using [`joblib-spark`](https://github.com/joblib/joblib-spark).\n", + "\n", + "Please note that you should not set `use_spark` to `true` when applying AutoML and Tuning for Spark Data. This is because only SparkML models will be used for Spark Data in AutoML and Tuning. As SparkML models run in parallel, there is no need to distribute them with `use_spark` again.\n", + "\n", + "All the Spark-related arguments are stated below. These arguments are available in both Hyperparameter Tuning and AutoML:\n", + "\n", + "\n", + "- `use_spark`: boolean, default=False | Whether to use spark to run the training in parallel spark jobs. This can be used to accelerate training on large models and large datasets, but will incur more overhead in time and thus slow down training in some cases. GPU training is not supported yet when use_spark is True. For Spark clusters, by default, we will launch one trial per executor. However, sometimes we want to launch more trials than the number of executors (e.g., local mode). In this case, we can set the environment variable `FLAML_MAX_CONCURRENT` to override the detected `num_executors`. The final number of concurrent trials will be the minimum of `n_concurrent_trials` and `num_executors`.\n", + "- `n_concurrent_trials`: int, default=1 | The number of concurrent trials. When n_concurrent_trials > 1, FLAML performes parallel tuning.\n", + "- `force_cancel`: boolean, default=False | Whether to forcely cancel Spark jobs if the search time exceeded the time budget. Spark jobs include parallel tuning jobs and Spark-based model training jobs.\n", + "\n", + "An example code snippet for using parallel Spark jobs:\n", + "```python\n", + "import flaml\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"n_concurrent_trials\": 2,\n", + " \"use_spark\": True,\n", + " \"force_cancel\": True, # Activating the force_cancel option can immediately halt Spark jobs once they exceed the allocated time_budget.\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=dataframe,\n", + " label=label,\n", + " **automl_settings,\n", + ")\n", + "```\n", + "\n", + "\n", + "[Link to notebook](https://github.com/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb) | [Open in colab](https://colab.research.google.com/github/microsoft/FLAML/blob/main/notebook/integrate_spark.ipynb)\n", + "\n", + "\n", + "```python\n", + "import flaml\n", + "# for flaml.tune\n", + "with mlflow.start_run(run_name=f\"spark_auto_trials_1686631558\"):\n", + " analysis = flaml.tune.run(\n", + " func_to_tune,\n", + " params,\n", + " metric=\"r2\",\n", + " mode=\"max\",\n", + " mlflow_exp_name=\"test_doc\",\n", + " use_spark=True,\n", + " )\n", + "\n", + "# for flaml.automl\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"use_spark\": True,\n", + " \"mlflow_exp_name\": \"test_doc\",\n", + " \"estimator_list\": [\n", + " \"lgbm\",\n", + " \"rf\",\n", + " \"xgboost\",\n", + " \"extra_tree\",\n", + " \"xgb_limitdepth\",\n", + " ], # catboost does not yet support mlflow autologging\n", + "}\n", + "with mlflow.start_run(run_name=f\"automl_spark_trials_1686631579\"):\n", + " automl_experiment.fit(X_train=train_x, y_train=train_y, **automl_settings)\n", + "```\n", + "\n", + "\n", + "\n", + "### Results\n", + "*Tune Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![Tune Autolog Trials on MLFlow UI](Images/tune_trials.png)\n", + "\n", + "\n", + "*AutoML Autolog Trials on MLFlow UI*\n", + "\n", + "\n", + "![AutoML Autolog Trials on MLFlow UI](Images/automl_trials.png)\n", + "\n", + "\n", + "### Differences Between Auto and Manual Logging\n", + "Autologging is managed by MLFlow, while manual logging is maintained by FLAML.\n", + "\n", + "\n", + "#### Details of Manual Logging\n", + "FLAML logs general artifacts for AutoML tasks. Specifically, we log these artifacts:\n", + "\n", + "**`flaml.tune`**\n", + "\n", + "\n", + "![Manual Log Example for Tuning](Images/manual_log_tune.png)\n", + "\n", + "\n", + "- We create a parent run to log the best metric and the best configuration for the entire tuning process.\n", + "- For each trial, we create a child run to log the metric specific to the tune function and the configuration for that trial.\n", + "\n", + "**`flaml.automl`**\n", + "\n", + "\n", + "![Manual Log Example for AutoML](Images/manual_log_automl.png)\n", + "\n", + "\n", + "- We create a parent run to log the results of the experiment. This includes:\n", + " - The configuration of this model.\n", + " - The `best_validation_loss` produced by this model.\n", + " - The `best_iteration` to identify the point at which this model was found.\n", + "- For each state (a specific learner with different hyperparameters), we record the best trial for this model. This includes:\n", + " - The configuration of the best trial.\n", + " - The `validation_loss` the best trial produces.\n", + " - The `iter_count` to identify how many trials we have conducted for this state.\n", + " - The `pred_time`, which is the time cost of predicting test data for this model.\n", + " - The `wall_clock_time`, which is the time cost of this state.\n", + " - The `sample_size` to show how much data we sampled in this state.\n", + "Note that we also added these information to autolog AutoML run.\n", + "\n", + "\n", + "#### Details of Autologging\n", + "Autolog artifacts typically include model parameters, model files, and runtime metrics like the following:\n", + "\n", + "\n", + "![Autolog Example](Images/autolog_example.png)\n", + "\n", + "\n", + "Artifacts can differ among various machine learning libraries. More detailed information can be found [here](https://mlflow.org/docs/latest/tracking.html#automatic-logging).\n", + "\n", + "\n", + "\n", + "\n", + "## Plot Experiment Result\n", + "The `flaml.visualization` module provides utility functions for plotting the optimization process using [plotly](https://plotly.com/python/). Leveraging `plotly`, users can interactively explore experiment results. To use these plotting functions, simply provide your optimized `flaml.AutoML` or `flaml.tune.tune.ExperimentAnalysis` object as input. Optional parameters can be added using keyword arguments.\n", + "\n", + "Avaliable plotting functions:\n", + "- `plot_optimization_history`: Plot optimization history of all trials in the experiment.\n", + "- `plot_feature_importance`: Plot importance for each feature in the dataset.\n", + "- `plot_parallel_coordinate`: Plot the high-dimensional parameter relationships in the experiment.\n", + "- `plot_contour`: Plot the parameter relationship as contour plot in the experiment.\n", + "- `plot_edf`: Plot the objective value EDF (empirical distribution function) of the experiment.\n", + "- `plot_timeline`: Plot the timeline of the experiment.\n", + "- `plot_slice`: Plot the parameter relationship as slice plot in a study.\n", + "\n", + "### Figure Examples\n", + "![Plot Examples](Images/plot_samples.png)\n", + "\n", + "Check out our example [notebook](../../notebook/trident/automl_plot.ipynb) for a preview of all interactive plots.\n", + "\n", + "\n", + "\n", + "\u001b[32m*************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mProduct_Manager\u001b[0m (to chat_manager):\n", + "\n", + "To use Spark for parallel training in FLAML, you can follow these steps:\n", + "\n", + "1. Prepare your data in the required format. FLAML only consumes Spark data for Spark estimators. You can use the `to_pandas_on_spark` function from the `flaml.automl.spark.utils` module to convert your data into a pandas-on-spark dataframe. Here's an example:\n", + "\n", + "```python\n", + "import pandas as pd\n", + "from flaml.automl.spark.utils import to_pandas_on_spark\n", + "\n", + "# Create a dictionary\n", + "data = {\n", + " \"Square_Feet\": [800, 1200, 1800, 1500, 850],\n", + " \"Age_Years\": [20, 15, 10, 7, 25],\n", + " \"Price\": [100000, 200000, 300000, 240000, 120000]\n", + "}\n", + "\n", + "# Create a pandas DataFrame\n", + "dataframe = pd.DataFrame(data)\n", + "label = \"Price\"\n", + "\n", + "# Convert to pandas-on-spark dataframe\n", + "psdf = to_pandas_on_spark(dataframe)\n", + "```\n", + "\n", + "2. Use the Spark ML estimators in FLAML. FLAML integrates estimators based on Spark ML models. You can include the models you want to try in the `estimator_list` argument when creating an instance of `flaml.AutoML`. Here's an example:\n", + "\n", + "```python\n", + "import flaml\n", + "\n", + "automl = flaml.AutoML()\n", + "settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"estimator_list\": [\"lgbm_spark\"], # Optional: specify the Spark ML estimator\n", + " \"task\": \"regression\"\n", + "}\n", + "\n", + "automl.fit(\n", + " dataframe=psdf,\n", + " label=label,\n", + " **settings\n", + ")\n", + "```\n", + "\n", + "3. Activate Spark as the parallel backend. You can set the `use_spark` parameter to `True` to activate Spark as the parallel backend during parallel tuning. FLAML will dispatch your job to the distributed Spark backend using `joblib-spark`. Here's an example:\n", + "\n", + "```python\n", + "import flaml\n", + "\n", + "automl_experiment = flaml.AutoML()\n", + "automl_settings = {\n", + " \"time_budget\": 30,\n", + " \"metric\": \"r2\",\n", + " \"task\": \"regression\",\n", + " \"n_concurrent_trials\": 2,\n", + " \"use_spark\": True,\n", + " \"force_cancel\": True # Optional: force cancel Spark jobs if time budget is exceeded\n", + "}\n", + "\n", + "automl_experiment.fit(\n", + " dataframe=dataframe,\n", + " label=label,\n", + " **automl_settings\n", + ")\n", + "```\n", + "\n", + "These are the steps to use Spark for parallel training in FLAML. Let me know if you need any further assistance!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Reviewer\u001b[0m (to chat_manager):\n", + "\n", + "Great! You now have the steps to use Spark for parallel training in FLAML. If you have any more questions, feel free to ask.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mBoss\u001b[0m (to chat_manager):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSenior_Python_Engineer\u001b[0m (to chat_manager):\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n" + ] + } + ], + "source": [ + "call_rag_chat()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "flaml", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 45677e3e085335cc3acadbf98df4847b98a2cc2f Mon Sep 17 00:00:00 2001 From: Ayush Kumar Pandit <31253617+Ayushpanditmoto@users.noreply.github.com> Date: Wed, 18 Oct 2023 05:21:24 +0530 Subject: [PATCH 066/151] docs: added virtual environment setup process (#249) * docs: added virtual environment setup process * Update website/docs/Installation.md --------- Co-authored-by: Li Jiang Co-authored-by: Chi Wang --- website/docs/Installation.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/website/docs/Installation.md b/website/docs/Installation.md index 8310e594934..9860c83b1a3 100644 --- a/website/docs/Installation.md +++ b/website/docs/Installation.md @@ -1,5 +1,14 @@ # Installation +## Setup Virtual Environment + +When not using a docker container, we recommend using a virtual environment to install AutoGen. This will ensure that the dependencies for AutoGen are isolated from the rest of your system. + +```bash +python3 -m venv autogen +source autogen/bin/activate +``` + ## Python AutoGen requires **Python version >= 3.8**. It can be installed from pip: From 47df9d53be9ba28da460c7344e3c8a37bdbbc24b Mon Sep 17 00:00:00 2001 From: Maxim Saplin Date: Wed, 18 Oct 2023 05:43:01 +0300 Subject: [PATCH 067/151] Update Getting-Started.md (#275) Co-authored-by: Li Jiang Co-authored-by: Qingyun Wu --- website/docs/Getting-Started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index 131985f0229..365775435dc 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -19,7 +19,7 @@ AutoGen is powered by collaborative [research studies](/docs/Research) from Micr ### Quickstart Install from pip: `pip install pyautogen`. Find more options in [Installation](/docs/Installation). -For [code execution](https://microsoft.github.io/autogen/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. +For [code execution](/docs/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. #### Multi-Agent Conversation Framework Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools and human. From 9e876abf235532e944a18637b10e23a66ca4bcf0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 12:47:21 -0400 Subject: [PATCH 068/151] Bump @babel/traverse from 7.20.1 to 7.23.2 in /website (#283) Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.20.1 to 7.23.2. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- website/yarn.lock | 133 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 119 insertions(+), 14 deletions(-) diff --git a/website/yarn.lock b/website/yarn.lock index 97a133bb25a..53ef22fb2c8 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -145,6 +145,14 @@ dependencies: "@babel/highlight" "^7.18.6" +"@babel/code-frame@^7.22.13": + version "7.22.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" + integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== + dependencies: + "@babel/highlight" "^7.22.13" + chalk "^2.4.2" + "@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.0", "@babel/compat-data@^7.20.1": version "7.20.1" resolved "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.20.1.tgz#f2e6ef7790d8c8dbf03d379502dcc246dcce0b30" @@ -193,7 +201,7 @@ json5 "^2.2.1" semver "^6.3.0" -"@babel/generator@^7.12.15", "@babel/generator@^7.12.5", "@babel/generator@^7.20.1", "@babel/generator@^7.20.2": +"@babel/generator@^7.12.15", "@babel/generator@^7.12.5", "@babel/generator@^7.20.2": version "7.20.2" resolved "https://registry.npmmirror.com/@babel/generator/-/generator-7.20.2.tgz#c2e89e22613a039285c1e7b749e2cd0b30b9a481" integrity sha512-SD75PMIK6i9H8G/tfGvB4KKl4Nw6Ssos9nGgYwxbgyTP0iX/Z55DveoH86rmUB/YHTQQ+ZC0F7xxaY8l2OF44Q== @@ -202,6 +210,16 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" +"@babel/generator@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" + integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g== + dependencies: + "@babel/types" "^7.23.0" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.18.6": version "7.18.6" resolved "https://registry.npmmirror.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" @@ -265,6 +283,11 @@ resolved "https://registry.npmmirror.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== +"@babel/helper-environment-visitor@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== + "@babel/helper-explode-assignable-expression@^7.18.6": version "7.18.6" resolved "https://registry.npmmirror.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" @@ -280,6 +303,14 @@ "@babel/template" "^7.18.10" "@babel/types" "^7.19.0" +"@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== + dependencies: + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" + "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" resolved "https://registry.npmmirror.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" @@ -287,6 +318,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-member-expression-to-functions@^7.18.9": version "7.18.9" resolved "https://registry.npmmirror.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" @@ -374,16 +412,33 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-string-parser@^7.19.4": version "7.19.4" resolved "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" resolved "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + "@babel/helper-validator-option@^7.18.6": version "7.18.6" resolved "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" @@ -417,11 +472,25 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.12.16", "@babel/parser@^7.12.7", "@babel/parser@^7.18.10", "@babel/parser@^7.20.1", "@babel/parser@^7.20.2": +"@babel/highlight@^7.22.13": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" + integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.12.16", "@babel/parser@^7.12.7", "@babel/parser@^7.18.10", "@babel/parser@^7.20.2": version "7.20.2" resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.2.tgz#9aeb9b92f64412b5f81064d46f6a1ac0881337f4" integrity sha512-afk318kh2uKbo7BEj2QtEi8HVCGrwHUffrYDy7dgVcSa2j9lY3LDjPzcyGdpX7xgm35aWqvciZJ4WKmdF/SxYg== +"@babel/parser@^7.22.15", "@babel/parser@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": version "7.18.6" resolved "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" @@ -1150,19 +1219,28 @@ "@babel/parser" "^7.18.10" "@babel/types" "^7.18.10" -"@babel/traverse@^7.12.13", "@babel/traverse@^7.12.9", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1": - version "7.20.1" - resolved "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.20.1.tgz#9b15ccbf882f6d107eeeecf263fbcdd208777ec8" - integrity sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA== +"@babel/template@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" + integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.1" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.20.1" - "@babel/types" "^7.20.0" + "@babel/code-frame" "^7.22.13" + "@babel/parser" "^7.22.15" + "@babel/types" "^7.22.15" + +"@babel/traverse@^7.12.13", "@babel/traverse@^7.12.9", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" + integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.0" + "@babel/types" "^7.23.0" debug "^4.1.0" globals "^11.1.0" @@ -1175,6 +1253,15 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" + integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" + "@docsearch/css@3.3.0": version "3.3.0" resolved "https://registry.npmmirror.com/@docsearch/css/-/css-3.3.0.tgz#d698e48302d12240d7c2f7452ccb2d2239a8cd80" @@ -1648,6 +1735,11 @@ resolved "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + "@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" @@ -1666,6 +1758,11 @@ resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== +"@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + "@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" resolved "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" @@ -1674,6 +1771,14 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@jridgewell/trace-mapping@^0.3.17": + version "0.3.20" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" + integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@leichtgewicht/ip-codec@^2.0.1": version "2.0.4" resolved "https://registry.npmmirror.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" From bed85a332fc319244cff35022a1faaed1b8d8c95 Mon Sep 17 00:00:00 2001 From: Li Jiang Date: Thu, 19 Oct 2023 04:26:42 +0800 Subject: [PATCH 069/151] Add a blog for RAG agents (#284) * Init blog * Update blog * Add more contents * Restore notebook --- .../img/autogen-rag.gif | Bin 0 -> 1332865 bytes .../img/retrievechat-arch.png | Bin 0 -> 253150 bytes .../blog/2023-10-18-RetrieveChat/index.mdx | 469 ++++++++++++++++++ website/blog/authors.yml | 6 + 4 files changed, 475 insertions(+) create mode 100644 website/blog/2023-10-18-RetrieveChat/img/autogen-rag.gif create mode 100644 website/blog/2023-10-18-RetrieveChat/img/retrievechat-arch.png create mode 100644 website/blog/2023-10-18-RetrieveChat/index.mdx diff --git a/website/blog/2023-10-18-RetrieveChat/img/autogen-rag.gif b/website/blog/2023-10-18-RetrieveChat/img/autogen-rag.gif new file mode 100644 index 0000000000000000000000000000000000000000..a04c7308d6a24e6de73b4409aa0a634e2f1f7032 GIT binary patch literal 1332865 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
9AWbvY0Ch5C?bBK( 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�t-)fHMDfi6`{^vUrubIE=rzYYMvnBUas7oZi}a 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

e_G_?!pwP#Fyt0KD- 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

DRBH#0Y-<`T6fp@*lwelmKwR0+TSXKqVAhkiiBW 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

    @S&cs1W~bsuaoLz8ub;}}&Yuh{f$`OjCf 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

    Os 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

    gu56yi+UqbIy#ZD+DcWzzk<*5SW0`6|YYej>C?| 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�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

    82u35HY;CsUEmf`$L(`pg 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