From 18a17bede099a1f188c0f1e55b0665bc65aec43c Mon Sep 17 00:00:00 2001 From: yzlin Date: Wed, 7 Feb 2024 13:00:31 +0800 Subject: [PATCH] create ci example folder, mv existing and create new --- examples/{ => ci}/crawl_webpage.py | 0 examples/ci/data_analysis.py | 14 ++++++++++++++ examples/{ => ci}/imitate_webpage.py | 2 +- examples/ci/rm_image_background.py | 15 +++++++++++++++ examples/{ => ci}/sd_tool_usage.py | 0 examples/ci/solve_math_problems.py | 17 +++++++++++++++++ 6 files changed, 47 insertions(+), 1 deletion(-) rename examples/{ => ci}/crawl_webpage.py (100%) create mode 100644 examples/ci/data_analysis.py rename examples/{ => ci}/imitate_webpage.py (92%) create mode 100644 examples/ci/rm_image_background.py rename examples/{ => ci}/sd_tool_usage.py (100%) create mode 100644 examples/ci/solve_math_problems.py diff --git a/examples/crawl_webpage.py b/examples/ci/crawl_webpage.py similarity index 100% rename from examples/crawl_webpage.py rename to examples/ci/crawl_webpage.py diff --git a/examples/ci/data_analysis.py b/examples/ci/data_analysis.py new file mode 100644 index 000000000..8dc4340d4 --- /dev/null +++ b/examples/ci/data_analysis.py @@ -0,0 +1,14 @@ +import asyncio + +from metagpt.roles.ci.code_interpreter import CodeInterpreter + + +async def main(requirement: str = ""): + code_interpreter = CodeInterpreter(use_tools=False) + await code_interpreter.run(requirement) + + +if __name__ == "__main__": + requirement = "Run data analysis on sklearn Iris dataset, include a plot" + + asyncio.run(main(requirement)) diff --git a/examples/imitate_webpage.py b/examples/ci/imitate_webpage.py similarity index 92% rename from examples/imitate_webpage.py rename to examples/ci/imitate_webpage.py index 5075e1e39..6a83d3a33 100644 --- a/examples/imitate_webpage.py +++ b/examples/ci/imitate_webpage.py @@ -15,7 +15,7 @@ Firstly, utilize Selenium and WebDriver for rendering. Secondly, convert image to a webpage including HTML, CSS and JS in one go. Finally, save webpage in a text file. Note: All required dependencies and environments have been fully installed and configured.""" - ci = CodeInterpreter(goal=prompt, use_tools=True) + ci = CodeInterpreter(use_tools=True) await ci.run(prompt) diff --git a/examples/ci/rm_image_background.py b/examples/ci/rm_image_background.py new file mode 100644 index 000000000..83dbbdc77 --- /dev/null +++ b/examples/ci/rm_image_background.py @@ -0,0 +1,15 @@ +import asyncio + +from metagpt.roles.ci.code_interpreter import CodeInterpreter + + +async def main(requirement: str = ""): + code_interpreter = CodeInterpreter(use_tools=False) + await code_interpreter.run(requirement) + + +if __name__ == "__main__": + image_path = "/your/path/to/the/image.jpeg" + save_path = "/your/intended/save/path/for/image_rm_bg.png" + requirement = f"This is a image, you need to use python toolkit rembg to remove the background of the image and save the result. image path:{image_path}; save path:{save_path}." + asyncio.run(main(requirement)) diff --git a/examples/sd_tool_usage.py b/examples/ci/sd_tool_usage.py similarity index 100% rename from examples/sd_tool_usage.py rename to examples/ci/sd_tool_usage.py diff --git a/examples/ci/solve_math_problems.py b/examples/ci/solve_math_problems.py new file mode 100644 index 000000000..5bf06b9d8 --- /dev/null +++ b/examples/ci/solve_math_problems.py @@ -0,0 +1,17 @@ +import asyncio + +from metagpt.roles.ci.code_interpreter import CodeInterpreter + + +async def main(requirement: str = ""): + code_interpreter = CodeInterpreter(use_tools=False, goal=requirement) + await code_interpreter.run(requirement) + + +if __name__ == "__main__": + problem = "At a school, all 60 students play on at least one of three teams: Basketball, Soccer, and Mathletics. 8 students play all three sports, half the students play basketball, and the ratio of the size of the math team to the size of the basketball team to the size of the soccer team is $4:3:2$. How many students at the school play on exactly two teams?" + requirement = ( + f"This is a math problem:{problem}. You can analyze and solve it step by step or use Python code to solve it." + ) + + asyncio.run(main(requirement))