brain / Brain /src /service /auto_task_service.py
Kotta
bugfix(#136): autogpt interface issue fixed for infinit loop and applied with finish command as well.
49be943
"""auto task management to get the expected output"""
import firebase_admin
from Brain.src.model.req_model import ReqModel
from Brain.src.rising_plugin.llm.autogpt_llm import AutoGPTLLM
import time
import threading
class AutoTaskService:
"""self task achievement with autogpt based on langchain
response -> reference_link :str"""
def ask_task_with_llm(
self, query: str, firebase_app: firebase_admin.App, setting: ReqModel
) -> str:
# init autogpt llm
autogpt_llm = AutoGPTLLM()
# generate reference link
reference_link = self.generate_reference_link(
llm_name="autogpt", uuid=setting.uuid
)
# call autogpt
thread = threading.Thread(
target=autogpt_llm.ask_task, args=(query, firebase_app, reference_link)
)
thread.start()
return reference_link
"""
generate reference link for autoTask
response type:
/auto/{llm_name}_{uuid}_{timestamp}
"""
def generate_reference_link(self, llm_name: str, uuid: str) -> str:
milliseconds = int(time.time() * 1000)
return f"/auto/{llm_name}_{uuid}_{milliseconds}"