FlowiseAI / Flowise

Drag & drop UI to build your customized LLM flow
https://flowiseai.com
Apache License 2.0
30.06k stars 15.52k forks source link

[FEATURE] Is it possible to have crew ai or autogen like feature where agents/bots which we create with different roles communicate together and solve one problem or given case together #1670

Closed HakaishinShwet closed 4 months ago

HakaishinShwet commented 7 months ago

The feature i am talking about is what makes autogen and crewai special as with help of there special feature of making multi bots/agents communicate together and maybe use different api/models to solve one task/issue together is PRETTY BIG THING and it makes the best use of multiple bots which we can also create with flowise too thankfully but to truly harness the true power of multiple bots with multi roles we must make them capable to think as expert individual in particular thing(with help of system message) and work TOGETHER as individual experts of something and solve one specific issue/case together which involves deep thinking(in that case multiple different agents with different expertise can give best solution/idea) instead of directly using one bot which wont think much and will give insta response which is not something which we want(You all can see videos on crew ai and autogen if you were busy in development and didnt know about it to get better idea of what i am saying)and because of that autogen and crew ai like foss projects were build where we want better and perfectly planned detailed answer on many complex cases like for example -

this is not my example but just to help you understand this whole thing better i am taking one medium post example you can read better with this link ("https://webcache.googleusercontent.com/search?q=cache:https://medium.com/@mayaakim/crewai-a-team-of-ai-agents-that-work-together-for-you-4cc9d24e0857")

I want an agent that browse the internet, another one that can write blog posts (with at least 10 paragraphs) and a critic agent that checks and makes sure that standards that I’ve defined are met

explorer = Agent( role='Senior Researcher', goal='Find and explore the most exciting projects and companies in AI and machine learning in 2024', backstory="""You are and Expert strategist that knows how to spot emerging trends and companies in AI, tech and machine learning. You're great at finding interesting, exciting projects in Open Source/Indie Hacker space. You look for exciting, rising new github ai projects that get a lot of attention. """, verbose=True, allow_delegation=False, tools=[search_tool] )

writer = Agent( role='Senior Technical Writer', goal='Write engaging and interesting blog post about latest AI projects using simple, layman vocabulary', backstory="""You are an Expert Writer on technical innovation, especially in the field of AI and machine learning. You know how to write in engaging, interesting but simple, straightforward and concise. You know how to present complicated technical terms to general audience in a fun way by using layman words.""", verbose=True, allow_delegation=True )

critic = Agent( role='Expert Writing Critic', goal='Provide feedback and criticize blog post drafts. Make sure that the tone and writing style is compelling, simple and concise', backstory="""You are an Expert at providing feedback to the technical writers. You can tell when a blog text isn't concise, simple or engaging enough. You know how to provide helpful feedback that can improve any text. You know how to make sure that text stays technical and insightful by using layman terms. """, verbose=True, allow_delegation=True )

after these agents created as expert in different things then Let’s define 3 tasks as well that each of the agents will execute:

task_report = Task( description="""Use and summarize scraped data from subreddit LocalLLama to make a detailed report on the latest rising projects in AI. Your final answer MUST be a full analysis report, text only, ignore any code or anything that isn't text. The report has to have bullet points and with 5-10 exciting new AI projects and tools. Write names of every tool and project. Each bullet point MUST contain 3 sentences that refer to one specific ai company, product, model or anything you found on subreddit LocalLLama. Use ONLY scraped data from LocalLLama to generate the report. """, agent=explorer, )

task_blog = Task( description="""Write a blog article with text only and with a short but impactful headline and at least 10 paragraphs. Blog should summarize the report on latest ai tools found on localLLama subreddit. Style and tone should be compelling and concise, fun, technical but also use layman words for the general public. Name specific new, exciting projects, apps and companies in AI world. Don't write "Paragraph [number of the paragraph]:", instead start the new paragraph in a new line. Write names of projects and tools in BOLD. ALWAYS include links to projects/tools/research papers. """, agent=writer, )

task_critique = Task( description="""Identify parts of the blog that aren't written concise enough and rewrite and change them. Make sure that the blog has engaging headline with 30 characters max, and that there are at least 10 paragraphs. Blog needs to be rewritten in such a way that it contains specific names of models/companies/projects but also explanation of WHY a reader should be interested to research more. Always include links to each paper/ project/company """, agent=critic, )

so after we execute code with crew ai these agents will work together and 1.searches the internet for latest AI projects and trends 2.writes a blog post about it

  1. and improves the text in the blog if it fails to meet some standards according to the task we have assigned and will give the best possible blog.(Please do read from above mentioned link of medium in detail to get best idea as in that with tools which are also there in flowise now thankfully can help to make this process much better, i am not pasting more stuff here because i guess this much is enough for getting basic understanding :-)
HenryHengZJ commented 7 months ago

this is the next thing we are working on! crewai is still working on their JS/TS version, we might be able to do this with langgraph

HakaishinShwet commented 7 months ago

@HenryHengZJ nice hope to see it soon because it will give more power to this awesome project :-))

HenryHengZJ commented 4 months ago

released! https://github.com/FlowiseAI/Flowise/pull/2319 💯