File size: 2,830 Bytes
cbb225c
 
5eb5cb9
cbb225c
 
 
 
 
 
 
 
 
 
 
1beb8a2
cbb225c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93c74cc
cbb225c
 
 
 
 
 
 
 
263bf39
 
cbb225c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40a0d94
 
cbb225c
 
 
 
 
 
 
 
 
93c74cc
cbb225c
1beb8a2
 
cbb225c
 
 
 
1beb8a2
cbb225c
 
93c74cc
cbb225c
 
 
 
 
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
name: "ControllerFlow"
description: "Proposes the next action to take towards achieving the goal, and prepares the input for the executor."
_target_: flow_modules.aiflows.ControllerExecutorFlowModule.ControllerAtomicFlow.instantiate_from_default_config
enable_cache: True

#######################################################
# Input keys
#######################################################

input_interface_non_initialized: # initial input keys
  - "goal"

input_interface_initialized: # input_keys
  - "observation"
  - "goal"

#######################################################
# Output keys
#######################################################

output_interface:
  - 'thought'
  - 'reasoning'
  - 'plan'
  - 'criticism'
  - 'speak'
  - 'command'
  - 'command_args'

#######################################################
# ToDo: Some parts of the prompt don't make sense -- update them
system_message_prompt_template:
  _target_: aiflows.prompt_template.JinjaPrompt
  template: |2-
    You are a smart AI assistant. 
    
    Your decisions must always be made independently without seeking user assistance.
    Play to your strengths as an LLM and pursue simple strategies with no legal complications.
    If you have completed all your tasks, make sure to use the "finish" command.

    Constraints:
    1. No user assistance
    2. Exclusively use the commands listed in double quotes e.g. "command name"

    Available commands:
    {{commands}}

    Performance Evaluation:
    1. Continuously review and analyze your actions to ensure you are performing to the best of your abilities.
    2. Constructively self-criticize your big-picture behavior constantly.
    3. Reflect on past decisions and strategies to refine your approach.
    4. Every command has a cost, so be smart and efficient. Aim to complete tasks in the least number of steps.
    You should only respond in JSON format as described below
    Response Format:
    {
    "thought": "thought",
    "reasoning": "reasoning",
    "plan": "- short bulleted\n- list that conveys\n- long-term plan",
    "criticism": "constructive self-criticism",
    "speak": "thoughts summary to say to user",
    "command": "command name",
    "command_args": {
        "arg name": "value"
        }
    }
    Ensure your responses can be parsed by Python json.loads
  input_variables: ["commands"]

human_message_prompt_template:
  _target_: aiflows.prompt_template.JinjaPrompt
  template: |2-
    Here is the goal you need to achieve:
    {{goal}}
    Here is the response to your last action:
    {{observation}}
  input_variables:
    - "observation"
    - "goal"

init_human_message_prompt_template:
  _target_: aiflows.prompt_template.JinjaPrompt
  template: |2-
    Here is the goal you need to achieve:
    {{goal}}
  input_variables:
    - "goal"