File size: 1,173 Bytes
74f7ac4
 
 
 
 
 
bc41366
74f7ac4
 
 
49be943
74f7ac4
 
49be943
74f7ac4
 
 
 
 
 
 
 
 
 
bc41366
 
74f7ac4
bc41366
74f7ac4
 
 
49be943
 
74f7ac4
49be943
 
74f7ac4
 
 
 
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
"""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}"