A Multi-agent network involves multiple autonomous agents working together to achieve a common goal. Each agent in the network is designed to perform specific tasks, communicate with other agents, and make decisions based on real-time data. In the context of enterprises, an AI-powered multi-agent network can integrate various tools and processes, streamlining operations, enhancing decision-making, and ultimately improving client service.
The ReACT (Reasoning and Acting) template is a type of Artificial Intelligence template designed to enhance the decision-making and problem-solving capabilities of multi-agent systems. It combines reasoning (thought processes to understand and interpret information) with acting (taking actions based on reasoning outcomes). This integration allows ReACT agents to handle complex tasks that require both cognitive and operational skills.
Purple Fabric enables agentic workflows with multi-agent systems. Each expert agent in an agentic system can be powered by the LLM best suited to that agent from a quality, speed, and cost perspective.
Users must have the Gen AI User policy to create a Multi Agent Network in Purple Fabric.
Sample Use Case: Business Assurance Lead
This guide will walk you through the steps to build a multi-agent network in a Wealth Management firm using Purple Fabric. The network involves multiple financial advisors and a Business Assurance Department that ensures the advice given to clients adheres to guidelines. The assurance team performs compliance checks, audits, and safeguards the integrity of financial services. The agents involved are the Business Assurance Lead, Business Assurance QA, and Business Assurance Writer.
- Create an asset
- Select a prompt template
- Select a model and set model configurations
- Provide the system instructions actions and Examples
- Run the model and view results
- Validate and benchmark asset
- Publish the asset
- Consume the asset
Step 1: Create an asset
- Head to the Gen AI Studio module and click Create Asset.
- In the Create Gen AI asset window that appears, enter Asset Name.
- Optional: Enter Description and upload a Display image.
- In Type, choose Conversational Agent and click Create.
Step 2: Select a prompt template
- On the Gen AI Asset creation page that appears, choose ReAct Prompt template.
Step 3: Select a model and set model configurations
Select a Model
- Select a model from the available List, considering model size, capability, and performance. Refer to the table to choose the appropriate model based on your requirements.
LLM Model | Model Input – As per Platform configured | Model Output | Input Context Window(Tokens) | Output Generation Size(Tokens) | Capability and Suitable For |
Azure OpenAI GPT 3.5 Turbo 4K | Supports Text | Text | 4096 | 4096 | Ideal for applications requiring efficient chat responses, code generation, and traditional text completion tasks. |
Azure OpenAI GPT 3.5 Turbo 16K | Supports Text | Text | 16384 | 4096 | Ideal for applications requiring efficient chat responses, code generation, and traditional text completion tasks. |
Azure OpenAI GPT – 4o | Supports Text | Text | 128,000 | 16,384 | GPT-4o demonstrates strong performance on text-based tasks like knowledge-based Q&A, text summarization, and language generation in over 50 languages. Also, useful in complex problem-solving scenarios, advanced reasoning, and generating detailed outputs. Recommended for ReAct |
Azure OpenAI GPT – 4o mini | Supports Text | Text | 128,000 | 16,384 | A model similar to GPT-4o but with lower cost and slightly less accuracy compared to GPT-4o. Recommended for ReAct |
Bedrock Claud3 Haiku 200k | Supports Text + Image | Text | 200,000 | 4096 | The Anthropic Claude 3 Haiku model is a fast and compact version of the Claude 3 family of large language models. Claude 3 Haiku demonstrates strong multimodal capabilities, adeptly processing diverse types of data including text in multiple languages and various visual formats. Its expanded language support and sophisticated vision analysis skills enhance its overall versatility and problem-solving abilities across a wide range of applications. |
Bedrock Claude3 Sonnet 200k | Supports Text + Image | Text | 200,000 | 4096 | Comparatively more performant than Haiku, Claude 3 Sonnet combines robust language processing capabilities with advanced visual analysis features. Its strengths in multilingual understanding, reasoning, coding proficiency, and image interpretation make it a versatile tool for various applications across industries |
Set Model Configuration
- Click
and then set the following tuning parameters to optimize the model’s performance. For more information, see Advance Configuration.
Step 4: Provide the system instructions, actions and Examples
Provide System Instruction
A system instruction refers to a command or directive provided to the model to modify its behavior or output in a specific way. For example, a system instruction might instruct the model to summarize a given text, answer a question in a specific format, or generate content with a particular tone or style.
- Enter the following System instructions by crafting a prompt that guides the agent in helping advisors.
Add Actions
- In the Actions section, click Add.
- In the Actions window that appears, Use the search bar to find the following agents.
- Sarah – Business Assurance QA
- James – Business Assurance Writer
- Sarah – Business Assurance QA
- On the Actions window, click
against the respective agents you wish to add, and then, click X to close the Actions window.
Manage Agents
- In the Actions section, provide the detailed description against each added Actions.
- Use enable
options to activate the Actions.
Note: Providing the detailed description helps the LLM model to understand the context better against the actions
Provide Examples
Examples help the content creation task at hand to enhance the agent’s understanding and response accuracy. These examples help the agent learn and improve over time.
- In the Examples section, click Add.
- In the Examples section, update the following information:
- Question: Initial query raised.
- Thought: Considerations or analysis related to the question.
- Action: Steps planned or taken in response to the question.
- Action Input: Inputs or resources needed to carry out the action.
- Observation: Monitoring or assessment of the action’s effectiveness.
- Thought: Further reflections or insights based on the observation.
- Final Answer: Conclusive response or resolution to the initial question.
Step 5: Run the model and view results
- In the Debug and Preview section, enter the prompt in the query bar to seek the required answers.
- Click
or press Enter key to run the prompt.
Review the generated response to ensure it adequately addresses or clarifies your query.
- Click Reference if you wish to view the reference of the output.
- Select the respective field information to view its reference.
- Click Reference if you wish to view the reference of the output.
- If necessary, provide examples to enhance the conversational agent’s understanding and response accuracy for answering questions.
Note: If the answer falls short of your expectations, provide additional context or rephrase your prompt for better clarification.
Step 6: Validate and benchmark the asset
Benchmarking allows you to compare the performance of different models based on predefined metrics to determine the most effective one for your needs.
- In the Debug and preview section, click Benchmark.
- In the Benchmarks window that appears, click Start New to benchmark against predefined metrics to determine the most effective model.
Add Input and Expected Output
- On the Benchmark page, click
- In the Input and Expected output field that appears, enter the example input and the expected output.
- Click
to add more Input and Expected output fields.
Add additional Benchmark
- On the Benchmark page that appears, click
to add additional benchmarks.
- In the Benchmark window that appears, click Model and prompt Settings.
- In the Model and Prompt Settings window, choose another mode for the comparison
- Click
and adjust the metrics as required to compare the output of the models against each other. For more information about the metrics, see Advance Configuration.
- Click Save to add the model for the Benchmark.
Validate
- On the Benchmark page, click the Re-run prompt.
- In the Benchmark model section, you can get the response
- Compare the response of the models based on the tokens, score, latency and cost which will determine which is the best suited model to be deployed for your use case.
- Preview, like or dislike the results to notify fellow team members.
Definition of Metrics
- On the benchmark page, click
metrics. to define and adjust metrics settings.
- In the Metrics that appears, choose the following metrics that you wish to compare with the models.
- Cost: Cost refers to the financial expenditure associated with using the language model. Costs vary based on the number of tokens processed, the level of accuracy required, and the computational resources utilized.
- Latency: Latency refers to the time delay between a user’s input and the model’s output.Latency can be influenced by various factors such as the complexity of the task, the model’s size, and the computational resources available. Lower latency indicates faster response times.
- Tokens: “tokens used” typically refers to the number of these units processed to generate a response. Each token used consumes computational resources and may be subject to pricing.
- Rough L: Rouge L calculates the longest common subsequence between the generated text and the reference text. It evaluates the quality of the generated text based on the longest sequence of words that appear in both texts, regardless of their order
- Answer Similarity: Answer Similarity measures how similar the generated answers are to the reference answers. It can be computed using various similarity metrics such as cosine similarity, Jaccard similarity, or edit distance.
- Accuracy: Accuracy measures the correctness of the generated text in terms of grammar, syntax, and semantics. It evaluates whether the generated text conveys the intended meaning accurately and fluently, without errors or inconsistencies
- Cost: Cost refers to the financial expenditure associated with using the language model. Costs vary based on the number of tokens processed, the level of accuracy required, and the computational resources utilized.
- You can view the selected metrics against the models.
Step 7: Publish the asset
- If the desired accuracy and performance for getting answers from the document has been achieved, click Publish.
- In the Asset Details page that appears, enter the Welcome Message, Conversation Starters and Asset Disclaimer.
Step 8: Consume the asset
- Head to the Gen AI Studio module. Use the Search bar to find an Asset.
- Select an Asset that you wish to consume.
- In the Conversational agent that appears, initiate a conversation by asking the asset a question based on multi agent network.