from swarms.models import OpenAIChat # Replace with your actual OpenAIChat import if __name__ == "__main__": api_key = "" # Your OpenAI API key here agent = MultiTempAgent(api_key) prompt = "Write a blog post about health and wellness" final_output = agent.run(prompt) print("Final chosen output:") print(final_output) class MultiTempAgent: def __init__(self, api_key, default_temp=0.5, alt_temps=[0.2, 0.7, 0.9]): self.api_key = api_key self.default_temp = default_temp self.alt_temps = alt_temps def ask_user_feedback(self, text): print(f"Generated text: {text}") feedback = input("Are you satisfied with this output? (yes/no): ") return feedback.lower() == "yes" def present_options_to_user(self, outputs): print("Alternative outputs:") for temp, output in outputs.items(): print(f"Temperature {temp}: {output}") chosen_temp = float(input("Choose the temperature of the output you like: ")) return outputs.get(chosen_temp, "Invalid temperature chosen.") def run(self, prompt): try: llm = OpenAIChat(openai_api_key=self.api_key, temperature=self.default_temp) initial_output = llm(prompt) # Using llm as a callable except Exception as e: print(f"Error generating initial output: {e}") initial_output = None user_satisfied = self.ask_user_feedback(initial_output) if user_satisfied: return initial_output else: outputs = {} for temp in self.alt_temps: try: llm = OpenAIChat( openai_api_key=self.api_key, temperature=temp ) # Re-initializing outputs[temp] = llm(prompt) # Using llm as a callable except Exception as e: print(f"Error generating text at temperature {temp}: {e}") outputs[temp] = None chosen_output = self.present_options_to_user(outputs) return chosen_output