parent
							
								
									a70a2b05b5
								
							
						
					
					
						commit
						336bffea19
					
				@ -1,56 +0,0 @@
 | 
				
			||||
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
 | 
				
			||||
@ -1,6 +1,6 @@
 | 
				
			||||
from swarms.models.openai_models import OpenAIChat
 | 
				
			||||
 | 
				
			||||
openai = OpenAIChat(openai_api_key="", verbose=False)
 | 
				
			||||
openai = OpenAIChat(openai_api_key="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", verbose=False)
 | 
				
			||||
 | 
				
			||||
chat = openai("Are quantum fields everywhere?")
 | 
				
			||||
chat = openai("What are quantum fields?")
 | 
				
			||||
print(chat)
 | 
				
			||||
 | 
				
			||||
@ -0,0 +1,35 @@
 | 
				
			||||
from swarms.models import OpenAIChat
 | 
				
			||||
from swarms.structs import Flow
 | 
				
			||||
 | 
				
			||||
api_key = ""
 | 
				
			||||
 | 
				
			||||
# Initialize the language model, this model can be swapped out with Anthropic, ETC, Huggingface Models like Mistral, ETC
 | 
				
			||||
llm = OpenAIChat(
 | 
				
			||||
    # model_name="gpt-4"
 | 
				
			||||
    openai_api_key=api_key,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
    # max_tokens=100,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
## Initialize the workflow
 | 
				
			||||
flow = Flow(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    max_loops=2,
 | 
				
			||||
    dashboard=True,
 | 
				
			||||
    # stopping_condition=None,  # You can define a stopping condition as needed.
 | 
				
			||||
    # loop_interval=1,
 | 
				
			||||
    # retry_attempts=3,
 | 
				
			||||
    # retry_interval=1,
 | 
				
			||||
    # interactive=False,  # Set to 'True' for interactive mode.
 | 
				
			||||
    # dynamic_temperature=False,  # Set to 'True' for dynamic temperature handling.
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
# out = flow.load_state("flow_state.json")
 | 
				
			||||
# temp = flow.dynamic_temperature()
 | 
				
			||||
# filter = flow.add_response_filter("Trump")
 | 
				
			||||
out = flow.run("Generate a 10,000 word blog on health and wellness.")
 | 
				
			||||
# out = flow.validate_response(out)
 | 
				
			||||
# out = flow.analyze_feedback(out)
 | 
				
			||||
# out = flow.print_history_and_memory()
 | 
				
			||||
# # out = flow.save_state("flow_state.json")
 | 
				
			||||
# print(out)
 | 
				
			||||
@ -0,0 +1,31 @@
 | 
				
			||||
from swarms.models import OpenAIChat
 | 
				
			||||
from swarms.structs import Flow
 | 
				
			||||
from swarms.structs.sequential_workflow import SequentialWorkflow
 | 
				
			||||
 | 
				
			||||
# Example usage
 | 
				
			||||
llm = OpenAIChat(
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
    max_tokens=3000,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
# Initialize the Flow with the language flow
 | 
				
			||||
flow1 = Flow(llm=llm, max_loops=1, dashboard=False)
 | 
				
			||||
 | 
				
			||||
# Create another Flow for a different task
 | 
				
			||||
flow2 = Flow(llm=llm, max_loops=1, dashboard=False)
 | 
				
			||||
 | 
				
			||||
# Create the workflow
 | 
				
			||||
workflow = SequentialWorkflow(max_loops=1)
 | 
				
			||||
 | 
				
			||||
# Add tasks to the workflow
 | 
				
			||||
workflow.add("Generate a 10,000 word blog on health and wellness.", flow1)
 | 
				
			||||
 | 
				
			||||
# Suppose the next task takes the output of the first task as input
 | 
				
			||||
workflow.add("Summarize the generated blog", flow2)
 | 
				
			||||
 | 
				
			||||
# Run the workflow
 | 
				
			||||
workflow.run()
 | 
				
			||||
 | 
				
			||||
# Output the results
 | 
				
			||||
for task in workflow.tasks:
 | 
				
			||||
    print(f"Task: {task.description}, Result: {task.result}")
 | 
				
			||||
@ -1,39 +1,16 @@
 | 
				
			||||
from swarms.swarms import GodMode
 | 
				
			||||
from swarms.models import OpenAIChat
 | 
				
			||||
 | 
				
			||||
from swarms.swarms import GodMode
 | 
				
			||||
from swarms.workers.worker import Worker
 | 
				
			||||
api_key = ""
 | 
				
			||||
 | 
				
			||||
llm = OpenAIChat(openai_api_key=api_key)
 | 
				
			||||
 | 
				
			||||
llm = OpenAIChat(model_name="gpt-4", openai_api_key="api-key", temperature=0.5)
 | 
				
			||||
 | 
				
			||||
worker1 = Worker(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Bumble Bee",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
)
 | 
				
			||||
worker2 = Worker(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Optimus Prime",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
)
 | 
				
			||||
worker3 = Worker(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Megatron",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
)
 | 
				
			||||
# Usage
 | 
				
			||||
agents = [worker1, worker2, worker3]
 | 
				
			||||
llms = [llm, llm, llm]
 | 
				
			||||
 | 
				
			||||
god_mode = GodMode(agents)
 | 
				
			||||
god_mode = GodMode(llms)
 | 
				
			||||
 | 
				
			||||
task = "What are the biggest risks facing humanity?"
 | 
				
			||||
task = "Generate a 10,000 word blog on health and wellness."
 | 
				
			||||
 | 
				
			||||
out = god_mode.run(task)
 | 
				
			||||
god_mode.print_responses(task)
 | 
				
			||||
 | 
				
			||||
@ -1,61 +1,49 @@
 | 
				
			||||
from swarms.models import OpenAIChat
 | 
				
			||||
from swarms.swarms import GroupChat, GroupChatManager
 | 
				
			||||
from swarms.workers import Worker
 | 
				
			||||
from swarms import OpenAI, Flow
 | 
				
			||||
from swarms.swarms.groupchat import GroupChatManager, GroupChat
 | 
				
			||||
 | 
				
			||||
llm = OpenAIChat(model_name="gpt-4", openai_api_key="api-key", temperature=0.5)
 | 
				
			||||
 | 
				
			||||
node = Worker(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Optimus Prime",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
api_key = ""
 | 
				
			||||
 | 
				
			||||
llm = OpenAI(
 | 
				
			||||
    openai_api_key=api_key,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
    max_tokens=3000,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
node2 = Worker(
 | 
				
			||||
# Initialize the flow
 | 
				
			||||
flow1 = Flow(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Optimus Prime",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
    max_loops=1,
 | 
				
			||||
    system_message="YOU ARE SILLY, YOU OFFER NOTHING OF VALUE",
 | 
				
			||||
    name="silly",
 | 
				
			||||
    dashboard=True,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
node3 = Worker(
 | 
				
			||||
flow2 = Flow(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    ai_name="Optimus Prime",
 | 
				
			||||
    ai_role="Worker in a swarm",
 | 
				
			||||
    external_tools=None,
 | 
				
			||||
    human_in_the_loop=False,
 | 
				
			||||
    temperature=0.5,
 | 
				
			||||
    max_loops=1,
 | 
				
			||||
    system_message="YOU ARE VERY SMART AND ANSWER RIDDLES",
 | 
				
			||||
    name="detective",
 | 
				
			||||
    dashboard=True,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
nodes = [node, node2, node3]
 | 
				
			||||
 | 
				
			||||
messages = [
 | 
				
			||||
    {
 | 
				
			||||
        "role": "system",
 | 
				
			||||
        "context": "Create an a small feedforward in pytorch",
 | 
				
			||||
    }
 | 
				
			||||
]
 | 
				
			||||
 | 
				
			||||
group = GroupChat(
 | 
				
			||||
    workers=nodes,
 | 
				
			||||
    messages=messages,
 | 
				
			||||
    max_rounds=3,
 | 
				
			||||
flow3 = Flow(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    max_loops=1,
 | 
				
			||||
    system_message="YOU MAKE RIDDLES",
 | 
				
			||||
    name="riddler",
 | 
				
			||||
    dashboard=True,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
manager = GroupChatManager(
 | 
				
			||||
    groupchat=group,
 | 
				
			||||
    max_consecutive_auto_reply=3,
 | 
				
			||||
manager = Flow(
 | 
				
			||||
    llm=llm,
 | 
				
			||||
    max_loops=1,
 | 
				
			||||
    system_message="YOU ARE A GROUP CHAT MANAGER",
 | 
				
			||||
    name="manager",
 | 
				
			||||
    dashboard=True,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
output = group.run(
 | 
				
			||||
    messages,
 | 
				
			||||
    sender=node,
 | 
				
			||||
    config=group,
 | 
				
			||||
)
 | 
				
			||||
 | 
				
			||||
print(output)
 | 
				
			||||
# Example usage:
 | 
				
			||||
agents = [flow1, flow2, flow3]
 | 
				
			||||
 | 
				
			||||
group_chat = GroupChat(agents=agents, messages=[], max_round=10)
 | 
				
			||||
chat_manager = GroupChatManager(groupchat=group_chat, selector=manager)
 | 
				
			||||
chat_history = chat_manager("Write me a riddle")
 | 
				
			||||
 | 
				
			||||
					Loading…
					
					
				
		Reference in new issue