xref: /plugin/dokullm/conf/metadata.php (revision a8c7401153bb2c238fb51cea882d9c47202f2535)
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