27 lines
840 B
PHP
27 lines
840 B
PHP
<?php
|
|
|
|
namespace App\Services\Agent;
|
|
|
|
class DummyAgentProvider implements AgentProviderInterface
|
|
{
|
|
/**
|
|
* @param array<string, mixed> $context
|
|
* @param array<string, mixed> $options
|
|
*/
|
|
public function generate(array $context, array $options = []): string
|
|
{
|
|
$messages = $context['messages'] ?? [];
|
|
$lastUser = null;
|
|
foreach (array_reverse($messages) as $msg) {
|
|
if (($msg['role'] ?? '') === 'USER' && ($msg['type'] ?? '') === 'user.prompt') {
|
|
$lastUser = $msg['content'] ?? null;
|
|
break;
|
|
}
|
|
}
|
|
|
|
$summary = $lastUser ? mb_substr($lastUser, 0, 80) : 'no user prompt';
|
|
|
|
return sprintf("Dummy-Agent: 我的当前回复的条目为 -> %s \n 我的上下文是: %s", $summary, json_encode($context['messages']));
|
|
}
|
|
}
|