Add in settings.php

// API configuration for ConversaBot Chat.
// The configuration name is used as the chat title.
$settings['conversabot_chat']['bot one'] = [
  'url' => 'https://demo.open-rag.ai',
  'endpoint' => '/v1/chat/completions',
  'model' => 'openrag-drupal_public',
  'token' => 'my key'
];

$settings['conversabot_chat']['bot two'] = [
  'url' => 'https://demo.open-rag.ai',
  'endpoint' => '/v1/chat/completions',
  'model' => 'openrag-partition_prive',
  'token' => 'my key'
];

// Example of request local ollama inside docker
// The website is inside a container and it can access ollama from host via 7869
// That means curl -s http://host.docker.internal:7869/api/tags works from
// the website container.
$settings['conversabot_chat']['Ollama LOCAL'] = [
  'url' => 'http://host.docker.internal:7869',
  'endpoint' => '/v1/chat/completions',
  'model' => 'OpenLLM-France/Luciole-Instruct-1.1:1B',
  //Fill token with non empty string even if local ollama doesn't need it.
  'token' => 'nonempty'
];


Configure the module in /admin/config/conversabot_chat.

The module provides a ConversaBot Chat block type.
Only Authenticated users can access the chat bot.
Add multiple blocks and configure each block to use one of the chatbot configurations defined in settings.php.

Multiple independent chats on the same page are supported.

The configured API must provide an OpenAI-compatible chat completions endpoint.


Debug

Check /admin/reports/status to verify that the configuration can communicate with configured LLMs.

drush php:eval "print_r(\Drupal::cache()->get('conversabot:block_uuid_indexes:claro')->data);"