1. Go to this page and download the library: Download funkyoz/mulagent library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
funkyoz / mulagent example snippets
use MulAgent\Agent\Agent;
use MulAgent\LLM\OpenAI\OpenAIConfig;
use MulAgent\LLM\OpenAI\OpenAILLM;
use MulAgent\Message\Message;
use MulAgent\MulAgent;
// Configure OpenAI
$config = OpenAIConfig::create([
'model' => 'gpt-4',
'temperature' => 1,
'api_key' => getenv('OPENAI_API_KEY'),
]);
// Create LLM instance
$llm = new OpenAILLM($config);
// Create an agent
$agent = new Agent(
name: 'Assistant',
llm: $llm,
instruction: 'You are a helpful assistant.'
);
// Initialize MulAgent
$mulAgent = new MulAgent($agent);
// Run a conversation
$messages = [Message::user('What is the capital of France?')];
$response = $mulAgent->run($messages);
// Create calculator tools using PHP functors
$addTool = new class () {
public string $name = 'add';
public function __invoke(float $first, float $second): string
{
return (string)($first + $second);
}
};
$multiplyTool = new class () {
public string $name = 'multiply';
public function __invoke(float $first, float $second): string
{
return (string)($first * $second);
}
};
$divideTool = new class () {
public string $name = 'divide';
public function __invoke(float $first, float $second): string
{
if (.0 === $second) {
return 'Cannot divide by zero';
}
return (string)($first / $second);
}
};
// Create and use the agent with calculator tools
$agent = new Agent(
name: 'Calculator',
llm: $llm,
instruction: 'You are a math assistant.',
tools: [$addTool, $multiplyTool, $divideTool]
);
$mulAgent = new MulAgent($agent);
use MulAgent\Tool\AgentTool;
// Create two specialized agents
$mathAgent = new Agent(
name: 'Math Expert',
llm: $llm,
instruction: 'You are a mathematics expert.'
);
$scienceAgent = new Agent(
name: 'Science Expert',
llm: $llm,
instruction: 'You are a science expert.',
tools: [new AgentTool($mathAgent)] // Science agent can hand off to math agent
);
$mulAgent = new MulAgent($scienceAgent);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.