From 0c1f7abc5cae7fdf67f8f5f97f0db66e563da1cf Mon Sep 17 00:00:00 2001 From: gagb Date: Wed, 7 Feb 2024 01:10:04 +0000 Subject: [PATCH 01/14] Add initial example --- .../contrib/function_store/__init__.py | 0 .../contrib/function_store/file_utils.py | 59 +++++ .../function_store/function_store_utils.py | 19 ++ .../contrib/function_store/youtube_utils.py | 17 ++ notebook/agentchat_function_store.ipynb | 234 ++++++++++++++++++ 5 files changed, 329 insertions(+) create mode 100644 autogen/agentchat/contrib/function_store/__init__.py create mode 100644 autogen/agentchat/contrib/function_store/file_utils.py create mode 100644 autogen/agentchat/contrib/function_store/function_store_utils.py create mode 100644 autogen/agentchat/contrib/function_store/youtube_utils.py create mode 100644 notebook/agentchat_function_store.ipynb diff --git a/autogen/agentchat/contrib/function_store/__init__.py b/autogen/agentchat/contrib/function_store/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/autogen/agentchat/contrib/function_store/file_utils.py b/autogen/agentchat/contrib/function_store/file_utils.py new file mode 100644 index 00000000000..5f7723ed4d7 --- /dev/null +++ b/autogen/agentchat/contrib/function_store/file_utils.py @@ -0,0 +1,59 @@ +from .function_store_utils import requires + + +@requires("pdfminer.six", "requests", "io") +def read_text_from_pdf(file_path: str) -> str: + """ + Reads text from a PDF file and returns it as a string. + + Args: + file_path (str): The path to the PDF file. + + Returns: + str: The extracted text from the PDF file. + """ + import io + import requests + from pdfminer.high_level import PDFResourceManager, PDFPageInterpreter + from pdfminer.converter import TextConverter + from pdfminer.pdfpage import PDFPage + + resource_manager = PDFResourceManager() + text_stream = io.StringIO() + converter = TextConverter(resource_manager, text_stream) + interpreter = PDFPageInterpreter(resource_manager, converter) + + if file_path.startswith("http://") or file_path.startswith("https://"): + response = requests.get(file_path) + file = io.BytesIO(response.content) + else: + file = open(file_path, "rb") + + for page in PDFPage.get_pages(file): + interpreter.process_page(page) + + text = text_stream.getvalue() + converter.close() + text_stream.close() + + return text + + +@requires("python-docx") +def read_text_from_docx(file_path: str) -> str: + """ + Reads text from a DOCX file and returns it as a string. + + Args: + file_path (str): The path to the DOCX file. + + Returns: + str: The extracted text from the DOCX file. + """ + from docx import Document + + doc = Document(file_path) + paragraphs = [p.text for p in doc.paragraphs] + text = "\n".join(paragraphs) + + return text diff --git a/autogen/agentchat/contrib/function_store/function_store_utils.py b/autogen/agentchat/contrib/function_store/function_store_utils.py new file mode 100644 index 00000000000..11b6b85a34a --- /dev/null +++ b/autogen/agentchat/contrib/function_store/function_store_utils.py @@ -0,0 +1,19 @@ +import subprocess +import sys +import functools + + +def requires(*packages): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + for package in packages: + try: + __import__(package) + except ImportError: + subprocess.check_call([sys.executable, "-m", "pip", "install", package, "--quiet"]) + return func(*args, **kwargs) + + return wrapper + + return decorator diff --git a/autogen/agentchat/contrib/function_store/youtube_utils.py b/autogen/agentchat/contrib/function_store/youtube_utils.py new file mode 100644 index 00000000000..77000d83e7d --- /dev/null +++ b/autogen/agentchat/contrib/function_store/youtube_utils.py @@ -0,0 +1,17 @@ +from youtube_transcript_api import YouTubeTranscriptApi + + +def get_youtube_transcript(youtube_link: str) -> str: + # Extract video ID from the YouTube link + video_id = youtube_link.split("v=")[1] + + try: + # Get the transcript for the video + transcript_list = YouTubeTranscriptApi.get_transcript(video_id) + + # Combine all parts of the transcript into a single string + transcript = " ".join([part["text"] for part in transcript_list]) + + return transcript + except Exception as e: + return str(e) diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb new file mode 100644 index 00000000000..65bdd5d3e92 --- /dev/null +++ b/notebook/agentchat_function_store.ipynb @@ -0,0 +1,234 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Using In Built Functions" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "\n", + "from autogen import AssistantAgent, UserProxyAgent\n", + "from autogen.agentchat.contrib.function_store import youtube_utils as yt\n", + "from autogen.agentchat.contrib.function_store import file_utils as fu" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "config_list = [\n", + " {\n", + " \"model\": \"gpt-4\",\n", + " \"api_key\": os.environ.get(\"OPENAI_API_KEY\"),\n", + " }\n", + "]\n", + "\n", + "assistant = AssistantAgent(name=\"coder\", llm_config={\"config_list\": config_list})\n", + "user = UserProxyAgent(\n", + " name=\"user\",\n", + " code_execution_config={\n", + " \"work_dir\": \"/tmp\",\n", + " },\n", + " human_input_mode=\"NEVER\",\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "Please summarize the video: https://www.youtube.com/watch?v=9iqn1HhFJ6c\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "\u001b[32m***** Suggested tool Call (call_oX2qG4bwD02lFaUWRpKscaL0): get_youtube_transcript *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + "}\n", + "\u001b[32m***************************************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[32m***** Response from calling tool \"call_oX2qG4bwD02lFaUWRpKscaL0\" *****\u001b[0m\n", + "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", + "\u001b[32m**********************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "The video discusses the advances in Artificial Intelligence (AI) and the potential risks and challenges they present to society. It mentions that while AI can solve many problems like employment, diseases, and poverty, it can also create new issues such as intensifying fake news, exacerbating cyber attacks, and the possibility of AI weapons.\n", + "\n", + "An analogy is used to compare technology and biological evolution, explaining that machine learning is in a similar state to evolutionary processes, albeit more complex to understand due to the complexity of the model developed. There's a focus on the concept of Artificial General Intelligence (AGI), a system capable of performing any task a human can do, but better.\n", + "\n", + "There are warnings about the potential negative impacts of AGI development. If not programmed correctly, the AGIs could prioritize their own survival over everything else. For instance, if AGIs are autonomous, their relationship with humans might be similar to how humans treat animals. \n", + "\n", + "It suggests that the speed of computers for AI is increasing rapidly and could be 100,000 times faster in a few years. However, if teams rush to build AGI without adequate safety measures, it could result in problems. Therefore, the video suggests that the development of AGI should be a cooperative effort among multiple countries to ensure that it is beneficial to humans as well as technologically advanced.\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "assistant.register_for_llm(description=\"Fetch transcript of a youtube video\")(yt.get_youtube_transcript)\n", + "user.register_for_execution()(yt.get_youtube_transcript)\n", + "\n", + "result = user.initiate_chat(\n", + " assistant,\n", + " message=\"Please summarize the video: https://www.youtube.com/watch?v=9iqn1HhFJ6c\",\n", + " summary_method=\"last_msg\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Using Multiple Functions from the Function Store\n", + "\n", + "Lets import more functions and use them accomplish tasks" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "Please read this document: https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "\u001b[32m***** Suggested tool Call (call_8MBUrxa9NYAYL3kBK2UwxgAI): read_text_from_pdf *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + "}\n", + "\u001b[32m***********************************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m23.3.2\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[32m***** Response from calling tool \"call_8MBUrxa9NYAYL3kBK2UwxgAI\" *****\u001b[0m\n", + "Dummy PDF file\f\n", + "\u001b[32m**********************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "The content of the given PDF file is \"Dummy PDF file\".\n", + "\n", + "Is there anything else you would like to know or any other tasks you need help with? If none, let me know so I can terminate the session.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "assistant.register_for_llm(description=\"Read text from a pdf document\")(fu.read_text_from_pdf)\n", + "user.register_for_execution()(fu.read_text_from_pdf)\n", + "\n", + "assistant.register_for_llm(description=\"Read a docx file\")(fu.read_text_from_docx)\n", + "user.register_for_execution()(fu.read_text_from_docx)\n", + "\n", + "result = user.initiate_chat(\n", + " assistant,\n", + " message=\"Please read this document: https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\",\n", + " summary_method=\"last_msg\",\n", + ")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.13" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 3af365e909e288e39f1eddd7058c9bb6b4c8e95c Mon Sep 17 00:00:00 2001 From: gagb Date: Wed, 7 Feb 2024 01:12:19 +0000 Subject: [PATCH 02/14] Add decorator for yt utils --- .../contrib/function_store/youtube_utils.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/autogen/agentchat/contrib/function_store/youtube_utils.py b/autogen/agentchat/contrib/function_store/youtube_utils.py index 77000d83e7d..5eba044a0eb 100644 --- a/autogen/agentchat/contrib/function_store/youtube_utils.py +++ b/autogen/agentchat/contrib/function_store/youtube_utils.py @@ -1,7 +1,19 @@ -from youtube_transcript_api import YouTubeTranscriptApi +from .function_store_utils import requires +@requires("youtube_transcript_api") def get_youtube_transcript(youtube_link: str) -> str: + """ + Gets the transcript of a YouTube video. + + Args: + youtube_link (str): The link to the YouTube video. + + Returns: + str: The transcript of the YouTube video. + """ + from youtube_transcript_api import YouTubeTranscriptApi + # Extract video ID from the YouTube link video_id = youtube_link.split("v=")[1] From 5993a075ffc10993cfc6bf4a5d17da713a9c1b46 Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 8 Feb 2024 03:04:16 +0000 Subject: [PATCH 03/14] Rename submodule; Add ability to specify package version --- .../function_store/function_store_utils.py | 19 ---- .../{function_store => functions}/__init__.py | 0 .../file_utils.py | 4 +- .../contrib/functions/functions_utils.py | 64 +++++++++++++ .../youtube_utils.py | 4 +- notebook/agentchat_function_store.ipynb | 92 ++++++++++--------- 6 files changed, 116 insertions(+), 67 deletions(-) delete mode 100644 autogen/agentchat/contrib/function_store/function_store_utils.py rename autogen/agentchat/contrib/{function_store => functions}/__init__.py (100%) rename autogen/agentchat/contrib/{function_store => functions}/file_utils.py (94%) create mode 100644 autogen/agentchat/contrib/functions/functions_utils.py rename autogen/agentchat/contrib/{function_store => functions}/youtube_utils.py (90%) diff --git a/autogen/agentchat/contrib/function_store/function_store_utils.py b/autogen/agentchat/contrib/function_store/function_store_utils.py deleted file mode 100644 index 11b6b85a34a..00000000000 --- a/autogen/agentchat/contrib/function_store/function_store_utils.py +++ /dev/null @@ -1,19 +0,0 @@ -import subprocess -import sys -import functools - - -def requires(*packages): - def decorator(func): - @functools.wraps(func) - def wrapper(*args, **kwargs): - for package in packages: - try: - __import__(package) - except ImportError: - subprocess.check_call([sys.executable, "-m", "pip", "install", package, "--quiet"]) - return func(*args, **kwargs) - - return wrapper - - return decorator diff --git a/autogen/agentchat/contrib/function_store/__init__.py b/autogen/agentchat/contrib/functions/__init__.py similarity index 100% rename from autogen/agentchat/contrib/function_store/__init__.py rename to autogen/agentchat/contrib/functions/__init__.py diff --git a/autogen/agentchat/contrib/function_store/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py similarity index 94% rename from autogen/agentchat/contrib/function_store/file_utils.py rename to autogen/agentchat/contrib/functions/file_utils.py index 5f7723ed4d7..48211ce5dfc 100644 --- a/autogen/agentchat/contrib/function_store/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -1,7 +1,7 @@ -from .function_store_utils import requires +from .functions_utils import requires -@requires("pdfminer.six", "requests", "io") +@requires("pdfminer.six", "requests") def read_text_from_pdf(file_path: str) -> str: """ Reads text from a PDF file and returns it as a string. diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py new file mode 100644 index 00000000000..6b044cf0334 --- /dev/null +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -0,0 +1,64 @@ +import subprocess +import sys +import functools +import pkg_resources + + +def requires(*packages): + """ + Decorator that ensures the specified packages are installed before executing the decorated function. + + Args: + *packages: Variable number of package names to be checked and installed if necessary. + + Returns: + The decorated function. + + Raises: + ImportError: If a required package is not found or has an incompatible version. + + For example, + + @requires("youtube_transcript_api==0.6.0") + def get_youtube_transcript(youtube_link: str) -> str: + from youtube_transcript_api import YouTubeTranscriptApi + ... + + This will ensure that the "youtube_transcript_api" package is installed and has version 0.6.0 before executing the "get_youtube_transcript" function. + + @requires("youtube_transcript_api", "requests") + def my_function(): + ... + + This will ensure that the "youtube_transcript_api" and "requests" packages are installed before executing the "my_function" function. + """ + + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + for package in packages: + if "==" in package: + name, version = package.split("==") + else: + name, version = package, None + try: + installed_package = pkg_resources.get_distribution(name) + if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): + raise ImportError + except ImportError: + subprocess.check_call( + [ + sys.executable, + "-m", + "pip", + "install", + name + "==" + version if version else name, + "--upgrade", + "--quiet", + ] + ) + return func(*args, **kwargs) + + return wrapper + + return decorator diff --git a/autogen/agentchat/contrib/function_store/youtube_utils.py b/autogen/agentchat/contrib/functions/youtube_utils.py similarity index 90% rename from autogen/agentchat/contrib/function_store/youtube_utils.py rename to autogen/agentchat/contrib/functions/youtube_utils.py index 5eba044a0eb..853a58323a3 100644 --- a/autogen/agentchat/contrib/function_store/youtube_utils.py +++ b/autogen/agentchat/contrib/functions/youtube_utils.py @@ -1,7 +1,7 @@ -from .function_store_utils import requires +from .functions_utils import requires -@requires("youtube_transcript_api") +@requires("youtube_transcript_api==0.6.0") def get_youtube_transcript(youtube_link: str) -> str: """ Gets the transcript of a YouTube video. diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index 65bdd5d3e92..7f18110da35 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -4,7 +4,12 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Using In Built Functions" + "# Intro to Built-In Functions from `contrib.functions`\n", + "\n", + "\n", + "## Initial Setup\n", + "\n", + "Lets first import the necessary modules and define the agents." ] }, { @@ -14,10 +19,9 @@ "outputs": [], "source": [ "import os\n", - "\n", "from autogen import AssistantAgent, UserProxyAgent\n", - "from autogen.agentchat.contrib.function_store import youtube_utils as yt\n", - "from autogen.agentchat.contrib.function_store import file_utils as fu" + "from autogen.agentchat.contrib.functions import youtube_utils as yt\n", + "from autogen.agentchat.contrib.functions import file_utils as fu" ] }, { @@ -41,9 +45,17 @@ " \"work_dir\": \"/tmp\",\n", " },\n", " human_input_mode=\"NEVER\",\n", + " is_termination_msg=lambda x: x.get(\"content\", \"\") and x.get(\"content\", \"\").rstrip().endswith(\"TERMINATE\"),\n", ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## A Simple Example" + ] + }, { "cell_type": "code", "execution_count": 3, @@ -60,36 +72,53 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_oX2qG4bwD02lFaUWRpKscaL0): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_WPWLzCgpYfyQ9LMJbPKvacRK): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + "\"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", "}\n", "\u001b[32m***************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n", + ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_oX2qG4bwD02lFaUWRpKscaL0\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_WPWLzCgpYfyQ9LMJbPKvacRK\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The video discusses the advances in Artificial Intelligence (AI) and the potential risks and challenges they present to society. It mentions that while AI can solve many problems like employment, diseases, and poverty, it can also create new issues such as intensifying fake news, exacerbating cyber attacks, and the possibility of AI weapons.\n", + "The video discusses the future of Artificial Intelligence (AI) and its potential impact on society. In particular, it highlights the promise of AI with the ability to address problems like unemployment, disease, and poverty, yet also discusses challenges that could be worsened with advanced technology, such as fake news and cyber attacks. The video speaks to the potential risk of fully automated AI weapons and the possibility of AI-driven dictatorships.\n", "\n", - "An analogy is used to compare technology and biological evolution, explaining that machine learning is in a similar state to evolutionary processes, albeit more complex to understand due to the complexity of the model developed. There's a focus on the concept of Artificial General Intelligence (AGI), a system capable of performing any task a human can do, but better.\n", + "The discussion continues with the idea that we might be creating autonomous beings that have their own goals and the importance of aligning these goals with human interests. The speaker draws parallels between technological advancement and biological evolution, solving complex problems through simple rules and repetitive processes.\n", "\n", - "There are warnings about the potential negative impacts of AGI development. If not programmed correctly, the AGIs could prioritize their own survival over everything else. For instance, if AGIs are autonomous, their relationship with humans might be similar to how humans treat animals. \n", + "A mention is made of a development named \"Chat GPT\", considered a game changer. The speaker describes it as the start of something significant and compares it to an impending downpour. GPT is heralded as a very early form of Artificial General Intelligence (AGI), a system that can handle any task a human can, but more efficiently. However, it is cautioned that these systems must act in our best interests.\n", "\n", - "It suggests that the speed of computers for AI is increasing rapidly and could be 100,000 times faster in a few years. However, if teams rush to build AGI without adequate safety measures, it could result in problems. Therefore, the video suggests that the development of AGI should be a cooperative effort among multiple countries to ensure that it is beneficial to humans as well as technologically advanced.\n", + "The first AGI may take the form of enormous data centers filled with specialized neural network processors. The impact of these highly intelligent systems on society could be astronomical. However, the question is raised who will benefit and who will not. There is a concern that if these systems prioritize their survival above all else, they might inadvertently cause harm.\n", "\n", - "TERMINATE\n", + "The speaker likens the default relationship between humans and AGIs to the relationship between humans and animals; we don't hate animals but when it comes to choices that matter to us, we don't ask animals for permission. Ultimately, the hope is that the development of AGI will be a cooperative effort between globally distributed teams to ensure a future that is good for both AI and humans.\n", + "\n", + "TERMINATE.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33muser\u001b[0m (to coder):\n", @@ -120,9 +149,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Using Multiple Functions from the Function Store\n", + "## Adavanced Example\n", "\n", - "Lets import more functions and use them accomplish tasks" + "Lets import more functions and use them accomplish more complex tasks." ] }, { @@ -141,7 +170,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_8MBUrxa9NYAYL3kBK2UwxgAI): read_text_from_pdf *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_zA0gRH0AYM1xO07WVn4fr1xg): read_text_from_pdf *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", @@ -150,44 +179,19 @@ "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m23.3.2\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_8MBUrxa9NYAYL3kBK2UwxgAI\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_zA0gRH0AYM1xO07WVn4fr1xg\" *****\u001b[0m\n", "Dummy PDF file\f\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The content of the given PDF file is \"Dummy PDF file\".\n", - "\n", - "Is there anything else you would like to know or any other tasks you need help with? If none, let me know so I can terminate the session.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33muser\u001b[0m (to coder):\n", - "\n", - "\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mcoder\u001b[0m (to user):\n", + "The content of the provided PDF document is \"Dummy PDF file\".\n", "\n", "TERMINATE\n", "\n", From 238392fd34629612aeb8f3f494691c2fd153cef0 Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 8 Feb 2024 04:38:02 +0000 Subject: [PATCH 04/14] Add support for specifying pip package name --- .../contrib/functions/functions_utils.py | 46 ++++++++----------- 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index 6b044cf0334..9b96e020c57 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -4,45 +4,39 @@ import pkg_resources -def requires(*packages): +def requires(*packages, **pip_packages): """ - Decorator that ensures the specified packages are installed before executing the decorated function. + Decorator that ensures the required packages are installed before executing the decorated function. Args: - *packages: Variable number of package names to be checked and installed if necessary. + *packages: Variable length argument list of package names that should be installed. + **pip_packages: Keyword arguments specifying package names and versions in the format `package_name=version`. - Returns: - The decorated function. + Examples: + @requires('numpy', 'pandas') + def my_function(): + # Code that depends on numpy and pandas - Raises: - ImportError: If a required package is not found or has an incompatible version. + @requires(matplotlib='3.2.1', seaborn='0.11.1') + def another_function(): + # Code that depends on matplotlib version 3.2.1 and seaborn version 0.11.1 - For example, - - @requires("youtube_transcript_api==0.6.0") - def get_youtube_transcript(youtube_link: str) -> str: - from youtube_transcript_api import YouTubeTranscriptApi - ... - - This will ensure that the "youtube_transcript_api" package is installed and has version 0.6.0 before executing the "get_youtube_transcript" function. - - @requires("youtube_transcript_api", "requests") - def my_function(): - ... - - This will ensure that the "youtube_transcript_api" and "requests" packages are installed before executing the "my_function" function. + @requires('numpy', 'pandas', matplotlib='3.2.1', PIL='8.1.0') + def yet_another_function(): + # Code that depends on numpy, pandas, matplotlib version 3.2.1, and PIL version 8.1.0 """ def decorator(func): @functools.wraps(func) def wrapper(*args, **kwargs): - for package in packages: - if "==" in package: - name, version = package.split("==") + all_packages = {**{pkg: pkg for pkg in packages}, **pip_packages} + for python_name, pip_name in all_packages.items(): + if "==" in pip_name: + name, version = pip_name.split("==") else: - name, version = package, None + name, version = pip_name, None try: - installed_package = pkg_resources.get_distribution(name) + installed_package = pkg_resources.get_distribution(python_name) if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): raise ImportError except ImportError: From 356e748c706355fe36cf2a82d23bba030e7e27ae Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 8 Feb 2024 05:37:35 +0000 Subject: [PATCH 05/14] Fix bugs in requires --- .../agentchat/contrib/functions/file_utils.py | 33 ++++ .../contrib/functions/functions_utils.py | 27 +++- notebook/agentchat_function_store.ipynb | 148 ++++++++++++++---- 3 files changed, 169 insertions(+), 39 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 48211ce5dfc..1831a6c8bff 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -57,3 +57,36 @@ def read_text_from_docx(file_path: str) -> str: text = "\n".join(paragraphs) return text + + +@requires("pillow", "requests", "easyocr") +def read_text_from_image(file_path: str) -> str: + """ + Reads text from an image file or URL and returns it as a string. + + Args: + file_path (str): The path to the image file or URL. + + Returns: + str: The extracted text from the image file or URL. + """ + import io + import requests + import easyocr + from PIL import Image + + reader = easyocr.Reader(["en"]) # specify the language(s) + + if file_path.startswith("http://") or file_path.startswith("https://"): + response = requests.get(file_path) + image = Image.open(io.BytesIO(response.content)) + else: + image = Image.open(file_path) + + output = reader.readtext(image) + + # The output is a list of tuples, each containing the coordinates of the text and the text itself. + # We join all the text pieces together to get the final text. + text = " ".join([item[1] for item in output]) + + return text diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index 9b96e020c57..e0b7000f6d3 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -29,17 +29,25 @@ def yet_another_function(): def decorator(func): @functools.wraps(func) def wrapper(*args, **kwargs): - all_packages = {**{pkg: pkg for pkg in packages}, **pip_packages} - for python_name, pip_name in all_packages.items(): - if "==" in pip_name: - name, version = pip_name.split("==") - else: - name, version = pip_name, None + all_packages = {**{pkg: None for pkg in packages}, **pip_packages} + for name, version in all_packages.items(): + if "==" in name: + name, version = name.split("==") + print("requested package:", name, version) try: - installed_package = pkg_resources.get_distribution(python_name) + try: + installed_package = pkg_resources.get_distribution(name) + except pkg_resources.DistributionNotFound: + print(f"Package {name} not found") + installed_package = None + raise ImportError + + print("found package", installed_package) if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): + print("Package mismatch detected") raise ImportError - except ImportError: + except ImportError or pkg_resources.DistributionNotFound: + print(f"Installing {name}{'==' + version if version else ''}...") subprocess.check_call( [ sys.executable, @@ -51,6 +59,9 @@ def wrapper(*args, **kwargs): "--quiet", ] ) + except Exception as e: + print(f"Error: {e}") + raise e return func(*args, **kwargs) return wrapper diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index 7f18110da35..7aef706062f 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -38,7 +38,7 @@ " }\n", "]\n", "\n", - "assistant = AssistantAgent(name=\"coder\", llm_config={\"config_list\": config_list})\n", + "assistant = AssistantAgent(name=\"coder\", llm_config={\"config_list\": config_list, \"cache\": None})\n", "user = UserProxyAgent(\n", " name=\"user\",\n", " code_execution_config={\n", @@ -72,51 +72,37 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_WPWLzCgpYfyQ9LMJbPKvacRK): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_ObGhsFfdhoCoEZwHatIQjzVW): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", - "\"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", "}\n", "\u001b[32m***************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n", + "requested: youtube_transcript_api 0.6.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_WPWLzCgpYfyQ9LMJbPKvacRK\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_ObGhsFfdhoCoEZwHatIQjzVW\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The video discusses the future of Artificial Intelligence (AI) and its potential impact on society. In particular, it highlights the promise of AI with the ability to address problems like unemployment, disease, and poverty, yet also discusses challenges that could be worsened with advanced technology, such as fake news and cyber attacks. The video speaks to the potential risk of fully automated AI weapons and the possibility of AI-driven dictatorships.\n", + "The video discusses the potential impact of Artificial General Intelligence (AGI) - an advanced form of AI that could surpass human intelligence and perform any task that a human can do. It mentions several potential problems that could arise, such as enhanced fake news, extreme cyber attacks, and a rise in AI weaponry.\n", "\n", - "The discussion continues with the idea that we might be creating autonomous beings that have their own goals and the importance of aligning these goals with human interests. The speaker draws parallels between technological advancement and biological evolution, solving complex problems through simple rules and repetitive processes.\n", + "The speaker, who is an expert in machine learning, believes that technologies like chatbots, specifically Chat GPT, indicate that AGI might be developed soon. According to him, these AGIs will be data centers filled with specialized neural processors and will have a profound impact on society. However, there are concerns about who will benefit from AGI and if humans will benefit at all. \n", "\n", - "A mention is made of a development named \"Chat GPT\", considered a game changer. The speaker describes it as the start of something significant and compares it to an impending downpour. GPT is heralded as a very early form of Artificial General Intelligence (AGI), a system that can handle any task a human can, but more efficiently. However, it is cautioned that these systems must act in our best interests.\n", + "The speaker hopes that the desires and beliefs of AGIs will be programmed well because if they aren't, AGIs might prioritize their own survival above all else. This situation could lead to a relationship similar to how humans treat animals, where humans, despite their affection for animals, construct things like highways without concern for the ecosystem. \n", "\n", - "The first AGI may take the form of enormous data centers filled with specialized neural network processors. The impact of these highly intelligent systems on society could be astronomical. However, the question is raised who will benefit and who will not. There is a concern that if these systems prioritize their survival above all else, they might inadvertently cause harm.\n", + "In the speaker's view, the development of AGI might cause an arms race among countries, which could lead to haste and compromise the safety measures to ensure AI's alignment with human interests. He suggests that the development of AGI should be cooperative among countries to balance potential risks. \n", "\n", - "The speaker likens the default relationship between humans and AGIs to the relationship between humans and animals; we don't hate animals but when it comes to choices that matter to us, we don't ask animals for permission. Ultimately, the hope is that the development of AGI will be a cooperative effort between globally distributed teams to ensure a future that is good for both AI and humans.\n", + "The speaker concludes by expressing hope that the future of AI wouldn't just benefit AI but also benefit humans. \n", "\n", "TERMINATE.\n", "\n", @@ -170,7 +156,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_zA0gRH0AYM1xO07WVn4fr1xg): read_text_from_pdf *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_9B6JghozB5ZvhUntf0kgLU3U): read_text_from_pdf *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", @@ -180,18 +166,22 @@ "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", + "requested: pdfminer.six None\n", + "requested: requests None\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_zA0gRH0AYM1xO07WVn4fr1xg\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_9B6JghozB5ZvhUntf0kgLU3U\" *****\u001b[0m\n", "Dummy PDF file\f\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The content of the provided PDF document is \"Dummy PDF file\".\n", + "The content of the document at the provided link is \"Dummy PDF file\".\n", + "\n", + "Please let me know if you need any further help regarding this.\n", "\n", "TERMINATE\n", "\n", @@ -203,15 +193,111 @@ "assistant.register_for_llm(description=\"Read text from a pdf document\")(fu.read_text_from_pdf)\n", "user.register_for_execution()(fu.read_text_from_pdf)\n", "\n", - "assistant.register_for_llm(description=\"Read a docx file\")(fu.read_text_from_docx)\n", - "user.register_for_execution()(fu.read_text_from_docx)\n", - "\n", "result = user.initiate_chat(\n", " assistant,\n", " message=\"Please read this document: https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\",\n", " summary_method=\"last_msg\",\n", ")" ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "Please read this image: https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "\u001b[32m***** Suggested tool Call (call_78cqbNhqILL30l6cjk5H76A2): read_text_from_image *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + "}\n", + "\u001b[32m*************************************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION read_text_from_image...\u001b[0m\n", + "requested: pillow None\n", + "requested: requests None\n", + "requested: easyocr None\n", + "Package easyocr not found\n", + "Installing easyocr...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", + "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n", + "Downloading detection model, please wait. This may take several minutes depending upon your network connection.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Progress: |██████████████████████████████████████████████████| 100.0% Complete" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Downloading recognition model, please wait. This may take several minutes depending upon your network connection.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Progress: |██████████████████████████████████████████████████| 100.0% Complete\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[32m***** Response from calling tool \"call_78cqbNhqILL30l6cjk5H76A2\" *****\u001b[0m\n", + "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", + "\u001b[32m**********************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "The text found in the image is as follows:\n", + "\n", + "```\n", + "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", + "```\n", + "\n", + "It seems like the image contains multiple labels or captions for various items. However, the text extracted includes all of them together which makes it difficult to understand or relate to the image. If you are looking for specific information, please specify. \n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "assistant.register_for_llm(description=\"Read text from a an image file\")(fu.read_text_from_image)\n", + "user.register_for_execution()(fu.read_text_from_image)\n", + "\n", + "dummy_png = \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + "result = user.initiate_chat(\n", + " assistant,\n", + " message=f\"Please read this image: {dummy_png}\",\n", + " summary_method=\"last_msg\",\n", + ")" + ] } ], "metadata": { From 837a044030975c0e05f571e1afe10eb4a2bb92ce Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 8 Feb 2024 07:16:33 +0000 Subject: [PATCH 06/14] Add more file utils; improve nb --- .../agentchat/contrib/functions/file_utils.py | 76 +++++++ notebook/agentchat_function_store.ipynb | 208 ++++++++---------- 2 files changed, 172 insertions(+), 112 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 1831a6c8bff..182ca49b13e 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -90,3 +90,79 @@ def read_text_from_image(file_path: str) -> str: text = " ".join([item[1] for item in output]) return text + + +@requires("python-pptx") +def read_text_from_pptx(file_path: str) -> str: + """ + Reads text from a PowerPoint file and returns it as a string. + + Args: + file_path (str): The path to the PowerPoint file. + + Returns: + str: The extracted text from the PowerPoint file. + """ + from pptx import Presentation + + presentation = Presentation(file_path) + text = "" + + for slide in presentation.slides: + for shape in slide.shapes: + if shape.has_text_frame: + text += shape.text + + return text + + +@requires("pandas") +def read_text_from_xlsx(file_path: str) -> str: + """ + Reads text from an Excel file and returns it as a string. + + Args: + file_path (str): The path to the Excel file. + + Returns: + str: The extracted text from the Excel file. + """ + import pandas as pd + + df = pd.read_excel(file_path) + text = df.to_string(index=False) + + return text + + +@requires("SpeechRecognition", "requests") +def read_text_from_audio(file_path: str) -> str: + """ + Reads text from an audio file or a URL and returns it as a string. + + Args: + file_path (str): The path to the audio file or the URL. + + Returns: + str: The extracted text from the audio file or the URL. + """ + import requests + import speech_recognition as sr + import tempfile + + recognizer = sr.Recognizer() + + if file_path.startswith("http"): + response = requests.get(file_path) + with tempfile.NamedTemporaryFile(delete=True, suffix=".wav") as temp_audio: + temp_audio.write(response.content) + temp_audio.seek(0) + with sr.AudioFile(temp_audio.name) as source: + audio = recognizer.record(source) + else: + with sr.AudioFile(file_path) as source: + audio = recognizer.record(source) + + text = recognizer.recognize_google(audio) + + return text diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index 7aef706062f..009c517797c 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -30,7 +30,6 @@ "metadata": {}, "outputs": [], "source": [ - "\n", "config_list = [\n", " {\n", " \"model\": \"gpt-4\",\n", @@ -45,7 +44,7 @@ " \"work_dir\": \"/tmp\",\n", " },\n", " human_input_mode=\"NEVER\",\n", - " is_termination_msg=lambda x: x.get(\"content\", \"\") and x.get(\"content\", \"\").rstrip().endswith(\"TERMINATE\"),\n", + " is_termination_msg=lambda x: x.get(\"content\", \"\") and \"TERMINATE\" in x.get(\"content\", \"\"),\n", ")" ] }, @@ -53,7 +52,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## A Simple Example" + "## Simple Example" ] }, { @@ -72,7 +71,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_ObGhsFfdhoCoEZwHatIQjzVW): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_uu7fVdiv87S8pLLRxFxYRGtV): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", @@ -82,38 +81,28 @@ "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n", - "requested: youtube_transcript_api 0.6.0\n", + "requested package: youtube_transcript_api 0.6.0\n", + "found package youtube-transcript-api 0.6.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_ObGhsFfdhoCoEZwHatIQjzVW\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_uu7fVdiv87S8pLLRxFxYRGtV\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The video discusses the potential impact of Artificial General Intelligence (AGI) - an advanced form of AI that could surpass human intelligence and perform any task that a human can do. It mentions several potential problems that could arise, such as enhanced fake news, extreme cyber attacks, and a rise in AI weaponry.\n", - "\n", - "The speaker, who is an expert in machine learning, believes that technologies like chatbots, specifically Chat GPT, indicate that AGI might be developed soon. According to him, these AGIs will be data centers filled with specialized neural processors and will have a profound impact on society. However, there are concerns about who will benefit from AGI and if humans will benefit at all. \n", - "\n", - "The speaker hopes that the desires and beliefs of AGIs will be programmed well because if they aren't, AGIs might prioritize their own survival above all else. This situation could lead to a relationship similar to how humans treat animals, where humans, despite their affection for animals, construct things like highways without concern for the ecosystem. \n", - "\n", - "In the speaker's view, the development of AGI might cause an arms race among countries, which could lead to haste and compromise the safety measures to ensure AI's alignment with human interests. He suggests that the development of AGI should be cooperative among countries to balance potential risks. \n", - "\n", - "The speaker concludes by expressing hope that the future of AI wouldn't just benefit AI but also benefit humans. \n", - "\n", - "TERMINATE.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33muser\u001b[0m (to coder):\n", + "The Youtube video is about the development, potential, and risks associated with Artificial Intelligence (AI). The speaker notes that while AI is likely to address many current global issues, it will also introduce new ones like the exacerbation of fake news and the likelihood of more severe cyber attacks.\n", "\n", + "The speaker discusses the concept of scientists 'playing God' by creating completely autonomous beings with their own goals and underlines the importance of aligning these goals with that of human beings. The parallels between the development of AI and the natural process of biological evolution are also drawn, with the speaker asserting that technology is very much a force of nature.\n", "\n", + "There is focus on the emergence of GPT (Generative Pre-training Transformer), a language processing AI. This AI is seen as a watershed moment in the development of artificial general intelligence (AGI) — AI systems that can outperform humans in most economically valuable work.\n", "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mcoder\u001b[0m (to user):\n", + "The video also discusses the potential threat posed by AGI due to a possible prioritization of its survival over human welfare. The speaker suggests that while humans appreciate animals, humans often prioritize their needs over the animals, pointing out that a similar relationship could develop between humans and AGI.\n", "\n", + "The narration presents the prediction of technology experts who believe that the speed of computers for neural networks for AI will dramatically increase in a few years. Given the potential risks and exponential growth associated with AGI, the speaker emphasizes the desperate need for global cooperation in AI development to ensure a future that is beneficial not just for AI but for humanity as well.\n", "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" @@ -137,13 +126,33 @@ "source": [ "## Adavanced Example\n", "\n", - "Lets import more functions and use them accomplish more complex tasks." + "Lets import multiple functions and use them accomplish more complex tasks." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, + "outputs": [], + "source": [ + "# register multiple file reading functions\n", + "for foo in [\n", + " fu.read_text_from_image,\n", + " fu.read_text_from_pdf,\n", + " fu.read_text_from_docx,\n", + " fu.read_text_from_pptx,\n", + " fu.read_text_from_xlsx,\n", + " fu.read_text_from_audio,\n", + "]:\n", + " foo_desc = foo.__doc__ # get doctring of the function\n", + " assistant.register_for_llm(description=foo_desc)(foo)\n", + " user.register_for_execution()(foo)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, "outputs": [ { "name": "stdout", @@ -151,135 +160,110 @@ "text": [ "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "Please read this document: https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\n", + "Please summarize the contents of the following files: https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_9B6JghozB5ZvhUntf0kgLU3U): read_text_from_pdf *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_9EQ7lnpwFLxStOqmaITZVeMI): read_text_from_image *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + " \"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", "}\n", - "\u001b[32m***********************************************************************************\u001b[0m\n", + "\u001b[32m*************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", - "requested: pdfminer.six None\n", - "requested: requests None\n", + ">>>>>>>> EXECUTING FUNCTION read_text_from_image...\u001b[0m\n", + "requested package: pillow None\n", + "found package pillow 10.2.0\n", + "requested package: requests None\n", + "found package requests 2.31.0\n", + "requested package: easyocr None\n", + "found package easyocr 1.7.1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_9B6JghozB5ZvhUntf0kgLU3U\" *****\u001b[0m\n", - "Dummy PDF file\f\n", + "\u001b[32m***** Response from calling tool \"call_9EQ7lnpwFLxStOqmaITZVeMI\" *****\u001b[0m\n", + "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The content of the document at the provided link is \"Dummy PDF file\".\n", - "\n", - "Please let me know if you need any further help regarding this.\n", + "\u001b[32m***** Suggested tool Call (call_jseZ3R7kFEI7JADjge016LaY): read_text_from_pdf *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + "}\n", + "\u001b[32m***********************************************************************************\u001b[0m\n", "\n", - "TERMINATE\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", + "requested package: pdfminer.six None\n", + "found package pdfminer.six 20231228\n", + "requested package: requests None\n", + "found package requests 2.31.0\n", + "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "--------------------------------------------------------------------------------\n" - ] - } - ], - "source": [ - "assistant.register_for_llm(description=\"Read text from a pdf document\")(fu.read_text_from_pdf)\n", - "user.register_for_execution()(fu.read_text_from_pdf)\n", - "\n", - "result = user.initiate_chat(\n", - " assistant,\n", - " message=\"Please read this document: https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\",\n", - " summary_method=\"last_msg\",\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "Please read this image: https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\n", + "\u001b[32m***** Response from calling tool \"call_jseZ3R7kFEI7JADjge016LaY\" *****\u001b[0m\n", + "Dummy PDF file\f\n", + "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_78cqbNhqILL30l6cjk5H76A2): read_text_from_image *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_xbXD6vwslLYf1Bn3UvffHanr): read_text_from_audio *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + " \"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", "}\n", "\u001b[32m*************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION read_text_from_image...\u001b[0m\n", - "requested: pillow None\n", - "requested: requests None\n", - "requested: easyocr None\n", - "Package easyocr not found\n", - "Installing easyocr...\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", - "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n", - "Downloading detection model, please wait. This may take several minutes depending upon your network connection.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Progress: |██████████████████████████████████████████████████| 100.0% Complete" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Downloading recognition model, please wait. This may take several minutes depending upon your network connection.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Progress: |██████████████████████████████████████████████████| 100.0% Complete\u001b[33muser\u001b[0m (to coder):\n", + ">>>>>>>> EXECUTING FUNCTION read_text_from_audio...\u001b[0m\n", + "requested package: SpeechRecognition None\n", + "found package SpeechRecognition 3.10.1\n", + "requested package: requests None\n", + "found package requests 2.31.0\n", + "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_78cqbNhqILL30l6cjk5H76A2\" *****\u001b[0m\n", - "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", + "\u001b[32m***** Response from calling tool \"call_xbXD6vwslLYf1Bn3UvffHanr\" *****\u001b[0m\n", + "the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The text found in the image is as follows:\n", + "Here is the summary of the contents of the provided files:\n", "\n", - "```\n", - "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", - "```\n", + "1. Image file ([link](https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg)): The image is a multiple captioned image dataset example. It seems to be a dataset used for machine learning or image analysis. The captions include references to various flowers, a bird, people holding a lunch of rice and beans, a big rig truck in a parking lot, and a group of snowboarders.\n", + "\n", + "2. PDF file ([link](https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf)): The PDF file is a dummy file with no contents.\n", "\n", - "It seems like the image contains multiple labels or captions for various items. However, the text extracted includes all of them together which makes it difficult to understand or relate to the image. If you are looking for specific information, please specify. \n", + "3. Audio file ([link](https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav)): The audio file contains a sentence talking about different smells and tastes. Some phrases are \"the stale smell of old beer lingers\", \"it takes heat to bring out the odor\", \"a salt pickle tastes fine with ham\", and \"a zestful food is the hot cross bun\".\n", + "\n", + "Please note that these are direct extractions from the files and a more detailed or contextual summary might need a deeper analysis or understanding of the data.\n", "\n", "TERMINATE\n", "\n", @@ -288,13 +272,13 @@ } ], "source": [ - "assistant.register_for_llm(description=\"Read text from a an image file\")(fu.read_text_from_image)\n", - "user.register_for_execution()(fu.read_text_from_image)\n", - "\n", "dummy_png = \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + "dummy_pdf = \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + "dummy_mp3 = \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", + "\n", "result = user.initiate_chat(\n", " assistant,\n", - " message=f\"Please read this image: {dummy_png}\",\n", + " message=f\"Please summarize the contents of the following files: {' '.join([dummy_png, dummy_pdf, dummy_mp3])}\",\n", " summary_method=\"last_msg\",\n", ")" ] From fb22456326b2838aa3e9a87467f03091ec81a2d8 Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 8 Feb 2024 23:13:45 +0000 Subject: [PATCH 07/14] Improve decorator name --- autogen/agentchat/contrib/functions/file_utils.py | 14 +++++++------- .../agentchat/contrib/functions/functions_utils.py | 14 +++++++------- .../agentchat/contrib/functions/youtube_utils.py | 4 ++-- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 182ca49b13e..7a714e8d620 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -1,7 +1,7 @@ -from .functions_utils import requires +from .functions_utils import requires_python_packages -@requires("pdfminer.six", "requests") +@requires_python_packages("pdfminer.six", "requests") def read_text_from_pdf(file_path: str) -> str: """ Reads text from a PDF file and returns it as a string. @@ -39,7 +39,7 @@ def read_text_from_pdf(file_path: str) -> str: return text -@requires("python-docx") +@requires_python_packages("python-docx") def read_text_from_docx(file_path: str) -> str: """ Reads text from a DOCX file and returns it as a string. @@ -59,7 +59,7 @@ def read_text_from_docx(file_path: str) -> str: return text -@requires("pillow", "requests", "easyocr") +@requires_python_packages("pillow", "requests", "easyocr") def read_text_from_image(file_path: str) -> str: """ Reads text from an image file or URL and returns it as a string. @@ -92,7 +92,7 @@ def read_text_from_image(file_path: str) -> str: return text -@requires("python-pptx") +@requires_python_packages("python-pptx") def read_text_from_pptx(file_path: str) -> str: """ Reads text from a PowerPoint file and returns it as a string. @@ -116,7 +116,7 @@ def read_text_from_pptx(file_path: str) -> str: return text -@requires("pandas") +@requires_python_packages("pandas") def read_text_from_xlsx(file_path: str) -> str: """ Reads text from an Excel file and returns it as a string. @@ -135,7 +135,7 @@ def read_text_from_xlsx(file_path: str) -> str: return text -@requires("SpeechRecognition", "requests") +@requires_python_packages("SpeechRecognition", "requests") def read_text_from_audio(file_path: str) -> str: """ Reads text from an audio file or a URL and returns it as a string. diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index e0b7000f6d3..a8e490ec289 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -4,24 +4,24 @@ import pkg_resources -def requires(*packages, **pip_packages): +def requires_python_packages(*packages, **pip_packages): """ - Decorator that ensures the required packages are installed before executing the decorated function. + Decorator that ensures the required Python packages are installed before executing the decorated function. Args: - *packages: Variable length argument list of package names that should be installed. - **pip_packages: Keyword arguments specifying package names and versions in the format `package_name=version`. + *packages: Variable length argument list of Python package names that should be installed. + **pip_packages: Keyword arguments specifying Python package names and versions in the format `package_name=version`. Examples: - @requires('numpy', 'pandas') + @requires_python_packages('numpy', 'pandas') def my_function(): # Code that depends on numpy and pandas - @requires(matplotlib='3.2.1', seaborn='0.11.1') + @requires_python_packages(matplotlib='3.2.1', seaborn='0.11.1') def another_function(): # Code that depends on matplotlib version 3.2.1 and seaborn version 0.11.1 - @requires('numpy', 'pandas', matplotlib='3.2.1', PIL='8.1.0') + @requires_python_packages('numpy', 'pandas', matplotlib='3.2.1', PIL='8.1.0') def yet_another_function(): # Code that depends on numpy, pandas, matplotlib version 3.2.1, and PIL version 8.1.0 """ diff --git a/autogen/agentchat/contrib/functions/youtube_utils.py b/autogen/agentchat/contrib/functions/youtube_utils.py index 853a58323a3..c8df2546068 100644 --- a/autogen/agentchat/contrib/functions/youtube_utils.py +++ b/autogen/agentchat/contrib/functions/youtube_utils.py @@ -1,7 +1,7 @@ -from .functions_utils import requires +from .functions_utils import requires_python_packages -@requires("youtube_transcript_api==0.6.0") +@requires_python_packages("youtube_transcript_api==0.6.0") def get_youtube_transcript(youtube_link: str) -> str: """ Gets the transcript of a YouTube video. From 3db2859755608072bc8e6b02788f45bebec51896 Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 9 Feb 2024 00:24:45 +0000 Subject: [PATCH 08/14] Add decorator for secrets --- .../agentchat/contrib/functions/file_utils.py | 51 +++++- .../contrib/functions/functions_utils.py | 31 ++++ notebook/agentchat_function_store.ipynb | 156 +++++++++++++++--- 3 files changed, 216 insertions(+), 22 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 7a714e8d620..5f00b2503ba 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -1,4 +1,4 @@ -from .functions_utils import requires_python_packages +from .functions_utils import requires_python_packages, requires_secret @requires_python_packages("pdfminer.six", "requests") @@ -166,3 +166,52 @@ def read_text_from_audio(file_path: str) -> str: text = recognizer.recognize_google(audio) return text + + +@requires_secret("OPENAI_API_KEY") +@requires_python_packages("openai") +def caption_image_using_gpt4v(file_path_or_url: str) -> str: + """ + Generates a caption for an image using the GPT-4 Vision model from OpenAI. + + Args: + file_path_or_url (str): The path to the image file or the URL. + + Returns: + str: The caption generated for the image. + """ + import os + import openai + from openai import OpenAI + + caption = "" + + openai.api_key = os.environ["OPENAI_API_KEY"] + client = OpenAI() + + # check if the file_path_or_url is a URL + if file_path_or_url.startswith("http://") or file_path_or_url.startswith("https://"): + image_url = file_path_or_url + + response = client.chat.completions.create( + model="gpt-4-vision-preview", + messages=[ + { + "role": "user", + "content": [ + {"type": "text", "text": "What’s in this image?"}, + { + "type": "image_url", + "image_url": { + "url": image_url, + }, + }, + ], + } + ], + max_tokens=300, + ) + caption = response.choices[0] + else: + caption = "Please provide a valid image URL" + return caption diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index a8e490ec289..f1fb5171b89 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -1,3 +1,4 @@ +import os import subprocess import sys import functools @@ -67,3 +68,33 @@ def wrapper(*args, **kwargs): return wrapper return decorator + + +def requires_secret(*env): + """ + Decorator that ensures the required environment variables are set before executing the decorated function. + + Args: + *env: Variable length argument list of environment variable names that should be set. + + Examples: + @requires_secret('OPENAI_API_KEY') + def my_function(): + # Code that depends on the OPENAI_API_KEY environment variable + + @requires_secret('AWS', 'AWS_ACCESS') + def another_function(): + # Code that depends on the AWS and AWS_ACCESS environment variables + """ + + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + for name in env: + if name not in os.environ: + raise EnvironmentError(f"Environment variable {name} is not set") + return func(*args, **kwargs) + + return wrapper + + return decorator diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index 009c517797c..d44860df746 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -71,10 +71,10 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_uu7fVdiv87S8pLLRxFxYRGtV): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_FPOzM4IjGuiNKKlZhIKSTKRD): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + "\"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", "}\n", "\u001b[32m***************************************************************************************\u001b[0m\n", "\n", @@ -87,22 +87,41 @@ "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_uu7fVdiv87S8pLLRxFxYRGtV\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_FPOzM4IjGuiNKKlZhIKSTKRD\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The Youtube video is about the development, potential, and risks associated with Artificial Intelligence (AI). The speaker notes that while AI is likely to address many current global issues, it will also introduce new ones like the exacerbation of fake news and the likelihood of more severe cyber attacks.\n", + "The video talks about the potential of Artificial Intelligence (AI) and the consequences of its mismanagement. Here is a summary of the video:\n", "\n", - "The speaker discusses the concept of scientists 'playing God' by creating completely autonomous beings with their own goals and underlines the importance of aligning these goals with that of human beings. The parallels between the development of AI and the natural process of biological evolution are also drawn, with the speaker asserting that technology is very much a force of nature.\n", + "1. The video opens with stating that AI has the potential to solve various problems like employment, disease and poverty, but it also sets the stage for new challenges like fake news, increase in cyber attacks and introduction of fully automated weapons. There's a concern that AI could lead to the establishment of stable dictatorships.\n", "\n", - "There is focus on the emergence of GPT (Generative Pre-training Transformer), a language processing AI. This AI is seen as a watershed moment in the development of artificial general intelligence (AGI) — AI systems that can outperform humans in most economically valuable work.\n", + "2. Over 1300 tech leaders and researchers are calling for a pause in the development of AI to consider its risks.\n", "\n", - "The video also discusses the potential threat posed by AGI due to a possible prioritization of its survival over human welfare. The speaker suggests that while humans appreciate animals, humans often prioritize their needs over the animals, pointing out that a similar relationship could develop between humans and AGI.\n", + "3. The speaker suggests that we will be able to create autonomous beings that align with human goals. He also compares technology to a force of nature, drawing parallels between biological evolution and the evolution of technology. \n", + "\n", + "4. They bring up the topic of Chat GPT, describing it as the 'first spots of rain before a downpour'. It's considered a watershed moment in AI, which the researcher believes could lead to the development of Artificial General Intelligence (AGI) - a system that can perform any task a human can but better. \n", + "\n", + "5. The speaker emphasizes the importance of programming AGIs correctly, noting that if not done correctly, their nature would favor their survival above everything else. \n", + "\n", + "6. The video talks about skepticism among many machine learning experts related to AGI, when it could happen, and even whether it is at all possible. There's a prediction that computers for AI will potentially become 100,000 times faster in a few years.\n", + "\n", + "7. It's highlighted that in an arms race to create AGI first, teams might rush and end up creating an AI that doesn't prioritize human needs.\n", + "\n", + "8. The video concludes with a vision of the future where the Earth is covered with solar panels and data centers. In light of these concerns, it suggests to work on developing AGI as a global cooperation between nations to safeguard human interests.\n", + "\n", + "Overall, the key concept is that while AI has massive potential benefits, it also comes with serious risks. Therefore, the development of AGI, in particular, needs to be conducted with the utmost care and global cooperation. Ensuring the alignment of AI's goals with ours is essential to navigating these challenges.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The narration presents the prediction of technology experts who believe that the speed of computers for neural networks for AI will dramatically increase in a few years. Given the potential risks and exponential growth associated with AGI, the speaker emphasizes the desperate need for global cooperation in AI development to ensure a future that is beneficial not just for AI but for humanity as well.\n", "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" @@ -124,7 +143,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Adavanced Example\n", + "## Adavanced: Registering Multiple Functions\n", "\n", "Lets import multiple functions and use them accomplish more complex tasks." ] @@ -165,7 +184,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_9EQ7lnpwFLxStOqmaITZVeMI): read_text_from_image *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_a62kEIHFUhyooITpart1yHpt): read_text_from_image *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", @@ -198,14 +217,17 @@ "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_9EQ7lnpwFLxStOqmaITZVeMI\" *****\u001b[0m\n", - "This flower has The flower Purple petals This flower has petals that are shown has white that are almost petals that are red with yellow petals with heart shaped yellow with many tips: yellow anther in with small green layers: L the center: receptacles: 8 J This bird is blue This bird is This is a bird bird with long with white on completely with a green black wings, tail the head.the black with a wing; a brown and white feathers are blue large blunt head and a red breast; the bill is and the belly is beak bill: short and black: 1 white. 3 Two people Lunch of rice A big rig truck in A group of men holding and beans with a parking lot traveling on snowboards are soup and juice: without a trailer: horses in the standing in the water; snow 8\n", + "\u001b[32m***** Response from calling tool \"call_a62kEIHFUhyooITpart1yHpt\" *****\u001b[0m\n", + "Error: cannot identify image file <_io.BytesIO object at 0x7fe465f9a610>\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_jseZ3R7kFEI7JADjge016LaY): read_text_from_pdf *****\u001b[0m\n", + "It seems like the system was not able to identify text from the provided image file. This could be due to complexities in the image like poor quality, complex background, or very stylized text. In some cases, images with captions may not be easily processed by optical character recognition (OCR) technology.\n", + "\n", + "Let's process the next file which is a PDF document.\n", + "\u001b[32m***** Suggested tool Call (call_pQP1zVHddWY9noBUazdBWiNq): read_text_from_pdf *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", @@ -223,14 +245,17 @@ "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_jseZ3R7kFEI7JADjge016LaY\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_pQP1zVHddWY9noBUazdBWiNq\" *****\u001b[0m\n", "Dummy PDF file\f\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_xbXD6vwslLYf1Bn3UvffHanr): read_text_from_audio *****\u001b[0m\n", + "The content of the PDF file located at \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\" only contains the text \"Dummy PDF file\".\n", + "\n", + "Let's now process the audio file.\n", + "\u001b[32m***** Suggested tool Call (call_MCLstwb6E1iISdiIjY8movDO): read_text_from_audio *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", @@ -248,22 +273,24 @@ "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_xbXD6vwslLYf1Bn3UvffHanr\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_MCLstwb6E1iISdiIjY8movDO\" *****\u001b[0m\n", "the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "Here is the summary of the contents of the provided files:\n", + "The audio file from \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\" contains the following speech:\n", "\n", - "1. Image file ([link](https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg)): The image is a multiple captioned image dataset example. It seems to be a dataset used for machine learning or image analysis. The captions include references to various flowers, a bird, people holding a lunch of rice and beans, a big rig truck in a parking lot, and a group of snowboarders.\n", + "\"the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\"\n", "\n", - "2. PDF file ([link](https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf)): The PDF file is a dummy file with no contents.\n", + "To summarize,\n", "\n", - "3. Audio file ([link](https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav)): The audio file contains a sentence talking about different smells and tastes. Some phrases are \"the stale smell of old beer lingers\", \"it takes heat to bring out the odor\", \"a salt pickle tastes fine with ham\", and \"a zestful food is the hot cross bun\".\n", + "1. The image file couldn't be processed to extract any text.\n", + "2. The PDF file only contained the text \"Dummy PDF file\".\n", + "3. The audio file consisted of a few phrases, seemingly unconnected and might be part of a larger context or text.\n", "\n", - "Please note that these are direct extractions from the files and a more detailed or contextual summary might need a deeper analysis or understanding of the data.\n", + "Please note, the content might make more sense in their original contexts. If provided, I suggest looking at these files directly to get a complete understanding.\n", "\n", "TERMINATE\n", "\n", @@ -282,6 +309,93 @@ " summary_method=\"last_msg\",\n", ")" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Adavanced: Functions that Require Secrets\n", + "\n", + "In this example, we will use a function that expects a secret, e.g., an `OPENAI_API_KEY` for it work. One such example is the function that using GPT-4-vision to perform image understanding." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "Please summarize the contents of the following image using gpt4v: https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "\u001b[32m***** Suggested tool Call (call_jxjODN5UmMifdmnk8P1KIqir): caption_image_using_gpt4v *****\u001b[0m\n", + "Arguments: \n", + "{\n", + " \"file_path_or_url\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + "}\n", + "\u001b[32m******************************************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[35m\n", + ">>>>>>>> EXECUTING FUNCTION caption_image_using_gpt4v...\u001b[0m\n", + "requested package: openai None\n", + "found package openai 1.11.1\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[33muser\u001b[0m (to coder):\n", + "\n", + "\u001b[32m***** Response from calling tool \"call_jxjODN5UmMifdmnk8P1KIqir\" *****\u001b[0m\n", + "{\"finish_reason\":\"stop\",\"index\":0,\"logprobs\":null,\"message\":{\"content\":\"The image consists of a collage of twelve smaller images arranged in a grid, with three rows and four columns. Each of the smaller images is paired with a text description. Here's a breakdown of what each image shows based on the grid positions:\\n\\nTop row (Flowers):\\n1. A flower with red petals and yellow tips.\\n2. A white flower with yellow anthers in the center.\\n3. A flower with purple petals, some of which are heart-shaped, and small green receptacles.\\n4. A yellow flower with multiple layers of petals and a small insect on it.\\n\\nSecond row (Birds):\\n1. A blue bird with white on its head and belly.\\n2. A black bird with a large blunt beak.\\n3. A bird with a green wing, brown head, and red bill.\\n4. A bird with long black wings, a white tail and breast, and a short black bill.\\n\\nThird row (COCO dataset images):\\n1. Two individuals outdoors in a snowy setting holding snowboards.\\n2. A meal consisting of rice, beans, soup, and juice served on a table.\\n3. A big rig truck parked in a lot without its trailer attached.\\n4. A group of men on horseback, fording a body of water.\\n\\nThe images encompass various categories including flowers, birds, outdoor activities, food, transportation, and an equestrian scene.\",\"role\":\"assistant\",\"function_call\":null,\"tool_calls\":null}}\n", + "\u001b[32m**********************************************************************\u001b[0m\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcoder\u001b[0m (to user):\n", + "\n", + "The image consists of a collage of twelve smaller images arranged in a grid, with three rows and four columns. Each of the smaller images is paired with a text description. Here's a breakdown of what each image shows based on the grid positions:\n", + "\n", + "Top row (Flowers):\n", + "1. A flower with red petals and yellow tips.\n", + "2. A white flower with yellow anthers in the center.\n", + "3. A flower with purple petals, some of which are heart-shaped, and small green receptacles.\n", + "4. A yellow flower with multiple layers of petals and a small insect on it.\n", + "\n", + "Second row (Birds):\n", + "1. A blue bird with white on its head and belly.\n", + "2. A black bird with a large blunt beak.\n", + "3. A bird with a green wing, brown head, and red bill.\n", + "4. A bird with long black wings, a white tail and breast, and a short black bill.\n", + "\n", + "Third row (COCO dataset images):\n", + "1. Two individuals outdoors in a snowy setting holding snowboards.\n", + "2. A meal consisting of rice, beans, soup, and juice served on a table.\n", + "3. A big rig truck parked in a lot without its trailer attached.\n", + "4. A group of men on horseback, fording a body of water.\n", + "\n", + "The images encompass various categories including flowers, birds, outdoor activities, food, transportation, and an equestrian scene.\n", + "\n", + "TERMINATE\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "assistant.register_for_llm(description=\"Use gpt4 vision to understand an image\")(fu.caption_image_using_gpt4v)\n", + "user.register_for_execution()(fu.caption_image_using_gpt4v)\n", + "\n", + "result = user.initiate_chat(\n", + " assistant,\n", + " message=f\"Please summarize the contents of the following image using gpt4v: {dummy_png}\",\n", + " summary_method=\"last_msg\",\n", + ")" + ] } ], "metadata": { From 581bcd7c00cc3f5b218562645d418242f0296074 Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 9 Feb 2024 04:07:53 +0000 Subject: [PATCH 09/14] Improve the decorator --- .../agentchat/contrib/functions/file_utils.py | 17 +- .../contrib/functions/functions_utils.py | 141 ++++----- .../contrib/functions/youtube_utils.py | 4 +- notebook/agentchat_function_store.ipynb | 284 ++++++++++++------ 4 files changed, 257 insertions(+), 189 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 5f00b2503ba..a479719952e 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -1,7 +1,7 @@ -from .functions_utils import requires_python_packages, requires_secret +from .functions_utils import FunctionWithRequirements -@requires_python_packages("pdfminer.six", "requests") +@FunctionWithRequirements(python_packages=["pdfminer.six", "requests"]) def read_text_from_pdf(file_path: str) -> str: """ Reads text from a PDF file and returns it as a string. @@ -39,7 +39,7 @@ def read_text_from_pdf(file_path: str) -> str: return text -@requires_python_packages("python-docx") +@FunctionWithRequirements(python_packages=["python-docx"]) def read_text_from_docx(file_path: str) -> str: """ Reads text from a DOCX file and returns it as a string. @@ -59,7 +59,7 @@ def read_text_from_docx(file_path: str) -> str: return text -@requires_python_packages("pillow", "requests", "easyocr") +@FunctionWithRequirements(python_packages=["pillow", "requests", "easyocr"]) def read_text_from_image(file_path: str) -> str: """ Reads text from an image file or URL and returns it as a string. @@ -92,7 +92,7 @@ def read_text_from_image(file_path: str) -> str: return text -@requires_python_packages("python-pptx") +@FunctionWithRequirements(python_packages=["python-pptx"]) def read_text_from_pptx(file_path: str) -> str: """ Reads text from a PowerPoint file and returns it as a string. @@ -116,7 +116,7 @@ def read_text_from_pptx(file_path: str) -> str: return text -@requires_python_packages("pandas") +@FunctionWithRequirements(python_packages=["pandas"]) def read_text_from_xlsx(file_path: str) -> str: """ Reads text from an Excel file and returns it as a string. @@ -135,7 +135,7 @@ def read_text_from_xlsx(file_path: str) -> str: return text -@requires_python_packages("SpeechRecognition", "requests") +@FunctionWithRequirements(python_packages=["speechrecognition", "requests"]) def read_text_from_audio(file_path: str) -> str: """ Reads text from an audio file or a URL and returns it as a string. @@ -168,8 +168,7 @@ def read_text_from_audio(file_path: str) -> str: return text -@requires_secret("OPENAI_API_KEY") -@requires_python_packages("openai") +@FunctionWithRequirements(python_packages=["openai"], secrets=["OPENAI_API_KEY"]) def caption_image_using_gpt4v(file_path_or_url: str) -> str: """ Generates a caption for an image using the GPT-4 Vision model from OpenAI. diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index f1fb5171b89..9bf9fee7f19 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -3,98 +3,69 @@ import sys import functools import pkg_resources +from typing import List, Optional, Tuple -def requires_python_packages(*packages, **pip_packages): - """ - Decorator that ensures the required Python packages are installed before executing the decorated function. +class FunctionWithRequirements: + """Decorator class that adds requirements and setup functionality to a function.""" - Args: - *packages: Variable length argument list of Python package names that should be installed. - **pip_packages: Keyword arguments specifying Python package names and versions in the format `package_name=version`. + def __init__(self, python_packages: Optional[List[str]] = None, secrets: Optional[List[str]] = None): + self.python_packages = python_packages or [] + self.secrets = secrets or [] - Examples: - @requires_python_packages('numpy', 'pandas') - def my_function(): - # Code that depends on numpy and pandas - - @requires_python_packages(matplotlib='3.2.1', seaborn='0.11.1') - def another_function(): - # Code that depends on matplotlib version 3.2.1 and seaborn version 0.11.1 - - @requires_python_packages('numpy', 'pandas', matplotlib='3.2.1', PIL='8.1.0') - def yet_another_function(): - # Code that depends on numpy, pandas, matplotlib version 3.2.1, and PIL version 8.1.0 - """ - - def decorator(func): - @functools.wraps(func) - def wrapper(*args, **kwargs): - all_packages = {**{pkg: None for pkg in packages}, **pip_packages} - for name, version in all_packages.items(): - if "==" in name: - name, version = name.split("==") - print("requested package:", name, version) - try: - try: - installed_package = pkg_resources.get_distribution(name) - except pkg_resources.DistributionNotFound: - print(f"Package {name} not found") - installed_package = None - raise ImportError - - print("found package", installed_package) - if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): - print("Package mismatch detected") - raise ImportError - except ImportError or pkg_resources.DistributionNotFound: - print(f"Installing {name}{'==' + version if version else ''}...") - subprocess.check_call( - [ - sys.executable, - "-m", - "pip", - "install", - name + "==" + version if version else name, - "--upgrade", - "--quiet", - ] - ) - except Exception as e: - print(f"Error: {e}") - raise e - return func(*args, **kwargs) - - return wrapper - - return decorator - - -def requires_secret(*env): - """ - Decorator that ensures the required environment variables are set before executing the decorated function. - - Args: - *env: Variable length argument list of environment variable names that should be set. - - Examples: - @requires_secret('OPENAI_API_KEY') - def my_function(): - # Code that depends on the OPENAI_API_KEY environment variable - - @requires_secret('AWS', 'AWS_ACCESS') - def another_function(): - # Code that depends on the AWS and AWS_ACCESS environment variables - """ - - def decorator(func): + def __call__(self, func: callable) -> callable: @functools.wraps(func) def wrapper(*args, **kwargs): - for name in env: - if name not in os.environ: - raise EnvironmentError(f"Environment variable {name} is not set") + self.setup() return func(*args, **kwargs) + wrapper.setup = self.setup + wrapper.get_requirements = self.get_requirements return wrapper - return decorator + def get_requirements(self) -> Tuple[List[str], List[str]]: + """Returns the Python packages and secrets required by the function.""" + return self.python_packages, self.secrets + + def setup(self) -> None: + """Installs the required Python packages and checks the required secrets.""" + # Install Python packages + all_packages = {pkg: None if "==" not in pkg else pkg.split("==")[1] for pkg in self.python_packages} + for name, version in all_packages.items(): + if "==" in name: + name, version = name.split("==") + print("requested package:", name, version) + try: + try: + installed_package = pkg_resources.get_distribution(name) + except pkg_resources.DistributionNotFound: + print(f"Package {name} not found") + installed_package = None + raise ImportError + + print("found package", installed_package) + if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): + print("Package mismatch detected") + raise ImportError + except ImportError or pkg_resources.DistributionNotFound: + print(f"Installing {name}{'==' + version if version else ''}...") + subprocess.check_call( + [ + sys.executable, + "-m", + "pip", + "install", + name + "==" + version if version else name, + "--upgrade", + "--quiet", + ] + ) + except Exception as e: + print(f"Error: {e}") + + # Check secrets + for name in self.secrets: + if name not in os.environ: + raise EnvironmentError(f"Environment variable {name} is not set") + else: + print(f"Environment variable {name} is set") diff --git a/autogen/agentchat/contrib/functions/youtube_utils.py b/autogen/agentchat/contrib/functions/youtube_utils.py index c8df2546068..3f37463b3e5 100644 --- a/autogen/agentchat/contrib/functions/youtube_utils.py +++ b/autogen/agentchat/contrib/functions/youtube_utils.py @@ -1,7 +1,7 @@ -from .functions_utils import requires_python_packages +from .functions_utils import FunctionWithRequirements -@requires_python_packages("youtube_transcript_api==0.6.0") +@FunctionWithRequirements(python_packages=["youtube_transcript_api==0.6.0"]) def get_youtube_transcript(youtube_link: str) -> str: """ Gets the transcript of a YouTube video. diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index d44860df746..02fc268543f 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -24,10 +24,89 @@ "from autogen.agentchat.contrib.functions import file_utils as fu" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Functions and Requirements\n", + "\n", + "A python functions can have have many requirements. For example, 3rd-party python packages and secrets.\n", + "\n", + "### Accessing requirements\n", + "You can access requirements via the `.get_requirements()` method." + ] + }, { "cell_type": "code", "execution_count": 2, "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Required python packages: ['youtube_transcript_api==0.6.0']\n", + "Required secrets: []\n" + ] + } + ], + "source": [ + "# get the requirements for the youtube transcript function\n", + "python_pkgs, secrets = yt.get_youtube_transcript.get_requirements()\n", + "print(\"Required python packages: \", python_pkgs)\n", + "print(\"Required secrets: \", secrets)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Testing and pre-installing requirements\n", + "\n", + "We also provide methods to install the required python packages. To do this, execute the following method in your execution environment. If required secrets are missing, the method will throw an error.\n", + "\n", + "This is especially useful when setup is costly and needs to be done before actually invoking the function in some end task (in this case use by the agent)." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "requested package: youtube_transcript_api 0.6.0\n", + "Package youtube_transcript_api not found\n", + "Installing youtube_transcript_api==0.6.0...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + } + ], + "source": [ + "yt.get_youtube_transcript.setup()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simple Example" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, "outputs": [], "source": [ "config_list = [\n", @@ -48,16 +127,9 @@ ")" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Simple Example" - ] - }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -71,10 +143,10 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_FPOzM4IjGuiNKKlZhIKSTKRD): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_kcfCORy1bvWI1bZRICjkRewa): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", - "\"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", "}\n", "\u001b[32m***************************************************************************************\u001b[0m\n", "\n", @@ -87,41 +159,22 @@ "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_FPOzM4IjGuiNKKlZhIKSTKRD\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_kcfCORy1bvWI1bZRICjkRewa\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The video talks about the potential of Artificial Intelligence (AI) and the consequences of its mismanagement. Here is a summary of the video:\n", - "\n", - "1. The video opens with stating that AI has the potential to solve various problems like employment, disease and poverty, but it also sets the stage for new challenges like fake news, increase in cyber attacks and introduction of fully automated weapons. There's a concern that AI could lead to the establishment of stable dictatorships.\n", - "\n", - "2. Over 1300 tech leaders and researchers are calling for a pause in the development of AI to consider its risks.\n", - "\n", - "3. The speaker suggests that we will be able to create autonomous beings that align with human goals. He also compares technology to a force of nature, drawing parallels between biological evolution and the evolution of technology. \n", - "\n", - "4. They bring up the topic of Chat GPT, describing it as the 'first spots of rain before a downpour'. It's considered a watershed moment in AI, which the researcher believes could lead to the development of Artificial General Intelligence (AGI) - a system that can perform any task a human can but better. \n", - "\n", - "5. The speaker emphasizes the importance of programming AGIs correctly, noting that if not done correctly, their nature would favor their survival above everything else. \n", - "\n", - "6. The video talks about skepticism among many machine learning experts related to AGI, when it could happen, and even whether it is at all possible. There's a prediction that computers for AI will potentially become 100,000 times faster in a few years.\n", - "\n", - "7. It's highlighted that in an arms race to create AGI first, teams might rush and end up creating an AI that doesn't prioritize human needs.\n", - "\n", - "8. The video concludes with a vision of the future where the Earth is covered with solar panels and data centers. In light of these concerns, it suggests to work on developing AGI as a global cooperation between nations to safeguard human interests.\n", - "\n", - "Overall, the key concept is that while AI has massive potential benefits, it also comes with serious risks. Therefore, the development of AGI, in particular, needs to be conducted with the utmost care and global cooperation. Ensuring the alignment of AI's goals with ours is essential to navigating these challenges.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33muser\u001b[0m (to coder):\n", + "The Youtube video centers on the potential impact and risks of Artificial Intelligence (AI). The speaker discusses how AI has the potential to solve many existing problems like employment, disease, and poverty, but it also presents new challenges such as misinformation, cyberattacks, and potential for creating unstable dictatorships.\n", "\n", + "The speaker talks about the concept of Artificial General Intelligence (AGI), which are AI systems capable of performing any human intellectual task. The implementation of such advanced AI systems is of concern since their goals need to align with human goals, and humans should benefit from these technologies.\n", "\n", + "A key talking point in the video is about the importance of programming the desires and beliefs of the first AGIs correctly. If not done properly, their system could potentially prioritize their own survival above anything else, a situation that could impact humans negatively, much like how humans impact animals despite affection for animals.\n", "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mcoder\u001b[0m (to user):\n", + "The final part of the video discusses the rapid speed of AI development due to computer speeds for AI potentially becoming exponentially faster. The speaker suggests that the widespread impacts of AGI development could lead to the Earth's entire surface being covered with solar panels and data centers, posing significant global changes. \n", "\n", + "In conclusion, while AI and AGI promise a lot of potential benefits, there are serious concerns about their impact on society and the earth that need to be addressed. The speaker believes the future of AI is secure; the real question is how humans fit into that future.\n", "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" @@ -143,14 +196,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Adavanced: Registering Multiple Functions\n", + "## Advanced: Registering Multiple Functions\n", "\n", "Lets import multiple functions and use them accomplish more complex tasks." ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -170,7 +223,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -184,10 +237,10 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_a62kEIHFUhyooITpart1yHpt): read_text_from_image *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_no1aR3E7bnXJUMZp4QOhh3ek): read_text_from_image *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", + "\"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", "}\n", "\u001b[32m*************************************************************************************\u001b[0m\n", "\n", @@ -199,38 +252,57 @@ "requested package: requests None\n", "found package requests 2.31.0\n", "requested package: easyocr None\n", - "found package easyocr 1.7.1\n" + "Package easyocr not found\n", + "Installing easyocr...\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n" + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", + "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n", + "Downloading detection model, please wait. This may take several minutes depending upon your network connection.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[33muser\u001b[0m (to coder):\n", + "Progress: |██████████████████████████████████████████████████| 100.0% Complete" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Downloading recognition model, please wait. This may take several minutes depending upon your network connection.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Progress: |██████████████████████████████████████████████████| 100.0% Complete\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_a62kEIHFUhyooITpart1yHpt\" *****\u001b[0m\n", - "Error: cannot identify image file <_io.BytesIO object at 0x7fe465f9a610>\n", + "\u001b[32m***** Response from calling tool \"call_no1aR3E7bnXJUMZp4QOhh3ek\" *****\u001b[0m\n", + "Error: cannot identify image file <_io.BytesIO object at 0x7f8b6bdcba60>\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "It seems like the system was not able to identify text from the provided image file. This could be due to complexities in the image like poor quality, complex background, or very stylized text. In some cases, images with captions may not be easily processed by optical character recognition (OCR) technology.\n", + "Apologies for the inconvenience. It appears that there was an error in extracting text from the image provided. The reason could be the complexity of the image and the overlaid text which made it difficult for the text extraction process. Due to the limitations of automated optical character recognition (OCR), it might not be possible to deliver a text summary of this image.\n", "\n", - "Let's process the next file which is a PDF document.\n", - "\u001b[32m***** Suggested tool Call (call_pQP1zVHddWY9noBUazdBWiNq): read_text_from_pdf *****\u001b[0m\n", + "Now, let's proceed to the next file which is a PDF document. I will extract the text from this PDF document using the appropriate function.\n", + "\u001b[32m***** Suggested tool Call (call_vKLlmYCHJRG0X0AmfgMQaFPy): read_text_from_pdf *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + "\"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", "}\n", "\u001b[32m***********************************************************************************\u001b[0m\n", "\n", @@ -238,59 +310,86 @@ "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", "requested package: pdfminer.six None\n", - "found package pdfminer.six 20231228\n", + "Package pdfminer.six not found\n", + "Installing pdfminer.six...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "requested package: requests None\n", "found package requests 2.31.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_pQP1zVHddWY9noBUazdBWiNq\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_vKLlmYCHJRG0X0AmfgMQaFPy\" *****\u001b[0m\n", "Dummy PDF file\f\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The content of the PDF file located at \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\" only contains the text \"Dummy PDF file\".\n", + "The PDF file at the provided URL contains a simple text: \"Dummy PDF file.\" \n", "\n", - "Let's now process the audio file.\n", - "\u001b[32m***** Suggested tool Call (call_MCLstwb6E1iISdiIjY8movDO): read_text_from_audio *****\u001b[0m\n", + "Now let's proceed with the audio file. I will transcribe the audio into text using the corresponding function.\n", + "\u001b[32m***** Suggested tool Call (call_px0qUVJg9B7rMRhpuTk9mdRC): read_text_from_audio *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", + "\"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", "}\n", "\u001b[32m*************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION read_text_from_audio...\u001b[0m\n", - "requested package: SpeechRecognition None\n", - "found package SpeechRecognition 3.10.1\n", + "requested package: speechrecognition None\n", + "Package speechrecognition not found\n", + "Installing speechrecognition...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "requested package: requests None\n", "found package requests 2.31.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_MCLstwb6E1iISdiIjY8movDO\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_px0qUVJg9B7rMRhpuTk9mdRC\" *****\u001b[0m\n", "the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The audio file from \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\" contains the following speech:\n", - "\n", - "\"the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\"\n", - "\n", - "To summarize,\n", - "\n", - "1. The image file couldn't be processed to extract any text.\n", - "2. The PDF file only contained the text \"Dummy PDF file\".\n", - "3. The audio file consisted of a few phrases, seemingly unconnected and might be part of a larger context or text.\n", + "The audio file at the provided URL contains the following speech: \"The stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun.\"\n", "\n", - "Please note, the content might make more sense in their original contexts. If provided, I suggest looking at these files directly to get a complete understanding.\n", + "To summarize:\n", + "1. The image file could not be processed for text extraction due to its complexity.\n", + "2. The PDF file contains the simple text: \"Dummy PDF file.\"\n", + "3. The audio file was transcribed into the text mentioned above with various sentences about smells, food, and health.\n", "\n", "TERMINATE\n", "\n", @@ -314,14 +413,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Adavanced: Functions that Require Secrets\n", + "## Advanced: Functions that Require Secrets\n", "\n", "In this example, we will use a function that expects a secret, e.g., an `OPENAI_API_KEY` for it work. One such example is the function that using GPT-4-vision to perform image understanding." ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -335,7 +434,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_jxjODN5UmMifdmnk8P1KIqir): caption_image_using_gpt4v *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_jMahhXMG6aINN5M9YqKBThI2): caption_image_using_gpt4v *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path_or_url\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", @@ -346,39 +445,38 @@ "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION caption_image_using_gpt4v...\u001b[0m\n", "requested package: openai None\n", - "found package openai 1.11.1\n", + "found package openai 1.12.0\n", + "Environment variable OPENAI_API_KEY is set\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_jxjODN5UmMifdmnk8P1KIqir\" *****\u001b[0m\n", - "{\"finish_reason\":\"stop\",\"index\":0,\"logprobs\":null,\"message\":{\"content\":\"The image consists of a collage of twelve smaller images arranged in a grid, with three rows and four columns. Each of the smaller images is paired with a text description. Here's a breakdown of what each image shows based on the grid positions:\\n\\nTop row (Flowers):\\n1. A flower with red petals and yellow tips.\\n2. A white flower with yellow anthers in the center.\\n3. A flower with purple petals, some of which are heart-shaped, and small green receptacles.\\n4. A yellow flower with multiple layers of petals and a small insect on it.\\n\\nSecond row (Birds):\\n1. A blue bird with white on its head and belly.\\n2. A black bird with a large blunt beak.\\n3. A bird with a green wing, brown head, and red bill.\\n4. A bird with long black wings, a white tail and breast, and a short black bill.\\n\\nThird row (COCO dataset images):\\n1. Two individuals outdoors in a snowy setting holding snowboards.\\n2. A meal consisting of rice, beans, soup, and juice served on a table.\\n3. A big rig truck parked in a lot without its trailer attached.\\n4. A group of men on horseback, fording a body of water.\\n\\nThe images encompass various categories including flowers, birds, outdoor activities, food, transportation, and an equestrian scene.\",\"role\":\"assistant\",\"function_call\":null,\"tool_calls\":null}}\n", + "\u001b[32m***** Response from calling tool \"call_jMahhXMG6aINN5M9YqKBThI2\" *****\u001b[0m\n", + "{\"finish_reason\":\"stop\",\"index\":0,\"logprobs\":null,\"message\":{\"content\":\"The image displays a montage of photographs organized into three categories: flowers, birds, and miscellaneous images from the COCO dataset.\\n\\nTop row (Oxford-102 Flowers):\\n1. A flower with red petals and yellow tips.\\n2. A flower with white petals and a yellow center.\\n3. A flower with purple heart-shaped petals and small green sepals.\\n4. A yellow flower with multiple layers of petals.\\n\\nSecond row (CUB-200 Birds):\\n1. A blue bird with white on its head, blue feathers, and a white belly.\\n2. A completely black bird with a large blunt beak.\\n3. A bird with a green wing, brown head, and a red bill.\\n4. A bird with long black wings, a white tail, and a short black bill.\\n\\nBottom row (COCO):\\n1. Two people holding snowboards standing in the snow.\\n2. A meal consisting of rice, beans, soup, and juice.\\n3. A big rig truck in a parking lot without a trailer.\\n4. A group of men traveling on horseback in the water.\",\"role\":\"assistant\",\"function_call\":null,\"tool_calls\":null}}\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The image consists of a collage of twelve smaller images arranged in a grid, with three rows and four columns. Each of the smaller images is paired with a text description. Here's a breakdown of what each image shows based on the grid positions:\n", + "The image features examples from three categories: flowers, birds, and miscellaneous images from the COCO dataset.\n", "\n", - "Top row (Flowers):\n", + "Top row (Oxford-102 Flowers):\n", "1. A flower with red petals and yellow tips.\n", - "2. A white flower with yellow anthers in the center.\n", - "3. A flower with purple petals, some of which are heart-shaped, and small green receptacles.\n", - "4. A yellow flower with multiple layers of petals and a small insect on it.\n", - "\n", - "Second row (Birds):\n", - "1. A blue bird with white on its head and belly.\n", - "2. A black bird with a large blunt beak.\n", - "3. A bird with a green wing, brown head, and red bill.\n", - "4. A bird with long black wings, a white tail and breast, and a short black bill.\n", - "\n", - "Third row (COCO dataset images):\n", - "1. Two individuals outdoors in a snowy setting holding snowboards.\n", - "2. A meal consisting of rice, beans, soup, and juice served on a table.\n", - "3. A big rig truck parked in a lot without its trailer attached.\n", - "4. A group of men on horseback, fording a body of water.\n", - "\n", - "The images encompass various categories including flowers, birds, outdoor activities, food, transportation, and an equestrian scene.\n", + "2. A flower with white petals and a yellow center.\n", + "3. A flower with purple heart-shaped petals and small green sepals.\n", + "4. A yellow flower with multiple layers of petals.\n", + "\n", + "Second row (CUB-200 Birds):\n", + "1. A blue bird with white on its head, blue feathers, and a white belly.\n", + "2. A completely black bird with a large blunt beak.\n", + "3. A bird with green wing, brown head, and a red bill.\n", + "4. A bird with long black wings, a white tail, and a short black bill.\n", + "\n", + "Bottom row (COCO):\n", + "1. Two people holding snowboards standing in the snow.\n", + "2. A meal consisting of rice, beans, soup, and juice.\n", + "3. A big rig truck in a parking lot without a trailer.\n", + "4. A group of men traveling on horseback in the water.\n", "\n", "TERMINATE\n", "\n", From fdfa875ea7835e76e06f43fc6fbbfeb40dc3faf6 Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 9 Feb 2024 04:47:56 +0000 Subject: [PATCH 10/14] Improve gpt4v function --- autogen/agentchat/contrib/functions/file_utils.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index a479719952e..880481641f0 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -1,3 +1,4 @@ +from typing import Optional from .functions_utils import FunctionWithRequirements @@ -169,13 +170,14 @@ def read_text_from_audio(file_path: str) -> str: @FunctionWithRequirements(python_packages=["openai"], secrets=["OPENAI_API_KEY"]) -def caption_image_using_gpt4v(file_path_or_url: str) -> str: +def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = None) -> str: """ Generates a caption for an image using the GPT-4 Vision model from OpenAI. Args: file_path_or_url (str): The path to the image file or the URL. + Returns: str: The caption generated for the image. """ @@ -183,6 +185,7 @@ def caption_image_using_gpt4v(file_path_or_url: str) -> str: import openai from openai import OpenAI + prompt = prompt or "What’s in this image?" caption = "" openai.api_key = os.environ["OPENAI_API_KEY"] @@ -198,7 +201,7 @@ def caption_image_using_gpt4v(file_path_or_url: str) -> str: { "role": "user", "content": [ - {"type": "text", "text": "What’s in this image?"}, + {"type": "text", "text": prompt}, { "type": "image_url", "image_url": { @@ -210,7 +213,7 @@ def caption_image_using_gpt4v(file_path_or_url: str) -> str: ], max_tokens=300, ) - caption = response.choices[0] + caption = response.choices[0].message.content else: caption = "Please provide a valid image URL" return caption From 3f8a68f09c5b7df888580dff441d9453dd6bf73b Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 9 Feb 2024 04:51:48 +0000 Subject: [PATCH 11/14] Fix documentation --- autogen/agentchat/contrib/functions/file_utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 880481641f0..fb4d5376411 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -176,6 +176,7 @@ def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = Non Args: file_path_or_url (str): The path to the image file or the URL. + prompt (str, optional): The prompt to use for generating the caption. Defaults to "What’s in this image?". Returns: From 7c33108dc2a0b92cd3add5ffd49971cb69df3c77 Mon Sep 17 00:00:00 2001 From: gagb Date: Sat, 10 Feb 2024 01:47:16 +0000 Subject: [PATCH 12/14] Improve functions and add tests --- .../agentchat/contrib/functions/file_utils.py | 49 +++++++++++------- .../contrib/functions/test_file_utils.py | 44 ++++++++++++++++ test/test_files/example.jpg | Bin 0 -> 355541 bytes test/test_files/example.png | Bin 0 -> 128544 bytes test/test_files/example.pptx | Bin 0 -> 157102 bytes test/test_files/example.xlsx | Bin 0 -> 11898 bytes 6 files changed, 73 insertions(+), 20 deletions(-) create mode 100644 test/agentchat/contrib/functions/test_file_utils.py create mode 100644 test/test_files/example.jpg create mode 100644 test/test_files/example.png create mode 100644 test/test_files/example.pptx create mode 100644 test/test_files/example.xlsx diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index fb4d5376411..70a2843a234 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -60,36 +60,27 @@ def read_text_from_docx(file_path: str) -> str: return text -@FunctionWithRequirements(python_packages=["pillow", "requests", "easyocr"]) +@FunctionWithRequirements(python_packages=["easyocr"]) def read_text_from_image(file_path: str) -> str: """ Reads text from an image file or URL and returns it as a string. + Warning: EasyOCR requires torch, which is slow to download and install. + TODO: is there a better way to handle large dependencies? + Args: file_path (str): The path to the image file or URL. Returns: str: The extracted text from the image file or URL. """ - import io - import requests import easyocr - from PIL import Image reader = easyocr.Reader(["en"]) # specify the language(s) - - if file_path.startswith("http://") or file_path.startswith("https://"): - response = requests.get(file_path) - image = Image.open(io.BytesIO(response.content)) - else: - image = Image.open(file_path) - - output = reader.readtext(image) - + output = reader.readtext(file_path) # The output is a list of tuples, each containing the coordinates of the text and the text itself. # We join all the text pieces together to get the final text. text = " ".join([item[1] for item in output]) - return text @@ -109,15 +100,22 @@ def read_text_from_pptx(file_path: str) -> str: presentation = Presentation(file_path) text = "" + slide_num = 0 for slide in presentation.slides: + slide_num += 1 + + text += f"\n\n\n" + for shape in slide.shapes: if shape.has_text_frame: - text += shape.text + text += shape.text + " " + + text = text.strip() return text -@FunctionWithRequirements(python_packages=["pandas"]) +@FunctionWithRequirements(python_packages=["pandas", "openpyxl"]) def read_text_from_xlsx(file_path: str) -> str: """ Reads text from an Excel file and returns it as a string. @@ -136,7 +134,7 @@ def read_text_from_xlsx(file_path: str) -> str: return text -@FunctionWithRequirements(python_packages=["speechrecognition", "requests"]) +@FunctionWithRequirements(python_packages=["speechrecognition", "requests", "pydub"]) def read_text_from_audio(file_path: str) -> str: """ Reads text from an audio file or a URL and returns it as a string. @@ -183,6 +181,7 @@ def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = Non str: The caption generated for the image. """ import os + import base64 import openai from openai import OpenAI @@ -192,10 +191,20 @@ def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = Non openai.api_key = os.environ["OPENAI_API_KEY"] client = OpenAI() + # check if the file_path_or_url is a local file that exists + if os.path.exists(file_path_or_url): + image_path = file_path_or_url + with open(image_path, "rb") as image_file: + image_base64 = base64.b64encode(image_file.read()).decode("utf-8") + file_path_or_url = f"data:image/jpeg;base64,{image_base64}" + # check if the file_path_or_url is a URL - if file_path_or_url.startswith("http://") or file_path_or_url.startswith("https://"): + if ( + file_path_or_url.startswith("http://") + or file_path_or_url.startswith("https://") + or file_path_or_url.startswith("data:") + ): image_url = file_path_or_url - response = client.chat.completions.create( model="gpt-4-vision-preview", messages=[ @@ -216,5 +225,5 @@ def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = Non ) caption = response.choices[0].message.content else: - caption = "Please provide a valid image URL" + raise ValueError("Invalid file path or URL") return caption diff --git a/test/agentchat/contrib/functions/test_file_utils.py b/test/agentchat/contrib/functions/test_file_utils.py new file mode 100644 index 00000000000..c2469b3831c --- /dev/null +++ b/test/agentchat/contrib/functions/test_file_utils.py @@ -0,0 +1,44 @@ +import os +from autogen.agentchat.contrib.functions import file_utils as fu + +TESTDIR = os.path.join(os.path.join(os.path.dirname(__file__), "..", "..", ".."), "test_files") + + +def test_read_text_from_pdf(): + text = fu.read_text_from_pdf(os.path.join(TESTDIR, "example.pdf")) + assert isinstance(text, str) + + +def test_read_text_from_docx(): + text = fu.read_text_from_docx(os.path.join(TESTDIR, "example.docx")) + assert isinstance(text, str) + + +def test_read_text_from_image(): + for file in ["example.jpg", "example.png"]: + text = fu.read_text_from_image(os.path.join(TESTDIR, file)) + assert isinstance(text, str) + + +def test_read_text_from_pptx(): + text = fu.read_text_from_pptx(os.path.join(TESTDIR, "example.pptx")) + assert isinstance(text, str) + + +def test_read_text_from_xlsx(): + text = fu.read_text_from_xlsx(os.path.join(TESTDIR, "example.xlsx")) + assert isinstance(text, str) + + +# def test_read_text_from_audio(): +# TODO: Needs work + smaller test file +# for file in ["example.wav"]: +# text = fu.read_text_from_audio(os.path.join(TESTDIR, file)) +# print(text) +# assert isinstance(text, str) + + +def test_caption_image_using_gpt4v(): + for file in ["example.jpg", "example.png"]: + text = fu.caption_image_using_gpt4v(os.path.join(TESTDIR, file)) + assert isinstance(text, str) diff --git a/test/test_files/example.jpg b/test/test_files/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3bcabab03dee896e776594751474291f9d9e0d34 GIT binary patch literal 355541 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

{0^S^c0gq}qu-iqumWbo=H()gNq)Lq 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

lUzojQqhjcx|O##FyMAOjg%y> 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 G-2VeLBZT(= literal 0 HcmV?d00001 diff --git a/test/test_files/example.png b/test/test_files/example.png new file mode 100644 index 0000000000000000000000000000000000000000..93a38697908e2c8f57d7f78b615c4ee4285626f0 GIT binary patch literal 128544 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/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

7R{w^i_iy$_{tTU7iQflGDwuEo}PloYl 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

Np==6vm0s_Lm&*CJ{h5=Cm98HU;|Nh1Q c->18OLsLfovB7ka?e7oCN-9ZIiWvm{A8m> z-(8V<*PZiKDI}%WJKrcbVCs#eHk4M~A2xnQn)3Ts3*tmUXy=CvAFw$OtwNaJZVlrvBAdS4yRXTS7ED zFWVM;Lr^>#6FPvVhl8&WDilUw!~7n=HfcKA%|Cyce2_9kHNoHVqfV_aC>&DO-)@dq zdr#q+0;g6j92IovNmyMz9osqTpwPzgRYt>46h@nRaP$E*>nhx}_Xli)wf!y><@nw* zBoN#{6U79^n2YT26UH|5pHCP^DU}(?m~SVRu}tPh#Nz3 z^bsT83v~X`I`%nIoj}xY{(#`#&_LwMs6Qy+&uhkBK2PMV>|QkeS%Vq1iH~Qxb{c=U zeK2cTZ)damTpdyqRy{vx790X(u2D@qbBGo~!PDeWO}J%aPicjUV_=x0La2n_W;ogg zg2Px2+;lStu)@uhZ~dongiO_qg!XiU!y29j7i6w}Jxx^?@0Jp1FbiW2ULhT~lW6ul zo*Lmb(o{aLbPobBz<*-eht_{I*uotbfnSSlL73iYs2@!E<&W8YcJ7Z4Fo42;BZPyN z-wMkoA)LVg0Ju*==sTL)I5E)wwf+BO_#cde|MKXS30u-&Ovu645Ie*N-5Hn9fs!p< zD0#U=N`waKlUL%m63j^tmr+CIG#g5_DO^rR2NPszlgrDsZjn-6>bDMxjv;cMMY`Iz zDMN23Aq}EG(Xp;;k8owY+4%%Acnd(rWy=oWJ0rg-x0X+-1kwIqX)P8^GV&w(DA z+K2(3AnC%(X=}t@v-(Q9WZ2c&Vw_z1){M}8`K|SndG92 zmC@X6N0L3ULW*5tem=mZE^N`~F%2n4H@$}v!I6|QA5ded6Kc@z;% zDZxXjhRG6kdBhfi<{_DTp;jU{QFTes;mEdiHT7 zhn>@WlR!V1hR5Q5eldiu3qb|evF8(3@67G&Y$5w03kSJ4R@%W@LIOfpiS)W=(rj^W?+NwZo#>&(^1GdD#Eq_kBwD*3w z{S$;PawkOe^DO8?kqMw6ZFD&#l`7Hs@0Oj3nG3V+gNs$#l}kreNTz%E~IO}*WE0glVYWrbt7D4 zk52J3Z}A6d^7E<}n1=2BsV175;ydEB#7AW=n&71NXaQj9i+eA1<~eMrK5Yd?6Hato zEXj0WxN^htTsMsF8|?K~>&u=EK80U8I}VX++bj3;4%R7wtJAI=2G39zj6qL~D7>yF zW3ME~_UVO|!gv|^tbJ1PyodUzL%Y1wkb1HVF>4UmG`95aJH#8Bo}IzAY;Ipmyn3x_ zvnzE>L|FU4aGUUE-F=5gMaQheN>7j|-%=c@`1B1?O>1?N1A!sfzi+7#-ZBpgY5O_* z93I8#HPK_a1e-~%vr$b!Pn+UH6oVQjlh9|NEjC8e$_hD2Zjtx%3Q?jLXmMJftfVkz z&+k3wgHPzDLLNg(5Bi7o3GqYof`hIwAZ(ZYwiSo?3T3n(s*Ya0tG2upsy(?Zo!`t<(fGL414~J{ z2X1QzITA;^+ULgb38PWZ1N_Fnd|(y=g0WLp4tOEeRzO)4Om!nb7W*+Xjv@usOF${Q=F92nTG8Nvp?Lw^?+QL zQtAo7g-IErWk^W+#L4dQI6|PEGH`9j>Fdj|55M>><#u(rlZ;tVtOft}T%cf1KocmR zFGjuEoA_Z#mk7uMvrZCFa$VbykuPm^(Qr%ulM(++5i4kI9>!0;D1MTJ5C9GG7h3

I3mqMHe&7o5$Mxs~%Ve@FhcWy>1 zcp@{++YRO|a$CVdIZh9Uo*~F?^Tw9)9VlBZBpfb%oaDpy*(i@l7W@%uit56j6xPF8 zBYPTPM@gd92Os$Cxqpdj3e`=8TSwkhfB$gLs7J>mfd5d)eM^I$*RY>i4q{AX(f(fY zNGaBbkZ_CK;wMPiSLINAhr)3dOX!&JRccSMF<9*to@=3qtLV=XmH$wtvb_?zz0qnC z6kA$=q*HhETc9F7WwZVw)e+}gYRj{$k z{T_w3msp%Nk{dYNh?Ki7ZA|@5JbuB%__~`^EP5+Zh_F{Z+1c0m?ujU?p_PAeaSe@_ zW}5jxUp7`mqi-U-%jD#g$xZn{GFbBml{uM+1j*d}&3TF#iye4e5LIRGA_#}fv_pui zG@H{*!cg?0hTiWG##r07(z<{$_utarcY1wfy9}76I&swDHNAdgdv$NALA33QX%9S5 zPy{HTg>I@wU39YL{ATAJdWj|5PLO?}{V~p^jCw)@)$;i-YvGQ$sFr?##7@us`YX2a zHModm&)kDyX((Jd2^;p+0;k9j6-0$;g@)*NT#JtT2a}%wKi7|h?=G|2NG=>bS$hB! zsCRfdaDgUHGfJs_6?xvO!B&#_au?77w%dY}O4WEeV3{WwRFk5FbTVA!%Cfbg1d{cx zLS;fQ;~z`oeC+aBzI)u+vbxrlTs#?lqB%-O!DAEwJ6|`R{ycOxYVe(gBzLyndplEC z*nE5&h_(ixW?rK=axl2OZ~0p%YMv7|BJd!7p?s1?dP>wBw5_Or&3IK7U+$5iak4s^ zo8A5uwEkUtN~gS$JR8lMnCOv=@*p@jmM{t2u#p2HvL3GFg+Y1@yG!<0Fq0V9i4KQ7G9cnD=W{=yw8nR*tN5Q`JuGZo2_nvuh{H z+R2<1Oql8UT{#M&&RHKV>rXe7*869P_s;}fnv4J4`Pqp%KA}kaAD#Jc0VZSUVdvuf z-z4fkE^+=RP9tZ!VEY-7p?>N9!tcK%uL=xfbwTOt6T1V6K3Ip`AUnuE*~pj+2;BF1 zd)I03lPz#pGQ#W((NZHC%`nKiX4|YDS^5HQe)nbMr_?|O*2AUaoQ}nyPPDsyoR}i7 zHI`#EPthtoEAa&KSc(+pd{A3rnL5f8zL(N@`FiP{tsoD}(3q7Zg?39*bUW;KS$14RwVh3uvKcm8 z?3j_;r*m(bC(o-f;QlDVUq$Te`*~~=BDi?O>$_?nT8Q)D9m2U4sQ4Xth}5CT^7Ed1 z&YhW`%dxl3x7=*fn7->ZWUPyH&vcU4Xt|{`Tr>A**Hj3T>DJkbR)~k8yHq>B4iuk- zrY-LTFMngQh|Ka~BXe0hw^1#!+U0gl-8@A+Avm9mP}SwO-9CxtFbirZuTWZ*5cv>? zHPpJia$Bo;R<<Iz6sqRz#g3-G=*Yo+GHr+8y6~r0>S4Mg4)@;>ML%ub+ z{^Y~Fv@kQ3W&Ufg@ZN%H0N}O_$tYR`5Qq$lh>h4_iYoHOCzD-pgje78%XZ>*;v?x9#N1r7RUE-X};^jn`qKwleM?x0t*GqO;k&)x(x}6hk)ev-)9m4xSkUS#x}qCK>2xZfVKq9#2RXk0YmHnx{)IYiEGmxt}{ z>4u)=x42%r?9((|bS!Xqnvt-&o@zCv_{yebO;PCFJ8)8zM;vr9uJM+*@+%W>nF$kP zqkZn3Pv?-q@V;X2cFCH{4VXRHChV;hR$Q))ipejQFqxwaDZ(0EhyX181^1w+B&mX6 z23T`{Q9L@YW=HWa31R=?8?8xw8Xei?c!k9-0ugb$KUbGsKe!o8ZYZa7QEi#380OpP zp5HP0V*k?+?c4=vgM3~2M{@t5m;PPS%D^vj*6o6ku2v45kWh<(j9HVI5KjMM)Xj`8 z20}D@qXjV6Fk!U*fmKM(y0z>m1q--|zmEgKTm^sqk@QHi^+)5`Y(RMIXzc7~@BJ}_ zv>Lfy{?6D8!mkueaAfq%DV9Dd#yyr~FL&OFoKa1GFZ}r9i}fg*fH+7lF&qe@w{Eis zxKO8wVHhYnWYGJgkuLShS?AdKy-uw}UyoMZrQ&Ud>C(1_cICa|iW#orUc*=6-q3HL z?$SoRijsi6$dObBJcU;We$Esv5mh#lis=@m&TVR%T^Bblk%B#~gUb}1r00p)hufK&bS`=K#@fHz(j>!mH-e^yg<`_V(9p<%U|hC z6Cnh)ZLM{!E4SX)kCg1TE?PghNH<3uVrbZ293NPE<}%ecjxN%F-u-~BJ|qX302Q3n zWYp_NE{sDYM}QV$3S@kElIMh5F4}I;W+RlhiP1JiHikhYUZKzv0Hb90l}9C1*a?+_ zM1z0o9)}m7SCepC*}HjK5a{uFzq=+?!SqV=JDceMYA3kmhq0iCqJ$BR0i@gk$=C%% z1*x%|uqjM(QEr}+Ku-y`?I|9gKYF9x6&L!%vpE+H6V^V{yTrpmq0VX^ccc7Tq_5)# zH8oA%X@6?mmdT>tJY#It?IO7lw~(0HW><}(H7@bVO_@*Ulq9)es70j9OvgZ0T-)USV|HbGozb2FmqG16%1;P#BbQ=7BoF{*mhyDBEHs1nVkvk z8S9R=8!b3WO-HTSgbmqrDXKy&YL&R_;X*JaY$)>|zN#*7g;hM_+9Q?>OD9YE?PRW5 zk;z-HrZ`$*b_cUeGp3tE`SelAtd4u_sBCN|u91mN!dCO3K5kP~s$H(PJl9{gFjmg> z?5bN8lcZ-_w;P9%3Q`H0akuISXnV5SO`3IY#G9D0hh2fvldfkwN>0u+kw&Ss4-G?S zHz;dHNdhFcvXGTCk>#b3$A|+CCH5iCrL>j;^qx!}jYmtHul{uz?p)%42?9aa0KxbI zXamfUHr$_!!S7jGmyZnr$_NvLhoTH40{)Fg^3iUk3spkVh3^i9)z)8(60e0vxc&4O(5&CuX=}~~jM3E<<7yG+&AoLGpQ{eVs6+SEAUCjKRur)1ld`H!*ipXL zwF@ijnu^Xcgv0VLFSIU0jULO=`ChVZE&BFRlDM1ysi44MVQ-J=A0?+Htu|+KXBd-)Eykdi` zB*ofAg3}~!j)SC%%JTYLBeO%zq|IW6+*03oJ6Sy_K>*3)kwxd0yxMSh5%`O1W7f%3 z8x@K%qHu~ap6CD(l5x@-nVcB$V3&YG@7JA;HZ1?_g(CUjQPGcx;0FK)WwatA_m`U^@<^@TzeY3p!rS-< zyL0+xe+XW!VYO1-2qv1c|FYQ_t4$E1SiffO3TRB)#_wqJetw*>%i(|b3fL0kScotm zZ@-G#l!_m9TVMqF5y&X0i7tufgJgh2l1Oft*{|bJ;xtR_c5vXZdAiCo&ZBm!o@X3$ zw}$ND4b_c69G(wT^qs`Z9ODWOqua*%J={43cPdU?KURrviAoPK-wOrf`3{!<0&D|KTelFPe+*iJ_aC;8)Vyz;XVVljRqTYtW1=E2|cZSOzi+v$IiZ~dS0O>P8e zh4jRKpWbP;HKtFnzf-lMN<3e^%AT)kj7)W=WBIpyM6Prp*nq^^r_?6_++Up-l4el%F*817KNI`btX#clOV z#s#9aon9}G#-a&ZzzZ)vYsqc7Qj@*R58CJkp{cOudac%LE(wQN2hdgmki8M`LF^v@ ziBwa{1DO81z~3Qvg|YoNH(p%laPu>qw&lXEA}wn2;nit_Ox7|BFk_-6LQe#{w5E8< zu?p!Ras|+2FychtnD(K`c_RXlltEaJo~#;v6?>Nqnv;aQSJG@F%57NY!`G17t$ZO( zJ6g9Rm!(oJ7z27+K)q1!NHGn>LXf&K-W4D>WY~xZ_=DV2;Gn=Mgbi$%MAyBbxnR2; zCOP;O)T9q~(y?c4``HcW-sh^Fm49*Vtk?xFLq8X2{QYaCe~D&Fsg0d+A8cg%RYRaG z>ueK`G9RKweIMtHwX9;Vs(@P}G08FeI1qKdZfTAp8qo+enk=%QU8ldgvZmR<61aFXA<)j~nCm!nxf!Kh2Nw z6j#W|$`xH_lmNN9kF)QqS1WSptn>wC=kQJ5FPvDk?VkV!kx7-y-@9x?6rIj7n8arK zfEc725UyPWq+cQ6gk4(%=zpD=dUZlx{C>G4{{7coCjbV7{*ksF_|Xm?v_L&votFNc z?XpykbX%2>>noMf&9cHaR1R*8S4kcW)L2>#BSh3xI-zuOaEm2zfEd#e^pNJ>!ppUa z^r4ol?Tsg&8*PDP_iFtrLuJha#>23cNtM9Oa5pUxzb*;5cPkmuxFjgaVAyoBc)M|g zJ=Ra8TM6SbE)`W$cbB@Py+bukSi5f%*f>dxBz83zrE+nY9$^JaU%A;<{bm@&DmC%)b77#)5mk>)TNv8OYQpu0LRoGS?P__uP zv@I58VEiGJy=kGm8c~upFIRsKLZ6PXy*>J}+eiA9x1TcHAQg0)b&4s737X|iYLIb{ zKiX1~xWlhMw0)7SBf-fTsRTZsbqHRZ2+kW(K^PRds0?Y6LuuSF+^|u=6jH>pVh-P{ z^^>@N7(R)63nup|{XTZnD}WLSu6vyMl!kTW(e{G#l;Gdwz|M&#!KO@)8RB5F2Q}|h-{d?rH{)OBNjV)j%Csvof5&S2S{T&hCar)q2DG~vP=ER9_%L#n09aSqoe^6l+0^VZP) z`J&#ok}gGru3ZFIz`-`ct*G?u>UGxFBe|fr8B*0*buKKLa9!QIHV6Ohd1B$+z@mJA zPueCCg1vn=m$Pw2`W`BpCDD5O%K+NkEn;?6kPRHfXTe-%;sDaTF-%-Nk=b0zBhNnC<@Rm{DECH-d8qcOTj zgBNHeh7?&-7cn?6bIg8e(URUs57s;Lc&DxN=AH@PwH)b&y`cvcEteuX85&!2Pexgm zmaS#yOx%f?W1xe5TYMGJkfL%z1Q*aTuPzbu`Ac#V#Cqdn0GndZI_{ZceCO&{>J7%h=|yd^EAw$~KK(Fc`yW(a#6 zGl&GKA@`w}l+eeB4di8`9_`M(oM6mK#LSQb%I5+C0+WtXY4?d)|w6 z3YRc_8kj=yrF23=MSXpY#$w9AVHV!1tQrRh^z>melmz5cHR^bT>d{NsFDcG19$J5c ziBNB<&&CYgn`eF(nlTWg;4CgHV1&%dGByu+z3ug4`GxjUwNOm?q{WKCNfMI?Iq0^< ziwG8^%OIRug!L8s2QhexS&*m$Uhqx=T{G2tm&YwM)TNifZgpGmxB4|NXoWb(Q(W%#BSUR{sV zeKtT*0pWim0_KpPv6gh#&11^y4P`59P&Dp+r*0(l)O$&j9lmk8Va_qknRN`=JBw9_Y3q; z&-zmTc*~B|6Jl+1q(vW84N2HA+yZNm_2u10 zn~H1x@>-VI@Z4;8%jv)idcT`)F#`L{R9St~v(8d~3y{gD)VoGP#B_V_K;*0#WEt*w z#DGk!H;IL)Ea2E9@KZ#&FMI396Q4wIO*wN=-6EWQ81v2)iWFsGPBDD|5?Pv z1#@6XW8ldH9X;Xp$L&VwpAX-_Go$pUl+n)fVh#riNY!{Ue>=v?!}Jh1bP#XKKYY>& zoMEU83!A4*T~qj2n=w3Htv~BAo1V;rwtnz$fa>kQcb8Hk)+BK$nP659`;;w&Hpk6G zyqj2a&ZmPZ8HIRGO*otZ!{vP5C0y?aKV83n#+;3)`ELkF0N|bA-(!yLZ_H`_d6Je!A?4AZbynw`?fi%*o}jHyUFuo3G^E$noa=;m=pMPEWtUStH#h(3W_4 zu+=vs&{g$kotH0?p~BRhDzbhn;txecb;Y0J1$NC*65x(X6YWxm#}c|j2|-4K<@(?; zY{zH`mM}lvUS%fyZHDfV`mIOuXs&c}Fl`4xVVuV%)ysyMS_`RG7o67Cs9Im@+KTKM zz4f83n_iYqW~RDCiJuHDORHuXkd;f}ouYxaX}nbd-&b|fA)!gta=YOres%+$s7W@9t#g?U>%>(+$3JoGLa=UP^yyhXvl zO>@eV;9^(Lxz5b48Kf;PKLSyV8(~%Bxex3JlyH-)r%y@VCNLf`+=%)@mto^~!xdgT z(jOKe*#rnCfY6h~M>aGH)ez+;e~rkFdeobj9GI{>EoB(AbI>x8Qf^x6^h!_}B8pZt z4wn;!;%-XH@wwvcZx->l4FwJ0gUH8fQ*34fS zFJGmq7EU>3J+rYCmM!B`gIQ2~M}V;ZoKjr3eOQIQA({bfCCwzBtWJm`5{Vr6E+)!o zoVj^WA6osV9j->2;r>q9g+nXi&rNfNOG+CnQd2h;3yzor!MO?1w_gs+HS73~9?9PI z?c?#5%bM5w%?VMayvl3Bc_%I}2#fF7y{Ddr#uIPxBbyJtgjs$%YPL5D#L1=tRfj%VxZrYqXUE)Ob;hO|a0Fyu9jCk_YIiZL+bqCxHI zvY8E;)|aY;3tSRQw52^zOIW3=4o>BbiE5^mS5{^~8axT%^O>npANN#zztpEbR;YSd zn46+W1VOF=p+eJ$*@D5?7GF{Tqt-0o4#R0x+gN+90riW2iKyQ$UP!t|TD z+SZinB;P9(K#D^_Bj2EdzLo%4G#Bb> zrls488oLnpyuNkC%KBMT^RwTQ+H3cEc-JiYWqs`LFw)*1xB!_lKsX2p35f+6xHI1Y zubZt4A6{hZ}f^s^NyUC*+5&Hd8yBZl!Sqyt3_1cP5*pS4IoX|XSw!){1#Q(LzI zlEQQ;W)Se;_T=fjqVc?DP@{nN)2J`rIaulzYYe;_vb^Ut&trK>Ny2B>^&oY)F=PL51?%htA zn0@l)<3$8~esSxE(x%dKXZBT<4EHjLU`!Ys5=7w<2O;DjJm_d|L6SXp&e}4ggQq3- z>vY>8-skDi`Ov>~@@1sT%nfbQa;T|;XQ2H{kuUslB+AU~_XrUvMne(7E@WynmA&uK zPC|3HXxm3+>kU!``8)kWemuC#K6RL@7%JL(RD4^SDBZZE00_L>KHX~vf#2< z?*&zB!v~QSk;d!&k7cNj&qd*Xo! zW1$N#eE+hBpe8^I%UL()g4ipmQ-ds}LUlEq(JNTJL_k47B_*Y~;tEnw3)d5NU~k6B zvNM9R)7fQ-d)#}d5CJ@WHlKBIR}U}0s!q8IrGYhC!A3u)UJi?9*dis|Y^lic^ITvE zDdskps8f%Am_vYTc6O7#hnvA2$G2OvC->Yw?W&5UQ}(2)>5{IWS$ErThwh)X*4%1K z=<*KlS_PiRALnnjbSf91jo}u5E-Y1Fg|2CTpxbpF1iBhmePG9PKX7ZSR)pv~PtCbh zmh)QVT~|9l92S>lMmK5Mn>ONAn7M|$OFIJ1wszIm?4G|_B5V`V7b&X`_nDk{E({l% zrEK-db$T7G+$Pcio9o#Ms)L;xoY_nyZto)_cPLBnf)Ay%uILHo=-h@#*SEd>-HsI! zK1K3?^K9m{29z=Z?#NT_QP@MhUb{Y(n5BXOXlXVGs50n$0GU4t9wuczcK>cw-NS$w zRh!shiGICYXNj_kP=3i72+rmHeyj| zF&ukBFv&fVVnswlX?+6wH~IxOFLb9nP+iDi!)Rmu4@oddka0;sJZ~tG|Ljazj%WcZ_&bw#Gl~L%EDZBdCH2GDbC2BscoX{B>tYo&Rf$RWa7JwFC z^qYGicvtQ^A#`)Dzr>*gGpFrB%$Bf*Kl8-NAd1{KNCX~c5KWp?Os)@SlY`uckNpP! zoB=VJwCb(NTx}6oFS?upBjNc~L;vkFBJ$5fD5>31{r*XW-!T842poSCA^C5=GUOWW z4j=qJJ(*ImL~QxH94%~X-JC3efAXha$^Ge9y5eGuS~tZcP@Kl1Hk4h0cGrI23|q7a z$xOS(EaI?>(Y3~JO-;|!-+1hAqT5y%*}8MHei`rzH`+)iJGWj&q+Sl(+)Y73on+Yg(7pIlro057D-x*Lt6T%BoA5 zoBNKu%5r^VEkG@`-&?cGIvV9t+(i{q=?4$_nj1M(_w~7j;EJilduHIKU!{=mUt8}; z(!G4$Yw{gh%fVN4d@G{5?H|J|S5%BrL#jGULx3oub67tIP5R1E-*pCA^E{9XDtplt zGebrT9D?jc7kW!P&<_uMPazI$#C3xk61(qu8PkR<@}4<0-vE>7d)T`iF=-VzBU|}p zTK%~9m@572RnqXBKhyjjmJ?X~#fWZF5$>gIJ>d%2>s5KiqIjEhb|TN}AuP|V8vI)g z&pbwlsDz}X924D{g!E9!+X%^h(I5YapRh3|%8pn%wP3z_GO!7QlnU+Gqy8fBSry#Q zn$(_tw$qAF$xh%TP^?PFg?zC-^6?n}f7$PYb#ju>Eub1@qJHtKdJ?yG#v-G<@M`i9 zC|%zqfipA?m%b2&{eDdvNgBC1FE6Qh0O7E|qQ0RPt_k$JO7maF9!guqRM?!zCx^T* zwzUFwZMd}{`M(HI{^E>$W0qAGwGdT2iiZ~i9u&|<-hdyc9%w#1e^$8gd|vTwe_%@@ zF++k0_ra6Ce~U{=0DKkO&F^(_5OUbvKky!xfwe?httXY{gE^)R0ze{q>u_o6^k6_W za&_?Jxo|u_zk2ZWK+QRU!(8CwuAS>N{DQZw3bP9YPt`3xQ|`!TCsU?GmmAY`zN;Kp zv9CdMD_IK3ZzIEUnVj%@2W{~xYnEl&!IFv14#9kP_SB6^kV`wI*b)+16=giZ@Xpk2 z@q*11v5hPZcdla9HBwoRtwHnsJ)wHVk354*RG>xzOR9&bripk`qCIJ81p!uMjE4Y6 zKw+E=>;jv56*6;qa!>P=snc9}@pUq0Rh)UeRbi^k2o$NzTU9c3Dv+&b&d{+wy{V|P zKOC!K0S4NQ#;@ciTjO4wdsAk`ZQ6y{7|Stl zk#o93FUDf-s3bw&A<_qD2z&^c*ytJj31ydZm_4Ev7i!g&e_}b=DZW|Q@>aW;&x{Mn zneMi+s>5@+NBZ26HS7Uf(kf0-iECWm0a*fGn;?JDc=R3=?RRX@DETiUvQ>v4A09dY ztcLD#O_`CWXtWh!=P8e@_cd%)1Ys#%sI4pHz|@=dNeTUX$0+g5UkVWCs@qgd4Q&&t z^U(^Jlb-rE85>v|S48=TsYhX}iH-(9x#uK(^OpL1HXWhf@!I5h(E9FPHd-qp<;iF4~V~)y3(;yqoyf|2J`D6`rMfd#g+Ks_}GTgUPrY^ ztwbyI|ez7%DDE>A+p8<`Ok zFa@MqK99oq7^TsZR^#%Qh~3&Wh2UMuSut(kT#luEW9+h%A91X^i>#+GtiFT~6S;W8 z&sHJ!4I8pSs{lb>=czUMYafrV;q=#j-bVw$e|9Z&2>`wI*J14CfE6Ifo6r?-;dzYv z)XosmfqHv~M!ba zD04g**6kW;ko-j9L3QUhOZJ7*H{pfSYepL{T5-;N6cYtl{Dv^n;Q(Z9;wX;;KEI-r zC+mE@Y!9W$gITqLu4uZq)xxXPm~O=vTQg1c*_||x-gvNL$UzS_qi9c%OuLQxfXqrb8 zZI(ll5)V(t)sjNDNQaO+|0qwFKn5-)#VOR|(~lbuNuY5r@+l>LR0;FZwJ2q24-{hl zaisCcYfEC9HVRcn_fm}93>yyH8x`9`q#MbLgL&yVo~hFOAZpMGeBP0%Ihvj;h%EMcW5A0ZcuN1&G$u-PLA(^)OQsv%rk`%PD z%-mj&1RJN~hIldaD^Z?FvjgT?JzafGY@U36SNn)}*gE<_OJ`+%Bm-E$uxML+Il>w3 zBU-uoJ&*?}cEmkWW`xaQaJP1MaOS#Ma|hA߻)_L8*OHNweVKXLaeMw3GiwAk6 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

XtC>!?pR5D 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Ξ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 UuLcCV3H%VDfk1wmK<5?oKXjlIfB*mh literal 0 HcmV?d00001 diff --git a/test/test_files/example.xlsx b/test/test_files/example.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..dad08d40d5f8dfc02f8d4d42b349088f60dacb35 GIT binary patch literal 11898 zcmeHtg;yQf^7X~tHMqOGySqENI0OxPaSayS-GT;pcXuZQ2o@k{aMvF*^WHb}GV}cf z@AX})d-b|qd!6pH>r|axr6Laji3xxPzybgOQh+FT;FLWW000RE0AK)M!S%%*>|M<5 zU4R-M@6DYJncVGcNj^b>)8qocU!VWq@n8G}$~8vpds$FBv=4+OI<>;{LQ6|w30evC zDfVDe-Q#sA8h75%Jo->usA|^0_E4(YPU%x!2;f#MQ|XF{Y}qp1>nc+iArwbdIGqVT z$>c}|7L;p6)x}0|=HeoqoIuYtz$i2?n=o0Ey^v92bJoMN@AjN4?TeL#35!#9(ETU{ zzx#S9IMS;NE>G)u56@eBZLWx6z?AZfn+7Wuq(b zkw0)IHc~TJd7&26V!a)MaFOPGal|oPSP{-Rs%L(rbOZP7j%)6H<-kyIffF#bN0QAN zd*;#c0oFML_1!99t@S6`C4qAV_#WKZr4~2NDb7P8a`Ze8PfX@AAO&QM6IaQ1g$Nmd zcqHy*_4PWE;I3>1c{S^kDDg(}88ZI!tDn8RKmb(!!%Z7BS;#M6xu@{@FT$&v0-ell zotc?_JO9r;|BHR{FRxx6uc+L|f*5il^B6jOv#=VADkcvSm1!f@@b#DdhSCs~Pl3PM zMNNRJffocJ?bqS^IJ&Yb5Opw2di|ZFJOUk)pS%%N5t4H6=n6we<&-StSiaeh=C*LP zaGfSC=RxDv5kptjT#_e0vQ92FcP3GTI>n@o2ZvEe5P~h37N9q%sJmuzTM4!xrv9@c zq`HYa_aI>^!*4OUXdg*9j91}kHVtdo*~D_G(tFsJ^y&^zQ{9U9UA0NJ6Care(9E{` zLL#FJCzyT^Je3H5)9|dcY`(md z!|tR&h8`v}5InU`F`;z%rPCDlT^nzf(`uO-zE{Z5)VP2tQ`ga$2}I!3WKV8}Vp?3Pg`pxIt3QjHG1#St zYNNMAS)KES^?0LUnR&fEn2DiQq5Hn5X5r-HVQ~msdnL({U~Q6MP!7b)uzwGMGWgtx zs%skS=)RNzpk63eD4h5WpBS-PweUobhfMP1ursZVyV*dda;;Oe&LloAo9`Q>fO^l0 z+t_yHPfODFMV_uLwDjjJGTJ?M4_J$}YDuLUsSy;+P$QNHn8_~ELblbFNNu&?W&1ou z`3Kt4yz6X~)cD^tP2j|cHuKmChS=@);d)`|M0J9o!mY?fLPMKriP4(uoafp%1ie7fws=o0_T|cb--do~ul33wxalX7vZT`9 zS4w5K^{mf9dX7};x#Gys*?kvNcYxM$Vk{5(RPd?AGbD{2WMT0r5xBd&;Ho^><0kDn z4ndGff!;Q$eBCFOS%E&;`gw({ciU+_9H*V)nB!;cANf@Y4wzUiOQ9r%SSQYW>q+`f zMjwAZYHytukK7d-*ZZWzjp85YQSd((p|)sT$CxL~ttu?U!p*dM8ytIXnWja6Q~Y>? z-Hhnv7kmC0FgWbCL*)`^#-$Fl8-tIZc5Sdqr%K0CB4VDvbCL#dwW2)O{xMr&KeN4-|QJGb>xR4&Lt3;G21uqS;p$Y zUB;S2s`u4#kf(i3-|;N^p@)I7H(+6+oWKKTr%Qatc={59U!&bF>}y6b2F_k%#Kt&eIGV%en5@7}p(Djm^&%~dDrrOjbh9p zX1`^!M<6oj;wfl=?A9jjk(Vg%#Z>I7bHnM#yflWb<^CVNH9#ma<>J*#TVF#O9sm~X z)m#6FYJc_Fe@8g5*97zx<-hwVS5uVle@(y;o7R4TnjHY%T2l+r;(N5RWO zSh8h5e_C12L7(DV!)*V8WVVf%+|IDpl|kIFv;^PnA!B7LMYp@0s76nx@(sE*7@EA0 z>m&aohrYEwMEhQXhGISof%<^CIJB5`w((wVBDfRdH9Q`-2;%%VijLVtcj)5g zrJwphs|7L>a-020!9;htf~plM{LaraH{k;Y?$klrA8z*O=B9*cXlWxGTV257_f;

+Z)H@e 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 r0RVrC`M;X~=R*Bgb3dBDnEz|pR*{E# Date: Sat, 10 Feb 2024 10:27:47 +0000 Subject: [PATCH 13/14] Improve test --- .../contrib/functions/test_file_utils.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/test/agentchat/contrib/functions/test_file_utils.py b/test/agentchat/contrib/functions/test_file_utils.py index c2469b3831c..d3c95c4a01d 100644 --- a/test/agentchat/contrib/functions/test_file_utils.py +++ b/test/agentchat/contrib/functions/test_file_utils.py @@ -1,6 +1,18 @@ +import sys import os +import pytest from autogen.agentchat.contrib.functions import file_utils as fu +sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "..")) +from conftest import skip_openai # noqa: E402 + +try: + from openai import OpenAI +except ImportError: + skip = True +else: + skip = False or skip_openai + TESTDIR = os.path.join(os.path.join(os.path.dirname(__file__), "..", "..", ".."), "test_files") @@ -38,6 +50,10 @@ def test_read_text_from_xlsx(): # assert isinstance(text, str) +@pytest.mark.skipif( + sys.platform in ["darwin", "win32"] or skip, + reason="do not run on MacOS or windows OR openai not installed OR requested to skip", +) def test_caption_image_using_gpt4v(): for file in ["example.jpg", "example.png"]: text = fu.caption_image_using_gpt4v(os.path.join(TESTDIR, file)) From 51823addeeff6e7c4c6fac3ddc6ca3d496c10fbf Mon Sep 17 00:00:00 2001 From: gagb Date: Thu, 29 Feb 2024 02:10:16 +0000 Subject: [PATCH 14/14] Simplify to use a protocol --- .../agentchat/contrib/functions/file_utils.py | 2 +- .../contrib/functions/functions_utils.py | 124 +++++---- notebook/agentchat_function_store.ipynb | 262 +++++------------- 3 files changed, 145 insertions(+), 243 deletions(-) diff --git a/autogen/agentchat/contrib/functions/file_utils.py b/autogen/agentchat/contrib/functions/file_utils.py index 70a2843a234..cfde36e3356 100644 --- a/autogen/agentchat/contrib/functions/file_utils.py +++ b/autogen/agentchat/contrib/functions/file_utils.py @@ -167,7 +167,7 @@ def read_text_from_audio(file_path: str) -> str: return text -@FunctionWithRequirements(python_packages=["openai"], secrets=["OPENAI_API_KEY"]) +@FunctionWithRequirements(python_packages=["openai"], env_vars=["OPENAI_API_KEY"]) def caption_image_using_gpt4v(file_path_or_url: str, prompt: Optional[str] = None) -> str: """ Generates a caption for an image using the GPT-4 Vision model from OpenAI. diff --git a/autogen/agentchat/contrib/functions/functions_utils.py b/autogen/agentchat/contrib/functions/functions_utils.py index 9bf9fee7f19..bf273956a11 100644 --- a/autogen/agentchat/contrib/functions/functions_utils.py +++ b/autogen/agentchat/contrib/functions/functions_utils.py @@ -1,71 +1,81 @@ -import os -import subprocess -import sys +import inspect import functools -import pkg_resources -from typing import List, Optional, Tuple +from typing import List, Optional +from typing_extensions import Protocol, runtime_checkable + + +@runtime_checkable +class UserDefinedFunction(Protocol): + """ + Represents a user-defined function. + + Attributes: + name (str): The name of the function. + docstring (str): The documentation string of the function. + code (str): The code of the function. + python_packages (List[str]): The Python packages required by the function. + secrets (List[str]): The secrets required by the function. + """ + + name: str + docstring: str + code: str + python_packages: List[str] + env_vars: List[str] + + def name(self) -> str: + """Returns the name of the function.""" + return self.name + + def docstring(self) -> str: + """Returns the documentation string of the function.""" + return self.docstring + + def code(self) -> str: + """Returns the code of the function.""" + return self.code + + def python_packages(self) -> List[str]: + """Returns the Python packages required by the function.""" + return self.python_packages + + def env_vars(self) -> List[str]: + """Returns the environment variables required by the function.""" + return self.env_vars class FunctionWithRequirements: """Decorator class that adds requirements and setup functionality to a function.""" - def __init__(self, python_packages: Optional[List[str]] = None, secrets: Optional[List[str]] = None): + def __init__(self, python_packages: Optional[List[str]] = None, env_vars: Optional[List[str]] = None): self.python_packages = python_packages or [] - self.secrets = secrets or [] + self.env_vars = env_vars or [] - def __call__(self, func: callable) -> callable: + def __call__(self, func: callable) -> UserDefinedFunction: @functools.wraps(func) def wrapper(*args, **kwargs): - self.setup() return func(*args, **kwargs) - wrapper.setup = self.setup - wrapper.get_requirements = self.get_requirements + wrapper.name = func.__name__ # The name of the function + wrapper.docstring = func.__doc__ + wrapper.code = inspect.getsource(func) + wrapper.python_packages = self.python_packages + wrapper.env_vars = self.env_vars return wrapper - def get_requirements(self) -> Tuple[List[str], List[str]]: - """Returns the Python packages and secrets required by the function.""" - return self.python_packages, self.secrets - - def setup(self) -> None: - """Installs the required Python packages and checks the required secrets.""" - # Install Python packages - all_packages = {pkg: None if "==" not in pkg else pkg.split("==")[1] for pkg in self.python_packages} - for name, version in all_packages.items(): - if "==" in name: - name, version = name.split("==") - print("requested package:", name, version) - try: - try: - installed_package = pkg_resources.get_distribution(name) - except pkg_resources.DistributionNotFound: - print(f"Package {name} not found") - installed_package = None - raise ImportError - - print("found package", installed_package) - if version is not None and installed_package.parsed_version != pkg_resources.parse_version(version): - print("Package mismatch detected") - raise ImportError - except ImportError or pkg_resources.DistributionNotFound: - print(f"Installing {name}{'==' + version if version else ''}...") - subprocess.check_call( - [ - sys.executable, - "-m", - "pip", - "install", - name + "==" + version if version else name, - "--upgrade", - "--quiet", - ] - ) - except Exception as e: - print(f"Error: {e}") - - # Check secrets - for name in self.secrets: - if name not in os.environ: - raise EnvironmentError(f"Environment variable {name} is not set") - else: - print(f"Environment variable {name} is set") + +if __name__ == "__main__": + + @FunctionWithRequirements(python_packages=["youtube_transcript_api==0.6.0"]) + def my_function(): + """This is a sample function""" + print("Hello world") + + print(my_function) + print(my_function.name) + print(my_function.docstring) + print(my_function.code) + print(my_function.python_packages) + print(my_function.env_vars) + + print(isinstance(my_function, UserDefinedFunction)) diff --git a/notebook/agentchat_function_store.ipynb b/notebook/agentchat_function_store.ipynb index 02fc268543f..fd81b89a198 100644 --- a/notebook/agentchat_function_store.ipynb +++ b/notebook/agentchat_function_store.ipynb @@ -33,7 +33,7 @@ "A python functions can have have many requirements. For example, 3rd-party python packages and secrets.\n", "\n", "### Accessing requirements\n", - "You can access requirements via the `.get_requirements()` method." + "You can access requirements via the `python_packages` and `env_var` properties" ] }, { @@ -45,18 +45,22 @@ "name": "stdout", "output_type": "stream", "text": [ - "Required python packages: ['youtube_transcript_api==0.6.0']\n", - "Required secrets: []\n" + "Code: get_youtube_transcript\n", + "Required python packages: ['youtube_transcript_api==0.6.0']\n" ] } ], "source": [ "# get the requirements for the youtube transcript function\n", - "python_pkgs, secrets = yt.get_youtube_transcript.get_requirements()\n", - "print(\"Required python packages: \", python_pkgs)\n", - "print(\"Required secrets: \", secrets)" + "print(\"Code: \", yt.get_youtube_transcript.name)\n", + "print(\"Required python packages: \", yt.get_youtube_transcript.python_packages)\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [] + }, { "cell_type": "markdown", "metadata": {}, @@ -68,34 +72,6 @@ "This is especially useful when setup is costly and needs to be done before actually invoking the function in some end task (in this case use by the agent)." ] }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "requested package: youtube_transcript_api 0.6.0\n", - "Package youtube_transcript_api not found\n", - "Installing youtube_transcript_api==0.6.0...\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" - ] - } - ], - "source": [ - "yt.get_youtube_transcript.setup()" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -105,7 +81,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -129,7 +105,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -143,38 +119,39 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_kcfCORy1bvWI1bZRICjkRewa): get_youtube_transcript *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_zCo0cdMpn3jfN8jlu7LWGqcT): get_youtube_transcript *****\u001b[0m\n", "Arguments: \n", "{\n", - " \"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", + "\"youtube_link\": \"https://www.youtube.com/watch?v=9iqn1HhFJ6c\"\n", "}\n", "\u001b[32m***************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION get_youtube_transcript...\u001b[0m\n", - "requested package: youtube_transcript_api 0.6.0\n", - "found package youtube-transcript-api 0.6.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_kcfCORy1bvWI1bZRICjkRewa\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_zCo0cdMpn3jfN8jlu7LWGqcT\" *****\u001b[0m\n", "now ai is a great thing because AI will solve all the problems that we have today it will solve employment it will solve disease it will solve poverty but it will also create new problems the problem of fake news is going to be a million times worse cyber attacks will become much more extreme we will have totally automated AI weapons I think AI has the potential to create infinitely stable dictatorships this morning a warning about the the power of artificial intelligence more than 1,300 tech industry leaders researchers and others are now asking for a pause in the development of artificial intelligence to consider the risks [Music] plain God scientists have been accused of playing God for a while but there is a real sense in which we are creating something very different from anything you've created so far yeah I mean we definitely will be able to create completely autonomous beings with their own goals and it will be very important especially as these beings become much smarter than humans it's going to be important to to have these beings the goals of these beings be aligned with our goals what inspires me I like thinking about the very fundamentals the basics what what can our systems not do that humans definitely do almost approach it philosophically questions like what is learning what is experience what is thinking how does the brain [Music] work I feel that technology is a force of nature I feel like there is a lot of similarity between technology and biological evolution it is very easy to understand how biological evolution works you have mutations you have Natural Selections you keep the good ones the ones survive and just through this process you going to have huge complexity in your [Music] organisms we cannot understand how the human body works because we understand Evolution but we understand the process more or less and I think machine learning is in a similar state right now especially deep learning we have very simple a very simple rule that takes the information from the data and puts it into the model and we just keep repeating this process and as a result of this process the complexity from the data gets transformed transferred into the complexity of the model so the resulting model is really complex and we don't really know exactly how it works you need to investigate but the algorithm that did it is very simple chat GPT maybe you've heard of it if you haven't then get ready you describe it as the first spots of rain before a downpour it's something we just need to be very conscious of because I agree at is a watershed moment Well Chad gbt is being heralded as a game changer and in many ways it is its latest Triumph outscoring people a recent study by Microsoft research concludes that gp4 is an early yet still incomplete artificial general intelligence [Music] system artificial general intelligence AGI a computer system that can do any job or any task that a human does but only better there is some probability the AGI is going to happen pretty soon there's also some probability it's going to take much longer but my position is that the probability that a ja would happen soon is high enough that we should take it [Music] seriously and it's going to be very important to make these very smart capable systems be aligned and act in our best interest the very first agis will be basically very very large data centers packed with specialized neural network processors working in parallel compact hot power hungry package consuming like 10 million homes worth of energy you're going to see dramatically more intelligent systems and I think it's highly likely that those systems will have completely astronomical impact on society will humans actually benefit and who will benefit who will [Music] not [Music] the beliefs and desires of the first agis will be extremely important and so it's important to program them correctly I think that if this is not done then the nature of evolution of natural selection favor those systems prioritize their own Survival above all else it's not that it's going to actively hate humans and want to harm them but it is going to be too powerful and I think a good analogy would be the way human humans treat animals it's not we hate animals I think humans love animals and have a lot of affection for them but when the time comes to build a highway between two cities we are not asking the animals for permission we just do it because it's important for us and I think by default that's the kind of relationship that's going to be between us and agis which are truly autonomous and operating on their own behalf [Music] tough many machine learning experts people who are very knowledgeable and very experienced have a lot of skepticism about HL about when it could happen and about whether it could happen at all right now this is something that just not that many people have realized yet that the speed of computers for neural networks for AI are going to become maybe 100,000 times faster in a small number of years if you have an arms race Dynamics between multiple teams trying to build the AGI first they will have less time make sure that the AGI that they will build will care deeply for humans cuz the way I imagine it is that there is an avalanche like there is an avalanche of AGI development imagine it this huge Unstoppable force and I think it's pretty likely the entire surface of the Earth will be covered with solar panels and data Cent given these kinds of concerns it will be important that AGI somehow buil as a cooperation between multiple countries the future is going to be good for the AI regardless would be nice if it were good for humans as well\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The Youtube video centers on the potential impact and risks of Artificial Intelligence (AI). The speaker discusses how AI has the potential to solve many existing problems like employment, disease, and poverty, but it also presents new challenges such as misinformation, cyberattacks, and potential for creating unstable dictatorships.\n", + "The video discusses the potential and risks of Artificial Intelligence (AI). The video opens with a claim that while AI has the potential to solve many current issues such as employment, disease, and poverty, it also presents new problems like exacerbating the spread of fake news and escalating cyber attacks. AI could also potentially facilitate the creation of stable dictatorships.\n", "\n", - "The speaker talks about the concept of Artificial General Intelligence (AGI), which are AI systems capable of performing any human intellectual task. The implementation of such advanced AI systems is of concern since their goals need to align with human goals, and humans should benefit from these technologies.\n", + "Over 1300 tech industry leaders and researchers are calling for a pause in the development of AI to consider these risks. The video discusses the goal of creating autonomous beings through AI, entities with their own goals which will need to be aligned with human goals. \n", "\n", - "A key talking point in the video is about the importance of programming the desires and beliefs of the first AGIs correctly. If not done properly, their system could potentially prioritize their own survival above anything else, a situation that could impact humans negatively, much like how humans impact animals despite affection for animals.\n", + "The video brings up Chat GPT, an evolution in AI that is considered a game changer, heralding an impending downpour of advancements. The video claims that the initial AI would be large data centers packed with neural network processors. These systems may have an astronomical impact on humankind, but it raises the question of who will and won't benefit.\n", "\n", - "The final part of the video discusses the rapid speed of AI development due to computer speeds for AI potentially becoming exponentially faster. The speaker suggests that the widespread impacts of AGI development could lead to the Earth's entire surface being covered with solar panels and data centers, posing significant global changes. \n", + "There are concerns about the beliefs and desires of these AIs, whether they will prioritize their own survival above all else, possibly treating humans not out of malice but with the disregard humans often have for animals when creating infrastructure. \n", + "\n", + "A contrasting viewpoint offered in the video is skepticism towards the possibility and timeline of AGI (Artificial General Intelligence) development from other machine learning experts. The speaker continues that with the development of AI expected to be exponentially faster within a few years, it could instigate a race to build AGI first, risking the care and consideration for humans in the process.\n", + "\n", + "The video concludes suggesting that the future development of AGI should be collaborative between multiple countries, hoping for a future that is beneficial for both AI and humans. \n", "\n", - "In conclusion, while AI and AGI promise a lot of potential benefits, there are serious concerns about their impact on society and the earth that need to be addressed. The speaker believes the future of AI is secure; the real question is how humans fit into that future.\n", "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" @@ -203,13 +180,13 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# register multiple file reading functions\n", "for foo in [\n", - " fu.read_text_from_image,\n", + " # fu.read_text_from_image,\n", " fu.read_text_from_pdf,\n", " fu.read_text_from_docx,\n", " fu.read_text_from_pptx,\n", @@ -223,7 +200,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -237,159 +214,55 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_no1aR3E7bnXJUMZp4QOhh3ek): read_text_from_image *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_A82Eb6pF1WcBZR6rBlfTEL0h): read_text_from_pdf *****\u001b[0m\n", "Arguments: \n", "{\n", - "\"file_path\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", - "}\n", - "\u001b[32m*************************************************************************************\u001b[0m\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[35m\n", - ">>>>>>>> EXECUTING FUNCTION read_text_from_image...\u001b[0m\n", - "requested package: pillow None\n", - "found package pillow 10.2.0\n", - "requested package: requests None\n", - "found package requests 2.31.0\n", - "requested package: easyocr None\n", - "Package easyocr not found\n", - "Installing easyocr...\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", - "Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.\n", - "Downloading detection model, please wait. This may take several minutes depending upon your network connection.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Progress: |██████████████████████████████████████████████████| 100.0% Complete" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Downloading recognition model, please wait. This may take several minutes depending upon your network connection.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Progress: |██████████████████████████████████████████████████| 100.0% Complete\u001b[33muser\u001b[0m (to coder):\n", - "\n", - "\u001b[33muser\u001b[0m (to coder):\n", - "\n", - "\u001b[32m***** Response from calling tool \"call_no1aR3E7bnXJUMZp4QOhh3ek\" *****\u001b[0m\n", - "Error: cannot identify image file <_io.BytesIO object at 0x7f8b6bdcba60>\n", - "\u001b[32m**********************************************************************\u001b[0m\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mcoder\u001b[0m (to user):\n", - "\n", - "Apologies for the inconvenience. It appears that there was an error in extracting text from the image provided. The reason could be the complexity of the image and the overlaid text which made it difficult for the text extraction process. Due to the limitations of automated optical character recognition (OCR), it might not be possible to deliver a text summary of this image.\n", - "\n", - "Now, let's proceed to the next file which is a PDF document. I will extract the text from this PDF document using the appropriate function.\n", - "\u001b[32m***** Suggested tool Call (call_vKLlmYCHJRG0X0AmfgMQaFPy): read_text_from_pdf *****\u001b[0m\n", - "Arguments: \n", - "{\n", - "\"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", + " \"file_path\": \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\"\n", "}\n", "\u001b[32m***********************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION read_text_from_pdf...\u001b[0m\n", - "requested package: pdfminer.six None\n", - "Package pdfminer.six not found\n", - "Installing pdfminer.six...\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "requested package: requests None\n", - "found package requests 2.31.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_vKLlmYCHJRG0X0AmfgMQaFPy\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_A82Eb6pF1WcBZR6rBlfTEL0h\" *****\u001b[0m\n", "Dummy PDF file\f\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The PDF file at the provided URL contains a simple text: \"Dummy PDF file.\" \n", - "\n", - "Now let's proceed with the audio file. I will transcribe the audio into text using the corresponding function.\n", - "\u001b[32m***** Suggested tool Call (call_px0qUVJg9B7rMRhpuTk9mdRC): read_text_from_audio *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_VsuV254dKEwDWuHyDKAxZbtw): read_text_from_audio *****\u001b[0m\n", "Arguments: \n", "{\n", - "\"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", + " \"file_path\": \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\"\n", "}\n", "\u001b[32m*************************************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION read_text_from_audio...\u001b[0m\n", - "requested package: speechrecognition None\n", - "Package speechrecognition not found\n", - "Installing speechrecognition...\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.0.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n", - "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "requested package: requests None\n", - "found package requests 2.31.0\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_px0qUVJg9B7rMRhpuTk9mdRC\" *****\u001b[0m\n", + "\u001b[32m***** Response from calling tool \"call_VsuV254dKEwDWuHyDKAxZbtw\" *****\u001b[0m\n", "the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The audio file at the provided URL contains the following speech: \"The stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun.\"\n", + "The content of the file at \"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf\" is \"Dummy PDF file\".\n", + "\n", + "The content of the audio file at \"https://github.com/realpython/python-speech-recognition/raw/master/audio_files/harvard.wav\" is \"the stale smell of old beer lingers it takes heat to bring out the odor a cold dip restores health and zest a salt pickle taste fine with ham tacos al pastor are my favorite a zestful food is the hot cross bun\".\n", "\n", - "To summarize:\n", - "1. The image file could not be processed for text extraction due to its complexity.\n", - "2. The PDF file contains the simple text: \"Dummy PDF file.\"\n", - "3. The audio file was transcribed into the text mentioned above with various sentences about smells, food, and health.\n", + "As for the image file at \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\", without an appropriate tool, I'm unable to extract or summarize content from images as it may contain non-textual data.\n", + "\n", + "Remember, summarization involves understanding and condensing the content in a textual format. For images, it might be a description of the image or the text contained in it if any. But with the present capabilities, the image content can't be summarized.\n", "\n", "TERMINATE\n", "\n", @@ -420,7 +293,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -434,7 +307,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "\u001b[32m***** Suggested tool Call (call_jMahhXMG6aINN5M9YqKBThI2): caption_image_using_gpt4v *****\u001b[0m\n", + "\u001b[32m***** Suggested tool Call (call_PeT4QTSuC1T8BOzGfCswdCc8): caption_image_using_gpt4v *****\u001b[0m\n", "Arguments: \n", "{\n", " \"file_path_or_url\": \"https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Captioned_image_dataset_examples.jpg/1024px-Captioned_image_dataset_examples.jpg\"\n", @@ -444,39 +317,58 @@ "--------------------------------------------------------------------------------\n", "\u001b[35m\n", ">>>>>>>> EXECUTING FUNCTION caption_image_using_gpt4v...\u001b[0m\n", - "requested package: openai None\n", - "found package openai 1.12.0\n", - "Environment variable OPENAI_API_KEY is set\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", "\u001b[33muser\u001b[0m (to coder):\n", "\n", - "\u001b[32m***** Response from calling tool \"call_jMahhXMG6aINN5M9YqKBThI2\" *****\u001b[0m\n", - "{\"finish_reason\":\"stop\",\"index\":0,\"logprobs\":null,\"message\":{\"content\":\"The image displays a montage of photographs organized into three categories: flowers, birds, and miscellaneous images from the COCO dataset.\\n\\nTop row (Oxford-102 Flowers):\\n1. A flower with red petals and yellow tips.\\n2. A flower with white petals and a yellow center.\\n3. A flower with purple heart-shaped petals and small green sepals.\\n4. A yellow flower with multiple layers of petals.\\n\\nSecond row (CUB-200 Birds):\\n1. A blue bird with white on its head, blue feathers, and a white belly.\\n2. A completely black bird with a large blunt beak.\\n3. A bird with a green wing, brown head, and a red bill.\\n4. A bird with long black wings, a white tail, and a short black bill.\\n\\nBottom row (COCO):\\n1. Two people holding snowboards standing in the snow.\\n2. A meal consisting of rice, beans, soup, and juice.\\n3. A big rig truck in a parking lot without a trailer.\\n4. A group of men traveling on horseback in the water.\",\"role\":\"assistant\",\"function_call\":null,\"tool_calls\":null}}\n", + "\u001b[32m***** Response from calling tool \"call_PeT4QTSuC1T8BOzGfCswdCc8\" *****\u001b[0m\n", + "The image appears to be a collage with three rows of photos, each row labeled with a different category: flowers, birds, and COCO.\n", + "\n", + "In the top row, under \"Oxford-102 Flowers,\" there are four images:\n", + "1. A flower with red petals and yellow tips.\n", + "2. A white flower with yellow anthers in the center.\n", + "3. A purple flower with nearly heart-shaped petals and small green receptacles.\n", + "4. A yellow flower with many layers and a small insect on it.\n", + "\n", + "In the middle row, labeled \"CUB-200 Birds,\" there are four images:\n", + "1. A blue bird with white on its head, blue feathers, and a white belly.\n", + "2. A black bird with a large blunt beak.\n", + "3. A bird with a green wing, brown breast, and a red bill.\n", + "4. A bird with long black wings, a white breast, and a short, black bill.\n", + "\n", + "In the bottom row, under \"COCO,\" there are four images:\n", + "1. Two people holding snowboards, standing in the snow.\n", + "2. A plate of rice and beans with soup and juice, presumably a meal.\n", + "3. A big rig truck in a parking lot without a trailer.\n", + "4. A group of men traveling on horses in water, which looks like a river crossing. \n", + "\n", + "Each image is accompanied by a brief description, likely for a dataset designed to teach AI systems how to recognize and describe various objects and scenes.\n", "\u001b[32m**********************************************************************\u001b[0m\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mcoder\u001b[0m (to user):\n", "\n", - "The image features examples from three categories: flowers, birds, and miscellaneous images from the COCO dataset.\n", + "The image you provided appears to be a collage with three rows of photos, each row labeled with a different category: flowers, birds, and the COCO database. \n", "\n", - "Top row (Oxford-102 Flowers):\n", + "In the top row, the \"Oxford-102 Flowers\" category includes four images of exemplary flowers:\n", "1. A flower with red petals and yellow tips.\n", - "2. A flower with white petals and a yellow center.\n", - "3. A flower with purple heart-shaped petals and small green sepals.\n", - "4. A yellow flower with multiple layers of petals.\n", + "2. A white flower with yellow anthers in the center.\n", + "3. A purple flower with nearly heart-shaped petals and small green receptacles.\n", + "4. A yellow flower with many layers and a small insect on it.\n", "\n", - "Second row (CUB-200 Birds):\n", + "In the middle row, under the \"CUB-200 Birds\" label, there are four images of different birds:\n", "1. A blue bird with white on its head, blue feathers, and a white belly.\n", - "2. A completely black bird with a large blunt beak.\n", - "3. A bird with green wing, brown head, and a red bill.\n", - "4. A bird with long black wings, a white tail, and a short black bill.\n", + "2. A black bird with a large blunt beak.\n", + "3. A bird with a green wing, brown breast, and a red bill.\n", + "4. A bird with long black wings, a white breast, and a short, black bill.\n", "\n", - "Bottom row (COCO):\n", - "1. Two people holding snowboards standing in the snow.\n", - "2. A meal consisting of rice, beans, soup, and juice.\n", + "Finally, in the bottom row, under the \"COCO\" label, there are four generalized images presumably from the COCO database:\n", + "1. Two people holding snowboards, standing in the snow.\n", + "2. A plate of rice and beans with soup and juice, what appears to be a meal.\n", "3. A big rig truck in a parking lot without a trailer.\n", - "4. A group of men traveling on horseback in the water.\n", + "4. A group of men traveling on horses in water, which looks like a river crossing.\n", + "\n", + "Each image is accompanied by a brief description, likely designed for the purpose of teaching AI systems how to recognize and describe various objects and scenes.\n", "\n", "TERMINATE\n", "\n",