Skip to content

Latest commit

 

History

History
41 lines (34 loc) · 1020 Bytes

05-additional-providers.md

File metadata and controls

41 lines (34 loc) · 1020 Bytes

Add custom provider

Add class

extend Instride\Bundle\PimcoreAiToolsBundle\Provider\AbstractProvider and implement Instride\Bundle\PimcoreAiToolsBundle\Provider\TextProviderInterface

class MyProvider extends AbstractProvider implements TextProviderInterface
{
    ...
    public function getText(array $options): string
    {
        // $options['prompt'] contains the composed prompt 
        return $options['prompt'];
    }
    ...

Add service definition

services:
    # My Provider
    pimcore_ai_tools.provider.my_provider:
        class: src\Provider\MyProvider
        tags:
            - { name: 'pimcore_ai_tools.provider', key: 'my_provider' }

extend provider locator arguments

services:
    pimcore_ai_tools.provider_locator:
        class: Symfony\Component\DependencyInjection\ServiceLocator
        arguments:
            -
                OpenAi: '@pimcore_ai_tools.provider.open_ai'
                MyProvider: '@pimcore_ai_tools.provider.my_provider'