This is a simple example of a multi-agent research bot. To run it:
python -m examples.research_bot.main
The flow is:
- User enters their research topic
planner_agent
comes up with a plan to search the web for information. The plan is a list of search queries, with a search term and a reason for each query.- For each search item, we run a
search_agent
, which uses the Web Search tool to search for that term and summarize the results. These all run in parallel. - Finally, the
writer_agent
receives the search summaries, and creates a written report.
If you're building your own research bot, some ideas to add to this are:
- Retrieval: Add support for fetching relevant information from a vector store. You could use the File Search tool for this.
- Image and file upload: Allow users to attach PDFs or other files, as baseline context for the research.
- More planning and thinking: Models often produce better results given more time to think. Improve the planning process to come up with a better plan, and add an evaluation step so that the model can choose to improve its results, search for more stuff, etc.
- Code execution: Allow running code, which is useful for data analysis.