PluginProbe ʕ •ᴥ•ʔ
AI Engine – The Chatbot, AI Framework & MCP for WordPress / 1.9.92
AI Engine – The Chatbot, AI Framework & MCP for WordPress v1.9.92
3.5.8 3.5.7 3.5.6 3.5.5 3.5.4 3.5.3 3.5.2 3.5.1 3.5.0 3.4.9 3.4.8 3.4.7 0.2.1 1.6.91 0.2.2 1.6.92 0.2.3 1.6.93 0.2.4 1.6.94 0.2.5 1.6.95 0.2.6 1.6.96 0.2.7 1.6.97 0.2.8 1.6.98 0.2.9 1.6.99 0.3.0 1.7.0 0.3.1 1.7.1 0.3.2 1.7.2 0.3.3 1.7.3 0.3.4 1.7.4 0.3.5 1.7.5 0.3.6 1.7.6 0.4.0 1.7.7 0.4.1 1.7.8 0.4.2 1.7.9 0.4.3 1.8.0 0.4.4 1.8.1 0.4.5 1.8.2 0.4.6 1.8.3 0.4.7 1.8.4 0.4.8 1.8.5 0.4.9 1.8.6 0.5.0 1.8.7 0.5.1 1.8.8 0.5.2 1.8.9 0.5.3 1.9.0 0.5.4 1.9.1 0.5.5 1.9.2 0.5.6 1.9.3 0.5.7 1.9.4 0.5.8 1.9.5 0.5.9 1.9.6 0.6.0 1.9.7 0.6.1 1.9.8 0.6.2 1.9.81 0.6.3 1.9.82 0.6.4 1.9.83 0.6.5 1.9.84 0.6.6 1.9.85 0.6.7 1.9.86 0.6.8 1.9.87 0.6.9 1.9.88 0.7.0 1.9.89 0.7.1 1.9.90 0.7.2 1.9.91 0.7.3 1.9.92 0.7.4 1.9.93 0.7.5 1.9.94 0.7.6 1.9.95 0.7.7 1.9.96 0.7.8 1.9.97 0.7.9 1.9.98 0.8.0 1.9.99 0.8.1 2.0.0 0.8.2 2.0.1 0.8.3 2.0.2 0.8.4 2.0.3 0.8.5 2.0.4 0.8.6 2.0.5 0.8.7 2.0.6 0.8.8 2.0.7 0.8.9 2.0.8 0.9.0 2.0.9 0.9.2 2.1.0 0.9.3 2.1.1 0.9.4 2.1.2 0.9.5 2.1.3 0.9.6 2.1.4 0.9.7 2.1.5 0.9.8 2.1.6 0.9.81 2.1.7 0.9.82 2.1.8 0.9.83 2.1.9 0.9.84 2.2.0 0.9.85 2.2.1 0.9.86 2.2.2 0.9.87 2.2.3 0.9.88 2.2.4 0.9.89 2.2.5 0.9.9 2.2.51 0.9.91 2.2.52 0.9.92 2.2.53 0.9.93 2.2.54 0.9.94 2.2.56 0.9.95 2.2.57 0.9.96 2.2.6 0.9.97 2.2.60 0.9.98 2.2.61 0.9.99 2.2.62 1.0.0 2.2.63 1.0.01 2.2.70 1.0.1 2.2.80 1.0.2 2.2.81 1.0.3 2.2.90 1.0.4 2.2.91 1.0.5 2.2.92 1.0.6 2.2.93 1.0.7 2.2.94 1.0.8 2.2.95 1.0.9 2.3.0 1.1.0 2.3.1 1.1.1 2.3.2 1.1.2 2.3.3 1.1.3 2.3.4 1.1.4 2.3.5 1.1.5 2.3.6 1.1.6 2.3.7 1.1.7 2.3.8 1.1.8 2.3.9 1.1.9 2.4.0 1.2.0 2.4.1 1.2.1 2.4.2 1.2.2 2.4.3 1.2.21 2.4.4 1.2.3 2.4.5 1.2.30 2.4.6 1.3.0 2.4.7 1.3.1 2.4.8 1.3.2 2.4.9 1.3.3 2.5.0 1.3.31 2.5.1 1.3.32 2.5.2 1.3.33 2.5.3 1.3.34 2.5.4 1.3.35 2.5.5 1.3.36 2.5.6 1.3.37 2.5.7 1.3.38 2.5.8 1.3.39 2.5.9 1.3.40 2.6.0 1.3.41 2.6.1 1.3.42 2.6.2 1.3.43 2.6.3 1.3.44 2.6.5 1.3.45 2.6.6 1.3.46 2.6.7 1.3.47 2.6.8 1.3.48 2.6.9 1.3.49 2.7.0 1.3.50 2.7.1 1.3.51 2.7.2 1.3.52 2.7.3 1.3.53 2.7.4 1.3.54 2.7.5 1.3.56 2.7.6 1.3.57 2.7.7 1.3.58 2.7.8 1.3.59 2.7.9 1.3.60 2.8.0 1.3.61 2.8.1 1.3.62 2.8.2 1.3.63 2.8.3 1.3.64 2.8.4 1.3.65 2.8.5 1.3.66 2.8.6 1.3.67 2.8.7 1.3.68 2.8.8 1.3.69 2.8.9 1.3.70 2.9.0 1.3.71 2.9.1 1.3.72 2.9.2 1.3.73 2.9.3 1.3.74 2.9.4 1.3.75 2.9.5 1.3.76 2.9.6 1.3.77 2.9.7 1.3.78 2.9.8 1.3.79 2.9.9 1.3.80 3.0.0 1.3.81 3.0.1 1.3.82 3.0.2 1.3.83 3.0.3 1.3.84 3.0.4 1.3.85 3.0.5 1.3.86 3.0.6 1.3.87 3.0.7 1.3.88 3.0.8 1.3.89 3.0.9 1.3.90 3.1.0 1.3.91 3.1.1 1.3.92 3.1.2 1.3.93 3.1.3 1.3.94 3.1.4 1.3.95 3.1.5 1.3.96 3.1.6 1.3.97 3.1.7 1.3.98 3.1.8 1.3.99 3.1.9 1.4.0 3.2.0 1.4.1 3.2.1 1.4.2 3.2.2 1.4.3 3.2.3 1.4.4 3.2.4 1.4.5 3.2.5 1.4.6 3.2.6 1.4.7 3.2.7 1.4.8 3.2.8 1.4.9 3.2.9 1.5.0 3.3.0 1.5.1 3.3.1 1.5.2 3.3.2 1.5.3 3.3.3 1.5.4 3.3.4 1.5.5 3.3.5 1.5.6 3.3.6 1.5.7 3.3.7 1.5.8 3.3.8 1.5.9 3.3.9 1.6.0 3.4.0 1.6.1 3.4.1 1.6.2 3.4.2 1.6.3 3.4.3 1.6.5 3.4.4 1.6.51 3.4.5 1.6.52 3.4.6 1.6.53 1.6.54 1.6.55 1.6.56 1.6.57 1.6.58 1.6.59 1.6.60 1.6.61 1.6.62 1.6.63 1.6.64 1.6.65 1.6.66 1.6.67 1.6.68 trunk 1.6.69 0.0.1 1.6.70 0.0.2 1.6.71 0.0.3 1.6.72 0.0.4 1.6.73 0.0.5 1.6.74 0.0.6 1.6.75 0.0.7 1.6.76 0.0.8 1.6.77 0.0.9 1.6.78 0.1.0 1.6.79 0.1.1 1.6.81 0.1.2 1.6.82 0.1.3 1.6.83 0.1.4 1.6.84 0.1.5 1.6.85 0.1.6 1.6.86 0.1.7 1.6.87 0.1.8 1.6.88 0.1.9 1.6.89 0.2.0 1.6.90
ai-engine / classes / queries / base.php
ai-engine / classes / queries Last commit date
base.php 2 years ago embed.php 2 years ago function.php 2 years ago image.php 2 years ago parameter.php 2 years ago text.php 2 years ago transcribe.php 2 years ago
base.php
178 lines
1 <?php
2
3 class Meow_MWAI_Query_Base implements JsonSerializable {
4 public string $env = ''; // Ouch, not sure if it's used, but afraid that it will be confused with the AI env.
5 public string $prompt = '';
6 public string $model = '';
7 public string $mode = '';
8 public ?string $session = null;
9 public int $maxResults = 1;
10 public ?string $botId = null;
11
12 // Functions
13 public array $functions = [];
14 public ?string $functionCall = null;
15
16 // Overrides for env
17 public string $envId = '';
18 public ?string $apiKey = null;
19 public ?string $service = null; // TODO: This should be removed at some point. Should use envId instead.
20
21 public function __construct( $prompt = '' ) {
22 global $mwai_core;
23 $this->setPrompt( $prompt );
24 $this->session = $mwai_core->get_session_id();
25 }
26
27 #[\ReturnTypeWillChange]
28 public function jsonSerialize() {
29 return [
30 'class' => get_class( $this ),
31 'env' => $this->env,
32 'envId' => $this->envId,
33 'prompt' => $this->prompt,
34 'model' => $this->model,
35 'mode' => $this->mode,
36 'session' => $this->session,
37 'maxResults' => $this->maxResults
38 ];
39 }
40
41 public function addFunction( Meow_MWAI_Query_Function $function ): void {
42 $this->functions[] = $function;
43 $this->functionCall = "auto";
44 }
45
46 public function setFunctions( array $functions ): void {
47 $this->functions = $functions;
48 $this->functionCall = "auto";
49 }
50
51 public function getFunctions(): array {
52 return $this->functions;
53 }
54
55 public function replace( $search, $replace ) {
56 $this->prompt = str_replace( $search, $replace, $this->prompt );
57 }
58
59 public function getLastPrompt(): string {
60 return $this->prompt;
61 }
62
63 /**
64 * The environment, like "chatbot", "imagesbot", "chatbot-007", "textwriter", etc...
65 * Used for statistics, mainly.
66 * @param string $env The environment.
67 */
68 public function setEnv( string $env ): void {
69 $this->env = $env;
70 }
71
72 /**
73 * The environment ID for AI services.
74 * Used for statistics, mainly.
75 * @param string $envId The environment ID.
76 */
77 public function setEnvId( string $envId ): void {
78 $this->envId = $envId;
79 }
80
81 /**
82 * ID of the model to use.
83 * @param string $model ID of the model to use.
84 */
85 public function setModel( string $model ) {
86 $this->model = $model;
87 }
88
89 /**
90 * The mode
91 * @param string $mode.
92 */
93 public function setMode( string $mode ) {
94 $this->mode = $mode;
95 }
96
97 /**
98 * Given a prompt, the model will return one or more predicted completions.
99 * It can also return the probabilities of alternative tokens at each position.
100 * @param string $prompt The prompt to generate completions.
101 */
102 public function setPrompt( string $prompt ) {
103 $this->prompt = $prompt;
104 }
105
106 public function getPrompt() {
107 return $this->prompt;
108 }
109
110 /**
111 * Similar to the prompt, but focus on the new/last message.
112 * Only used when the model has a chat mode (and only used in messages).
113 * With Meow_MWAI_Query_Base, this is the same as setPrompt.
114 * @param string $prompt The messages to generate completions.
115 */
116 public function setNewMessage( string $newMessage ): void {
117 $this->setPrompt( $newMessage );
118 }
119
120 public function getLastMessage() {
121 return $this->getPrompt();
122 }
123
124 /**
125 * The API key to use.
126 * @param string $apiKey The API key.
127 */
128 public function setApiKey( string $apiKey ) {
129 $this->apiKey = $apiKey;
130 }
131
132 /**
133 * The service to use.
134 * @param string $service The service.
135 */
136 public function setService( string $service ) {
137 $this->service = $service;
138 }
139
140 /**
141 * The session ID to use.
142 * @param string $session The session ID.
143 */
144 public function setSession( string $session ) {
145 $this->session = $session;
146 }
147
148 /**
149 * The bot ID to use.
150 * @param string $botId The bot ID.
151 */
152 public function setBotId( string $botId ) {
153 $this->botId = $botId;
154 }
155
156 /**
157 * How many completions to generate for each prompt.
158 * Because this parameter generates many completions, it can quickly consume your token quota.
159 * Use carefully and ensure that you have reasonable settings for max_tokens and stop.
160 * @param float $maxResults Number of completions.
161 */
162 public function setMaxResults( int $maxResults ) {
163 $this->maxResults = $maxResults;
164 }
165
166 // **
167 // * Check if everything is correct, otherwise fix it (like the max number of tokens).
168 // */
169 public function finalChecks() {
170 }
171
172 /*
173 * Get the JSON representation of the query.
174 */
175 public function toJson() {
176 return json_encode( $this );
177 }
178 }