modelflow-ai / anthropic-adapter
将anthropic集成到modelflow-ai中。
0.2.0
2024-08-25 18:33 UTC
Requires
- php: ^8.2
- modelflow-ai/anthropic: ^0.2
Requires (Dev)
- asapo/remove-vendor-plugin: ^0.1
- jangregor/phpstan-prophecy: ^1.0
- modelflow-ai/chat: ^0.2
- modelflow-ai/prompt-template: ^0.2
- php-cs-fixer/shim: ^3.15
- phpspec/prophecy-phpunit: ^2.1@stable
- phpstan/extension-installer: ^1.2
- phpstan/phpstan: ^1.10, <1.10.55
- phpstan/phpstan-phpunit: ^1.3@stable
- phpunit/phpunit: ^10.3
- rector/rector: ^0.18.1
- symfony/dotenv: 7.1.x-dev
This package is auto-updated.
Last update: 2024-08-25 18:52:45 UTC
README
Modelflow AI
Anthropic Adapter
该适配器将Anthropic AI模型集成到Modelflow AI。
注意:这是modelflow-ai项目的一部分,请在主仓库中创建问题。
注意:该项目正在积极开发中,任何反馈都将非常受重视。
安装
要安装Anthropic Adapter包,您需要在您的计算机上安装PHP 8.2或更高版本以及Composer。然后,您可以通过运行以下命令将包添加到您的项目中:
composer require modelflow-ai/anthropic-adapter
示例
以下是一些如何在您的PHP应用程序中使用Anthropic Adapter的示例。您可以在示例目录中找到更多详细的示例。
用法
首先,初始化客户端
use ModelflowAi\Anthropic\Anthropic; $client = Anthropic::client('your-api-key');
然后,您可以使用AnthropicChatModelAdapter
use ModelflowAi\Chat\Adapter\AIChatAdapterInterface; use ModelflowAi\Chat\AIChatRequestHandler; use ModelflowAi\Chat\Request\AIChatRequest; use ModelflowAi\Chat\Request\Message\AIChatMessage; use ModelflowAi\Chat\Request\Message\AIChatMessageRoleEnum; use ModelflowAi\DecisionTree\DecisionTree; use ModelflowAi\DecisionTree\Criteria\CapabilityCriteria; use ModelflowAi\DecisionTree\DecisionRule; use ModelflowAi\Anthropic\Model; use ModelflowAi\AnthropicAdapter\Chat\AnthropicChatAdapter; use ModelflowAi\PromptTemplate\ChatPromptTemplate; $modelAdapter = new AnthropicChatAdapter($client, Model::CLAUDE_3_HAIKU); /** @var DecisionTreeInterface<AIChatRequest, AIChatAdapterInterface> $decisionTree */ $decisionTree = new DecisionTree([ new DecisionRule($modelAdapter, [CapabilityCriteria::SMART]), ]); $handler = new AIChatRequestHandler($decisionTree); $response = $handler->createRequest( ...ChatPromptTemplate::create( new AIChatMessage(AIChatMessageRoleEnum::SYSTEM, 'You are an {feeling} bot'), new AIChatMessage(AIChatMessageRoleEnum::USER, 'Hello {where}!'), )->format(['where' => 'world', 'feeling' => 'angry']), ) ->addCriteria(CapabilityCriteria::SMART) ->build() ->execute(); echo \sprintf('%s: %s', $response->getMessage()->role->value, $response->getMessage()->content);
贡献
欢迎贡献。请在https://github.com/modelflow-ai/.github的主仓库中打开一个问题或提交一个pull请求。
许可证
该项目受MIT许可证的许可。有关完整的版权和许可信息,请查看与源代码一起分发的LICENSE文件。