File size: 3,609 Bytes
840f3e9 cac4e7b 4d969ce 6141f1b 9f9bea7 0e9c24d 5bcc2da 0e9c24d 1923ab6 722929d ed306c8 4d969ce ed306c8 cac4e7b 4d969ce d8a9c24 cac4e7b ed306c8 cac4e7b 4d969ce 722929d 4d969ce 722929d d56f6b1 cac4e7b 7ddfa83 05c2b03 b1c069d 6141f1b febf589 4e847ac febf589 2897070 f017154 d8f2386 da61fc4 d8f2386 da61fc4 11d87fa da61fc4 11d87fa da61fc4 11d87fa d8f2386 e90039b 9049e22 e90039b febf589 0e9c24d febf589 9602a81 febf589 576e7cf cac4e7b 576e7cf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
import base64, os
from autogen import ConversableAgent, AssistantAgent
from autogen.coding import LocalCommandLineCodeExecutor
def read_image_file(image_file_path: str) -> str:
with open(image_file_path, "rb") as image_file:
image_data = image_file.read()
return base64.b64encode(image_data).decode("utf-8")
def generate_markdown_code(image_data: str) -> str:
return f"![Image](data:image/png;base64,{image_data})"
def read_file(file_path: str) -> str:
with open(file_path, 'r', encoding='utf-8') as file:
return file.read()
def format_as_markdown(code: str) -> str:
markdown_code = '```\n'
markdown_code += code
markdown_code += '\n```'
return markdown_code
def run_multi_agent(llm, message):
llm_config = {"model": llm}
executor = LocalCommandLineCodeExecutor(
timeout=60,
work_dir="coding",
)
code_executor_agent = ConversableAgent(
name="code_executor_agent",
llm_config=False,
code_execution_config={"executor": executor},
human_input_mode="NEVER",
default_auto_reply="Please continue. If everything is done, reply 'TERMINATE'.",
)
print("### code_executor_agent.system_message = " + code_executor_agent.system_message)
code_writer_agent = AssistantAgent(
name="code_writer_agent",
llm_config=llm_config,
code_execution_config=False,
human_input_mode="NEVER",
)
print("### code_writer_agent.system_message = " + code_writer_agent.system_message)
chat_result = code_executor_agent.initiate_chat(
code_writer_agent,
message=message,
max_turns=10
)
image_data = read_image_file("/home/user/app/coding/ytd_stock_gains.png")
markdown_code = generate_markdown_code(image_data)
print("### markdown_code = " + markdown_code)
files_in_folder = os.listdir("coding")
file_name_py = ""
file_name_sh = ""
print(f"Files in {files_in_folder}:")
for file in files_in_folder:
print(file)
if file :
_, file_extension = os.path.splitext(file)
if file_extension == ".py":
file_name_py = file
if file_extension == ".sh":
file_name_sh = file
print("#" + file_name_py)
print("#" + file_name_sh)
try:
file_path_py = "coding/" + file_name_py
print("##" + file_path_py)
code_py = read_file(file_path_py)
markdown_code_py = format_as_markdown(code_py)
print("### " + markdown_code_py)
except FileNotFoundError:
print(f"Error: File '{file_path_sh}' not found.")
except IOError as e:
print(f"Error reading file '{file_path_sh}': {e.strerror}")
except Exception as e:
print(f"An unexpected error occurred: {e}")
try:
file_path_sh = "coding/" + file_name_sh
print("##" + file_path_sh)
code_sh = read_file(file_path_sh)
markdown_code_sh = format_as_markdown(code_sh)
print("### " + markdown_code_sh)
except FileNotFoundError:
print(f"Error: File '{file_path_sh}' not found.")
except IOError as e:
print(f"Error reading file '{file_path_sh}': {e.strerror}")
except Exception as e:
print(f"An unexpected error occurred: {e}")
#print("### markdown_code = " + markdown_code)
#print("###")
#print(chat_result)
#print("###")
result = markdown_code + "\n" + markdown_code_sh + "\n" + markdown_code_py
print("###")
print(result)
print("###")
return result |