159036814SCostin Stroie<?php 259036814SCostin Stroie/** 359036814SCostin Stroie * Options for the dokullm plugin 459036814SCostin Stroie * 559036814SCostin Stroie * This file defines the configuration metadata for the LLM integration plugin. 659036814SCostin Stroie * It specifies the type and validation rules for each configuration option. 759036814SCostin Stroie */ 859036814SCostin Stroie 959036814SCostin Stroie/** 1059036814SCostin Stroie * Metadata for the API URL configuration option 1159036814SCostin Stroie * 1259036814SCostin Stroie * Defines the API endpoint URL as a string input field in the configuration interface. 1359036814SCostin Stroie * 1459036814SCostin Stroie * @var array 1559036814SCostin Stroie */ 1659036814SCostin Stroie$meta['api_url'] = array('string'); 1759036814SCostin Stroie 1859036814SCostin Stroie/** 1959036814SCostin Stroie * Metadata for the API key configuration option 2059036814SCostin Stroie * 2159036814SCostin Stroie * Defines the API key as a password field in the configuration interface. 2259036814SCostin Stroie * This ensures the value is masked when entered and stored securely. 2359036814SCostin Stroie * 2459036814SCostin Stroie * @var array 2559036814SCostin Stroie */ 2659036814SCostin Stroie$meta['api_key'] = array('password'); 2759036814SCostin Stroie 2859036814SCostin Stroie/** 2959036814SCostin Stroie * Metadata for the model configuration option 3059036814SCostin Stroie * 3159036814SCostin Stroie * Defines the model identifier as a string input field in the configuration interface. 3259036814SCostin Stroie * 3359036814SCostin Stroie * @var array 3459036814SCostin Stroie */ 3559036814SCostin Stroie$meta['model'] = array('string'); 3659036814SCostin Stroie 3759036814SCostin Stroie/** 3859036814SCostin Stroie * Metadata for the timeout configuration option 3959036814SCostin Stroie * 4059036814SCostin Stroie * Defines the timeout value as a numeric input field with a minimum value of 5 seconds. 4159036814SCostin Stroie * This prevents users from setting an unreasonably low timeout value. 4259036814SCostin Stroie * 4359036814SCostin Stroie * @var array 4459036814SCostin Stroie */ 4559036814SCostin Stroie$meta['timeout'] = array('numeric', '_min' => 5); 4659036814SCostin Stroie 4759036814SCostin Stroie/** 4873719e9bSCostin Stroie (aider) * Metadata for the profile configuration option 4959036814SCostin Stroie * 5073719e9bSCostin Stroie (aider) * Defines the profile as a string input field in the configuration interface. 5173719e9bSCostin Stroie (aider) * User prompts can be classified in multiple profiles. By default, 'default'. 5259036814SCostin Stroie * 5359036814SCostin Stroie * @var array 5459036814SCostin Stroie */ 5573719e9bSCostin Stroie (aider)$meta['profile'] = array('string'); 5659036814SCostin Stroie 5759036814SCostin Stroie/** 5859036814SCostin Stroie * Metadata for the temperature configuration option 5959036814SCostin Stroie * 6059036814SCostin Stroie * Defines the temperature as a numeric field with a range from 0.0 to 1.0, 6159036814SCostin Stroie * with a default of 0.3. This controls the randomness of the LLM responses. 6259036814SCostin Stroie * 6359036814SCostin Stroie * @var array 6459036814SCostin Stroie */ 6559036814SCostin Stroie$meta['temperature'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/'); 6659036814SCostin Stroie 6759036814SCostin Stroie/** 6859036814SCostin Stroie * Metadata for the top-p configuration option 6959036814SCostin Stroie * 7059036814SCostin Stroie * Defines the top-p (nucleus sampling) as a numeric field with a range from 0.0 to 1.0, 7159036814SCostin Stroie * with a default of 0.8. This controls the cumulative probability of token selection. 7259036814SCostin Stroie * 7359036814SCostin Stroie * @var array 7459036814SCostin Stroie */ 7559036814SCostin Stroie$meta['top_p'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/'); 7659036814SCostin Stroie 7759036814SCostin Stroie/** 7859036814SCostin Stroie * Metadata for the top-k configuration option 7959036814SCostin Stroie * 8059036814SCostin Stroie * Defines the top-k as a numeric field with a minimum value of 1, 8159036814SCostin Stroie * with a default of 20. This controls the number of highest probability tokens considered. 8259036814SCostin Stroie * 8359036814SCostin Stroie * @var array 8459036814SCostin Stroie */ 8559036814SCostin Stroie$meta['top_k'] = array('numeric', '_min' => 1); 8659036814SCostin Stroie 8759036814SCostin Stroie/** 8859036814SCostin Stroie * Metadata for the min-p configuration option 8959036814SCostin Stroie * 9059036814SCostin Stroie * Defines the min-p as a numeric field with a range from 0.0 to 1.0, 9159036814SCostin Stroie * with a default of 0.0. This controls the minimum probability threshold for token selection. 9259036814SCostin Stroie * 9359036814SCostin Stroie * @var array 9459036814SCostin Stroie */ 9559036814SCostin Stroie$meta['min_p'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/'); 9659036814SCostin Stroie 9759036814SCostin Stroie/** 9859036814SCostin Stroie * Metadata for the show_copy_button configuration option 9959036814SCostin Stroie * 10059036814SCostin Stroie * Defines whether the copy button should be shown as a boolean field. 10159036814SCostin Stroie * 10259036814SCostin Stroie * @var array 10359036814SCostin Stroie */ 10459036814SCostin Stroie$meta['show_copy_button'] = array('onoff'); 10559036814SCostin Stroie 10659036814SCostin Stroie/** 10759036814SCostin Stroie * Metadata for the replace_id configuration option 10859036814SCostin Stroie * 10959036814SCostin Stroie * Defines whether the template ID should be replaced with the new page ID 11059036814SCostin Stroie * when copying a page with a template. 11159036814SCostin Stroie * 11259036814SCostin Stroie * @var array 11359036814SCostin Stroie */ 11459036814SCostin Stroie$meta['replace_id'] = array('onoff'); 11559036814SCostin Stroie 11659036814SCostin Stroie/** 11759036814SCostin Stroie * Metadata for the think configuration option 11859036814SCostin Stroie * 11959036814SCostin Stroie * Defines whether the LLM should engage in deeper thinking processes before responding. 12059036814SCostin Stroie * When enabled, the LLM will use thinking capabilities; when disabled, it will provide direct responses. 12159036814SCostin Stroie * 12259036814SCostin Stroie * @var array 12359036814SCostin Stroie */ 12459036814SCostin Stroie$meta['think'] = array('onoff'); 12559036814SCostin Stroie 12659036814SCostin Stroie/** 12759036814SCostin Stroie * Metadata for the use_tools configuration option 12859036814SCostin Stroie * 12959036814SCostin Stroie * Defines whether the LLM can use tools to enhance its responses. 13059036814SCostin Stroie * When enabled, the LLM can call tools like get_document, get_template, and get_examples; 13159036814SCostin Stroie * when disabled, these tools will not be available to the LLM. 13259036814SCostin Stroie * 13359036814SCostin Stroie * @var array 13459036814SCostin Stroie */ 13559036814SCostin Stroie$meta['use_tools'] = array('onoff'); 1360fdec17dSCostin Stroie (aider) 1370fdec17dSCostin Stroie (aider)/** 138*a8c74011SCostin Stroie (aider) * Metadata for the enable_chromadb configuration option 139*a8c74011SCostin Stroie (aider) * 140*a8c74011SCostin Stroie (aider) * Defines whether ChromaDB integration is enabled. 141*a8c74011SCostin Stroie (aider) * When enabled, ChromaDB features will be available; when disabled, they will be hidden. 142*a8c74011SCostin Stroie (aider) * 143*a8c74011SCostin Stroie (aider) * @var array 144*a8c74011SCostin Stroie (aider) */ 145*a8c74011SCostin Stroie (aider)$meta['enable_chromadb'] = array('onoff'); 146*a8c74011SCostin Stroie (aider) 147*a8c74011SCostin Stroie (aider)/** 1480fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB host configuration option 1490fdec17dSCostin Stroie (aider) * 1500fdec17dSCostin Stroie (aider) * Defines the ChromaDB host as a string input field in the configuration interface. 1510fdec17dSCostin Stroie (aider) * 1520fdec17dSCostin Stroie (aider) * @var array 1530fdec17dSCostin Stroie (aider) */ 1540fdec17dSCostin Stroie (aider)$meta['chroma_host'] = array('string'); 1550fdec17dSCostin Stroie (aider) 1560fdec17dSCostin Stroie (aider)/** 1570fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB port configuration option 1580fdec17dSCostin Stroie (aider) * 1590fdec17dSCostin Stroie (aider) * Defines the ChromaDB port as a numeric input field. 1600fdec17dSCostin Stroie (aider) * 1610fdec17dSCostin Stroie (aider) * @var array 1620fdec17dSCostin Stroie (aider) */ 1630fdec17dSCostin Stroie (aider)$meta['chroma_port'] = array('numeric'); 1640fdec17dSCostin Stroie (aider) 1650fdec17dSCostin Stroie (aider)/** 1660fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB tenant configuration option 1670fdec17dSCostin Stroie (aider) * 1680fdec17dSCostin Stroie (aider) * Defines the ChromaDB tenant as a string input field in the configuration interface. 1690fdec17dSCostin Stroie (aider) * 1700fdec17dSCostin Stroie (aider) * @var array 1710fdec17dSCostin Stroie (aider) */ 1720fdec17dSCostin Stroie (aider)$meta['chroma_tenant'] = array('string'); 1730fdec17dSCostin Stroie (aider) 1740fdec17dSCostin Stroie (aider)/** 1750fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB database configuration option 1760fdec17dSCostin Stroie (aider) * 1770fdec17dSCostin Stroie (aider) * Defines the ChromaDB database as a string input field in the configuration interface. 1780fdec17dSCostin Stroie (aider) * 1790fdec17dSCostin Stroie (aider) * @var array 1800fdec17dSCostin Stroie (aider) */ 1810fdec17dSCostin Stroie (aider)$meta['chroma_database'] = array('string'); 1820fdec17dSCostin Stroie (aider) 1830fdec17dSCostin Stroie (aider)/** 1840fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB collection configuration option 1850fdec17dSCostin Stroie (aider) * 1860fdec17dSCostin Stroie (aider) * Defines the ChromaDB collection as a string input field in the configuration interface. 1870fdec17dSCostin Stroie (aider) * 1880fdec17dSCostin Stroie (aider) * @var array 1890fdec17dSCostin Stroie (aider) */ 1900fdec17dSCostin Stroie (aider)$meta['chroma_collection'] = array('string'); 1910fdec17dSCostin Stroie (aider) 1920fdec17dSCostin Stroie (aider)/** 1930fdec17dSCostin Stroie (aider) * Metadata for the default institution configuration option 1940fdec17dSCostin Stroie (aider) * 1950fdec17dSCostin Stroie (aider) * Defines the default institution as a string input field in the configuration interface. 1960fdec17dSCostin Stroie (aider) * 1970fdec17dSCostin Stroie (aider) * @var array 1980fdec17dSCostin Stroie (aider) */ 1990fdec17dSCostin Stroie (aider)$meta['default_institution'] = array('string'); 2000fdec17dSCostin Stroie (aider) 2010fdec17dSCostin Stroie (aider)/** 2020fdec17dSCostin Stroie (aider) * Metadata for the Ollama host configuration option 2030fdec17dSCostin Stroie (aider) * 2040fdec17dSCostin Stroie (aider) * Defines the Ollama host as a string input field in the configuration interface. 2050fdec17dSCostin Stroie (aider) * 2060fdec17dSCostin Stroie (aider) * @var array 2070fdec17dSCostin Stroie (aider) */ 2080fdec17dSCostin Stroie (aider)$meta['ollama_host'] = array('string'); 2090fdec17dSCostin Stroie (aider) 2100fdec17dSCostin Stroie (aider)/** 2110fdec17dSCostin Stroie (aider) * Metadata for the Ollama port configuration option 2120fdec17dSCostin Stroie (aider) * 2130fdec17dSCostin Stroie (aider) * Defines the Ollama port as a numeric input field. 2140fdec17dSCostin Stroie (aider) * 2150fdec17dSCostin Stroie (aider) * @var array 2160fdec17dSCostin Stroie (aider) */ 2170fdec17dSCostin Stroie (aider)$meta['ollama_port'] = array('numeric'); 2180fdec17dSCostin Stroie (aider) 2190fdec17dSCostin Stroie (aider)/** 2200fdec17dSCostin Stroie (aider) * Metadata for the Ollama embeddings model configuration option 2210fdec17dSCostin Stroie (aider) * 2220fdec17dSCostin Stroie (aider) * Defines the Ollama embeddings model as a string input field in the configuration interface. 2230fdec17dSCostin Stroie (aider) * 2240fdec17dSCostin Stroie (aider) * @var array 2250fdec17dSCostin Stroie (aider) */ 2260fdec17dSCostin Stroie (aider)$meta['ollama_embeddings_model'] = array('string'); 227