WiseAgentRemoteLLM

Bases: WiseAgentLLM

Extend WiseAgentLLM to support remote execution of WiseAgentLLM on a remote machine.

Source code in wiseagents/llm/wise_agent_remote_LLM.py
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
class WiseAgentRemoteLLM(WiseAgentLLM):
    """Extend WiseAgentLLM to support remote execution of WiseAgentLLM on a remote machine."""

    def __init__(self, model_name, remote_address, system_message: Optional[str] = None):
        super().__init__(model_name=model_name, system_message=system_message)
        enforce_no_abstract_class_instances(self.__class__, WiseAgentRemoteLLM)
        self._remote_address = remote_address

    def __repr__(self):
        '''Return a string representation of the agent.'''
        return f"{self.__class__.__name__}(system_message={self.system_message}, model_name={self.model_name}, remote_address={self.remote_address})"

    @property
    def remote_address(self):
        '''Get the remote address.'''
        return self._remote_address

    @abstractmethod
    def process_single_prompt(self, prompt):
        '''Process a single prompt. This method should be implemented by subclasses.
        The single prompt is processed and the result is returned, all the context and state is maintained locally in the method

        Args:
            prompt (str): the prompt to process'''

        ...

    @abstractmethod
    def process_chat_completion(self, 
                                messages: Iterable[ChatCompletionMessageParam], 
                                tools: Iterable[ChatCompletionToolParam]) -> ChatCompletion:
        '''Process a chat completion. This method should be implemented by subclasses.
        The context and state is passed in input and returned as part of the output.
        Deal with the messages and tools is responsibility of the caller.

        Args:
            messages (Iterable[ChatCompletionMessageParam]): the messages to process
            tools (Iterable[ChatCompletionToolParam]): the tools to use

        Returns:
                ChatCompletion: the chat completion result'''
        ...

remote_address property

Get the remote address.

__repr__()

Return a string representation of the agent.

Source code in wiseagents/llm/wise_agent_remote_LLM.py
18
19
20
def __repr__(self):
    '''Return a string representation of the agent.'''
    return f"{self.__class__.__name__}(system_message={self.system_message}, model_name={self.model_name}, remote_address={self.remote_address})"

process_chat_completion(messages, tools) abstractmethod

Process a chat completion. This method should be implemented by subclasses. The context and state is passed in input and returned as part of the output. Deal with the messages and tools is responsibility of the caller.

Parameters:
  • messages (Iterable[ChatCompletionMessageParam]) –

    the messages to process

  • tools (Iterable[ChatCompletionToolParam]) –

    the tools to use

Returns:
  • ChatCompletion( ChatCompletion ) –

    the chat completion result

Source code in wiseagents/llm/wise_agent_remote_LLM.py
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
@abstractmethod
def process_chat_completion(self, 
                            messages: Iterable[ChatCompletionMessageParam], 
                            tools: Iterable[ChatCompletionToolParam]) -> ChatCompletion:
    '''Process a chat completion. This method should be implemented by subclasses.
    The context and state is passed in input and returned as part of the output.
    Deal with the messages and tools is responsibility of the caller.

    Args:
        messages (Iterable[ChatCompletionMessageParam]): the messages to process
        tools (Iterable[ChatCompletionToolParam]): the tools to use

    Returns:
            ChatCompletion: the chat completion result'''
    ...

process_single_prompt(prompt) abstractmethod

Process a single prompt. This method should be implemented by subclasses. The single prompt is processed and the result is returned, all the context and state is maintained locally in the method

Parameters:
  • prompt (str) –

    the prompt to process

Source code in wiseagents/llm/wise_agent_remote_LLM.py
27
28
29
30
31
32
33
34
35
@abstractmethod
def process_single_prompt(self, prompt):
    '''Process a single prompt. This method should be implemented by subclasses.
    The single prompt is processed and the result is returned, all the context and state is maintained locally in the method

    Args:
        prompt (str): the prompt to process'''

    ...