xref: /plugin/dokullm/conf/metadata.php (revision 0fdec17d4bba85e60fffb55d2c25a2af89940046)
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/**
4859036814SCostin Stroie * Metadata for the language configuration option
4959036814SCostin Stroie *
5059036814SCostin Stroie * Defines the language as a multichoice field with 'default' and 'ro' options.
5159036814SCostin Stroie *
5259036814SCostin Stroie * @var array
5359036814SCostin Stroie */
5459036814SCostin Stroie$meta['language'] = array('multichoice', '_choices' => array('default', 'ro'));
5559036814SCostin Stroie
5659036814SCostin Stroie/**
5759036814SCostin Stroie * Metadata for the temperature configuration option
5859036814SCostin Stroie *
5959036814SCostin Stroie * Defines the temperature as a numeric field with a range from 0.0 to 1.0,
6059036814SCostin Stroie * with a default of 0.3. This controls the randomness of the LLM responses.
6159036814SCostin Stroie *
6259036814SCostin Stroie * @var array
6359036814SCostin Stroie */
6459036814SCostin Stroie$meta['temperature'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/');
6559036814SCostin Stroie
6659036814SCostin Stroie/**
6759036814SCostin Stroie * Metadata for the top-p configuration option
6859036814SCostin Stroie *
6959036814SCostin Stroie * Defines the top-p (nucleus sampling) as a numeric field with a range from 0.0 to 1.0,
7059036814SCostin Stroie * with a default of 0.8. This controls the cumulative probability of token selection.
7159036814SCostin Stroie *
7259036814SCostin Stroie * @var array
7359036814SCostin Stroie */
7459036814SCostin Stroie$meta['top_p'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/');
7559036814SCostin Stroie
7659036814SCostin Stroie/**
7759036814SCostin Stroie * Metadata for the top-k configuration option
7859036814SCostin Stroie *
7959036814SCostin Stroie * Defines the top-k as a numeric field with a minimum value of 1,
8059036814SCostin Stroie * with a default of 20. This controls the number of highest probability tokens considered.
8159036814SCostin Stroie *
8259036814SCostin Stroie * @var array
8359036814SCostin Stroie */
8459036814SCostin Stroie$meta['top_k'] = array('numeric', '_min' => 1);
8559036814SCostin Stroie
8659036814SCostin Stroie/**
8759036814SCostin Stroie * Metadata for the min-p configuration option
8859036814SCostin Stroie *
8959036814SCostin Stroie * Defines the min-p as a numeric field with a range from 0.0 to 1.0,
9059036814SCostin Stroie * with a default of 0.0. This controls the minimum probability threshold for token selection.
9159036814SCostin Stroie *
9259036814SCostin Stroie * @var array
9359036814SCostin Stroie */
9459036814SCostin Stroie$meta['min_p'] = array('numeric', '_min' => 0.0, '_max' => 1.0, '_pattern' => '/^\d+(\.\d+)?$/');
9559036814SCostin Stroie
9659036814SCostin Stroie/**
9759036814SCostin Stroie * Metadata for the show_copy_button configuration option
9859036814SCostin Stroie *
9959036814SCostin Stroie * Defines whether the copy button should be shown as a boolean field.
10059036814SCostin Stroie *
10159036814SCostin Stroie * @var array
10259036814SCostin Stroie */
10359036814SCostin Stroie$meta['show_copy_button'] = array('onoff');
10459036814SCostin Stroie
10559036814SCostin Stroie/**
10659036814SCostin Stroie * Metadata for the replace_id configuration option
10759036814SCostin Stroie *
10859036814SCostin Stroie * Defines whether the template ID should be replaced with the new page ID
10959036814SCostin Stroie * when copying a page with a template.
11059036814SCostin Stroie *
11159036814SCostin Stroie * @var array
11259036814SCostin Stroie */
11359036814SCostin Stroie$meta['replace_id'] = array('onoff');
11459036814SCostin Stroie
11559036814SCostin Stroie/**
11659036814SCostin Stroie * Metadata for the think configuration option
11759036814SCostin Stroie *
11859036814SCostin Stroie * Defines whether the LLM should engage in deeper thinking processes before responding.
11959036814SCostin Stroie * When enabled, the LLM will use thinking capabilities; when disabled, it will provide direct responses.
12059036814SCostin Stroie *
12159036814SCostin Stroie * @var array
12259036814SCostin Stroie */
12359036814SCostin Stroie$meta['think'] = array('onoff');
12459036814SCostin Stroie
12559036814SCostin Stroie/**
12659036814SCostin Stroie * Metadata for the use_tools configuration option
12759036814SCostin Stroie *
12859036814SCostin Stroie * Defines whether the LLM can use tools to enhance its responses.
12959036814SCostin Stroie * When enabled, the LLM can call tools like get_document, get_template, and get_examples;
13059036814SCostin Stroie * when disabled, these tools will not be available to the LLM.
13159036814SCostin Stroie *
13259036814SCostin Stroie * @var array
13359036814SCostin Stroie */
13459036814SCostin Stroie$meta['use_tools'] = array('onoff');
135*0fdec17dSCostin Stroie (aider)
136*0fdec17dSCostin Stroie (aider)/**
137*0fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB host configuration option
138*0fdec17dSCostin Stroie (aider) *
139*0fdec17dSCostin Stroie (aider) * Defines the ChromaDB host as a string input field in the configuration interface.
140*0fdec17dSCostin Stroie (aider) *
141*0fdec17dSCostin Stroie (aider) * @var array
142*0fdec17dSCostin Stroie (aider) */
143*0fdec17dSCostin Stroie (aider)$meta['chroma_host'] = array('string');
144*0fdec17dSCostin Stroie (aider)
145*0fdec17dSCostin Stroie (aider)/**
146*0fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB port configuration option
147*0fdec17dSCostin Stroie (aider) *
148*0fdec17dSCostin Stroie (aider) * Defines the ChromaDB port as a numeric input field.
149*0fdec17dSCostin Stroie (aider) *
150*0fdec17dSCostin Stroie (aider) * @var array
151*0fdec17dSCostin Stroie (aider) */
152*0fdec17dSCostin Stroie (aider)$meta['chroma_port'] = array('numeric');
153*0fdec17dSCostin Stroie (aider)
154*0fdec17dSCostin Stroie (aider)/**
155*0fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB tenant configuration option
156*0fdec17dSCostin Stroie (aider) *
157*0fdec17dSCostin Stroie (aider) * Defines the ChromaDB tenant as a string input field in the configuration interface.
158*0fdec17dSCostin Stroie (aider) *
159*0fdec17dSCostin Stroie (aider) * @var array
160*0fdec17dSCostin Stroie (aider) */
161*0fdec17dSCostin Stroie (aider)$meta['chroma_tenant'] = array('string');
162*0fdec17dSCostin Stroie (aider)
163*0fdec17dSCostin Stroie (aider)/**
164*0fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB database configuration option
165*0fdec17dSCostin Stroie (aider) *
166*0fdec17dSCostin Stroie (aider) * Defines the ChromaDB database as a string input field in the configuration interface.
167*0fdec17dSCostin Stroie (aider) *
168*0fdec17dSCostin Stroie (aider) * @var array
169*0fdec17dSCostin Stroie (aider) */
170*0fdec17dSCostin Stroie (aider)$meta['chroma_database'] = array('string');
171*0fdec17dSCostin Stroie (aider)
172*0fdec17dSCostin Stroie (aider)/**
173*0fdec17dSCostin Stroie (aider) * Metadata for the ChromaDB collection configuration option
174*0fdec17dSCostin Stroie (aider) *
175*0fdec17dSCostin Stroie (aider) * Defines the ChromaDB collection as a string input field in the configuration interface.
176*0fdec17dSCostin Stroie (aider) *
177*0fdec17dSCostin Stroie (aider) * @var array
178*0fdec17dSCostin Stroie (aider) */
179*0fdec17dSCostin Stroie (aider)$meta['chroma_collection'] = array('string');
180*0fdec17dSCostin Stroie (aider)
181*0fdec17dSCostin Stroie (aider)/**
182*0fdec17dSCostin Stroie (aider) * Metadata for the default institution configuration option
183*0fdec17dSCostin Stroie (aider) *
184*0fdec17dSCostin Stroie (aider) * Defines the default institution as a string input field in the configuration interface.
185*0fdec17dSCostin Stroie (aider) *
186*0fdec17dSCostin Stroie (aider) * @var array
187*0fdec17dSCostin Stroie (aider) */
188*0fdec17dSCostin Stroie (aider)$meta['default_institution'] = array('string');
189*0fdec17dSCostin Stroie (aider)
190*0fdec17dSCostin Stroie (aider)/**
191*0fdec17dSCostin Stroie (aider) * Metadata for the Ollama host configuration option
192*0fdec17dSCostin Stroie (aider) *
193*0fdec17dSCostin Stroie (aider) * Defines the Ollama host as a string input field in the configuration interface.
194*0fdec17dSCostin Stroie (aider) *
195*0fdec17dSCostin Stroie (aider) * @var array
196*0fdec17dSCostin Stroie (aider) */
197*0fdec17dSCostin Stroie (aider)$meta['ollama_host'] = array('string');
198*0fdec17dSCostin Stroie (aider)
199*0fdec17dSCostin Stroie (aider)/**
200*0fdec17dSCostin Stroie (aider) * Metadata for the Ollama port configuration option
201*0fdec17dSCostin Stroie (aider) *
202*0fdec17dSCostin Stroie (aider) * Defines the Ollama port as a numeric input field.
203*0fdec17dSCostin Stroie (aider) *
204*0fdec17dSCostin Stroie (aider) * @var array
205*0fdec17dSCostin Stroie (aider) */
206*0fdec17dSCostin Stroie (aider)$meta['ollama_port'] = array('numeric');
207*0fdec17dSCostin Stroie (aider)
208*0fdec17dSCostin Stroie (aider)/**
209*0fdec17dSCostin Stroie (aider) * Metadata for the Ollama embeddings model configuration option
210*0fdec17dSCostin Stroie (aider) *
211*0fdec17dSCostin Stroie (aider) * Defines the Ollama embeddings model as a string input field in the configuration interface.
212*0fdec17dSCostin Stroie (aider) *
213*0fdec17dSCostin Stroie (aider) * @var array
214*0fdec17dSCostin Stroie (aider) */
215*0fdec17dSCostin Stroie (aider)$meta['ollama_embeddings_model'] = array('string');
216