File size: 1,553 Bytes
1094f14
96f6b21
 
1094f14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from langchain_core.tools import BaseTool, tool
from base_service import BaseService
from openvpn.openvpn_prompts import SYSTEM_PROMPT
from typing import List
import logging
import time

logger = logging.getLogger(__name__)


class OpenVPNService(BaseService):
    @property
    def system_prompt(self) -> str:
        return SYSTEM_PROMPT
    
    @property
    def tools(self) -> List[BaseTool]:
        return self._base_tools + [
            self.script_part,
            self.install_program,
            self.delete_and_install_program
        ]

    @tool
    def script_part(question: str) -> None:
        """Запускаем большой скрипт для проверки возможных проблем с приложением
        и их устранением"""
        print("ran_graph(question)")
        time.sleep(4)
        logger.info("script part")

    @tool
    def install_program(question: str) -> None:
        """Запускаем скрипты, которые ставят программу openvpn"""
        print("### Скриптом устанавливаем программу")
        time.sleep(3)
        logger.info("installing program")

    @tool
    def delete_and_install_program(question: str) -> None:
        """Запускаем скрипты, которые удаляют и ставят программу openvpn"""
        print("### Скриптом удаляем и ставим программу")
        time.sleep(3)
        logger.info("deleting and installing program")