mirror of
https://github.com/aljazceru/Auto-GPT.git
synced 2025-12-17 22:14:28 +01:00
@@ -42,7 +42,7 @@ class AIConfig:
|
|||||||
config_file (int): The path to the config yaml file. DEFAULT: "../ai_settings.yaml"
|
config_file (int): The path to the config yaml file. DEFAULT: "../ai_settings.yaml"
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
cls (object): A instance of given cls object
|
cls (object): An instance of given cls object
|
||||||
"""
|
"""
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -80,7 +80,7 @@ class AIConfig:
|
|||||||
None
|
None
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
full_prompt (str): A string containing the intitial prompt for the user including the ai_name, ai_role and ai_goals.
|
full_prompt (str): A string containing the initial prompt for the user including the ai_name, ai_role and ai_goals.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
prompt_start = """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."""
|
prompt_start = """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."""
|
||||||
|
|||||||
@@ -141,6 +141,6 @@ def chat_with_ai(
|
|||||||
|
|
||||||
return assistant_reply
|
return assistant_reply
|
||||||
except openai.error.RateLimitError:
|
except openai.error.RateLimitError:
|
||||||
# TODO: WHen we switch to langchain, this is built in
|
# TODO: When we switch to langchain, this is built in
|
||||||
print("Error: ", "API Rate Limit Reached. Waiting 10 seconds...")
|
print("Error: ", "API Rate Limit Reached. Waiting 10 seconds...")
|
||||||
time.sleep(10)
|
time.sleep(10)
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ def execute_command(command_name, arguments):
|
|||||||
elif command_name == "task_complete":
|
elif command_name == "task_complete":
|
||||||
shutdown()
|
shutdown()
|
||||||
else:
|
else:
|
||||||
return f"Unknown command '{command_name}'. Please refer to the 'COMMANDS' list for availabe commands and only respond in the specified JSON format."
|
return f"Unknown command '{command_name}'. Please refer to the 'COMMANDS' list for available commands and only respond in the specified JSON format."
|
||||||
# All errors, return "Error: + error message"
|
# All errors, return "Error: + error message"
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return "Error: " + str(e)
|
return "Error: " + str(e)
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ class Config(metaclass=Singleton):
|
|||||||
self.redis_password = os.getenv("REDIS_PASSWORD", "")
|
self.redis_password = os.getenv("REDIS_PASSWORD", "")
|
||||||
self.wipe_redis_on_start = os.getenv("WIPE_REDIS_ON_START", "True") == 'True'
|
self.wipe_redis_on_start = os.getenv("WIPE_REDIS_ON_START", "True") == 'True'
|
||||||
self.memory_index = os.getenv("MEMORY_INDEX", 'auto-gpt')
|
self.memory_index = os.getenv("MEMORY_INDEX", 'auto-gpt')
|
||||||
# Note that indexes must be created on db 0 in redis, this is not configureable.
|
# Note that indexes must be created on db 0 in redis, this is not configurable.
|
||||||
|
|
||||||
self.memory_backend = os.getenv("MEMORY_BACKEND", 'local')
|
self.memory_backend = os.getenv("MEMORY_BACKEND", 'local')
|
||||||
# Initialize the OpenAI API client
|
# Initialize the OpenAI API client
|
||||||
|
|||||||
@@ -67,22 +67,22 @@ def fix_and_parse_json(
|
|||||||
else:
|
else:
|
||||||
# This allows the AI to react to the error message,
|
# This allows the AI to react to the error message,
|
||||||
# which usually results in it correcting its ways.
|
# which usually results in it correcting its ways.
|
||||||
print("Failed to fix ai output, telling the AI.")
|
print("Failed to fix AI output, telling the AI.")
|
||||||
return json_str
|
return json_str
|
||||||
else:
|
else:
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
|
|
||||||
def fix_json(json_str: str, schema: str) -> str:
|
def fix_json(json_str: str, schema: str) -> str:
|
||||||
"""Fix the given JSON string to make it parseable and fully complient with the provided schema."""
|
"""Fix the given JSON string to make it parseable and fully compliant with the provided schema."""
|
||||||
|
|
||||||
# Try to fix the JSON using gpt:
|
# Try to fix the JSON using GPT:
|
||||||
function_string = "def fix_json(json_str: str, schema:str=None) -> str:"
|
function_string = "def fix_json(json_str: str, schema:str=None) -> str:"
|
||||||
args = [f"'''{json_str}'''", f"'''{schema}'''"]
|
args = [f"'''{json_str}'''", f"'''{schema}'''"]
|
||||||
description_string = "Fixes the provided JSON string to make it parseable"\
|
description_string = "Fixes the provided JSON string to make it parseable"\
|
||||||
" and fully complient with the provided schema.\n If an object or"\
|
" and fully compliant with the provided schema.\n If an object or"\
|
||||||
" field specified in the schema isn't contained within the correct"\
|
" field specified in the schema isn't contained within the correct"\
|
||||||
" JSON, it is ommited.\n This function is brilliant at guessing"\
|
" JSON, it is omitted.\n This function is brilliant at guessing"\
|
||||||
" when the format is incorrect."
|
" when the format is incorrect."
|
||||||
|
|
||||||
# If it doesn't already start with a "`", add one:
|
# If it doesn't already start with a "`", add one:
|
||||||
|
|||||||
Reference in New Issue
Block a user