Spaces:
Running
on
Zero
Running
on
Zero
from skills.skill import Skill | |
import os | |
import openai | |
class ObjectiveSaver(Skill): | |
name = 'objective_saver' | |
description = "A skill that saves a new example_objective based on the concepts from skill_saver.py" | |
api_keys_required = [] | |
def __init__(self, api_keys): | |
super().__init__(api_keys) | |
def execute(self, params, dependent_task_outputs, objective): | |
if not self.valid: | |
return | |
#print(dependent_task_outputs[2]) | |
code = dependent_task_outputs[2] | |
task_prompt = f"Come up with a file name (eg. 'research_shoes.json') for the following objective:{code}\n###\nFILE_NAME:" | |
messages = [ | |
{"role": "user", "content": task_prompt} | |
] | |
response = openai.ChatCompletion.create( | |
model="gpt-3.5-turbo", | |
messages=messages, | |
temperature=0.4, | |
max_tokens=3000, | |
top_p=1, | |
frequency_penalty=0, | |
presence_penalty=0 | |
) | |
file_name = response.choices[0].message['content'].strip() | |
file_path = os.path.join('tasks/example_objectives',file_name) | |
try: | |
with open(file_path, 'w') as file: | |
file.write("["+code+"]") | |
print(f"Code saved successfully: {file_name}") | |
except: | |
print("Error saving code.") | |
return None |