 <div align="center"> Swarms is a modular framework that enables reliable and useful multi-agent collaboration at scale to automate real-world tasks. [](https://github.com/kyegomez/swarms/issues) [](https://github.com/kyegomez/swarms/network) [](https://github.com/kyegomez/swarms/stargazers) [](https://github.com/kyegomez/swarms/blob/main/LICENSE)[](https://star-history.com/#kyegomez/swarms)[](https://libraries.io/github/kyegomez/swarms) [](https://pepy.tech/project/swarms) ### Share on Social Media [](https://twitter.com/intent/tweet?text=Check%20out%20this%20amazing%20AI%20project:%20&url=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms) [](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms) [](https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms&title=&summary=&source=) [](https://www.reddit.com/submit?url=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms&title=Swarms%20-%20the%20future%20of%20AI) [](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms&t=Swarms%20-%20the%20future%20of%20AI) [](https://pinterest.com/pin/create/button/?url=https%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms&media=https%3A%2F%2Fexample.com%2Fimage.jpg&description=Swarms%20-%20the%20future%20of%20AI) [](https://api.whatsapp.com/send?text=Check%20out%20Swarms%20-%20the%20future%20of%20AI%20%23swarms%20%23AI%0A%0Ahttps%3A%2F%2Fgithub.com%2Fkyegomez%2Fswarms) </div> <!-- [](https://github.com/users/kyegomez/projects/1) --> ## Vision At Swarms, we're transforming the landscape of AI from siloed AI agents to a unified 'swarm' of intelligence. Through relentless iteration and the power of collective insight from our 1500+ Agora researchers, we're developing a groundbreaking framework for AI collaboration. Our mission is to catalyze a paradigm shift, advancing Humanity with the power of unified autonomous AI agent swarms. ----- ## 🤝 Schedule a 1-on-1 Session Book a [1-on-1 Session with Kye](https://calendly.com/swarm-corp/30min), the Creator, to discuss any issues, provide feedback, or explore how we can improve Swarms for you. ---------- ## Installation `pip3 install --upgrade swarms` --- ## Usage We have a small gallery of examples to run here, [for more check out the docs to build your own agent and or swarms!](https://docs.apac.ai) ### `Flow` Example - Reliable Structure that provides LLMS autonomy - Extremely Customizeable with stopping conditions, interactivity, dynamical temperature, loop intervals, and so much more - Enterprise Grade + Production Grade: `Flow` is designed and optimized for automating real-world tasks at scale! ```python 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) ``` ------ ### `SequentialWorkflow` - A Sequential swarm of autonomous agents where each agent's outputs are fed into the next agent - Save and Restore Workflow states! - Integrate Flow's with various LLMs and Multi-Modality Models ```python from swarms.models import OpenAIChat from swarms.structs import Flow from swarms.structs.sequential_workflow import SequentialWorkflow # Example usage api_key = ( "" # Your actual API key here ) # Initialize the language flow llm = OpenAIChat( openai_api_key=api_key, 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}") ``` --- ## Documentation - For documentation, go here, [swarms.apac.ai](https://swarms.apac.ai) ## Contribute - We're always looking for contributors to help us improve and expand this project. If you're interested, please check out our [Contributing Guidelines](CONTRIBUTING.md) and our [contributing board](https://github.com/users/kyegomez/projects/1) ## Community - [Join the Swarms community here on Discord!](https://discord.gg/AJazBmhKnr) # License MIT