OperationcodeCreatorAgent:ソース:flow:FlowProcessAIAgent.py

from flow.FlowBase import FlowBase
from tools.AIAgent import AIAgent
from tools.PythonProgramerAgent import PythonProgramerAgent
from tools.WebSerchAgent import WebSerchAgent
from tools.command_list import get_tool_list



class FlowProcessAIAgent(FlowBase):
    def __init__(self, name, prompt):
        super().__init__()
        self.set_category("flow")
        self.set_type("process")
        self.agent = self.get_ai_agent(name)
        self.prompt = prompt
        self.name = name
        print("FlowProcessAIAgent",name,prompt)
    def get_ai_agent(self, name):
        if "なし" == name:
            return AIAgent("None", "", get_tool_list())
        if "WebSerch" == name:
            return WebSerchAgent()
        if "PythonProgramer" == name:
            return PythonProgramerAgent()
        return AIAgent(name, "", get_tool_list())

    def run(self, command="", pre_respons=None, flow_data=None):
        print("FlowProcessAIAgent.run:", self.prompt,command)
        respons = self.agent.get_respons(self.prompt + command)
        print("run:", self.name, self.prompt)
        return "", respons
    
    def append_prompt(self, text):
        self.prompt += "\r\n" + text