apiKey = $apiKey; $this->model = $model; } function headers() { if (isset($_POST["gemini"]) && !isset($_POST["query"])) { $prompt = "I have a " . Adminer\get_driver(Adminer\DRIVER) . " database with this structure:\n\n"; foreach (Adminer\tables_list() as $table => $type) { $prompt .= Adminer\create_sql($table, false, "CREATE") . ";\n\n"; } $prompt .= "Prefer returning relevant columns including primary key.\n\n"; $prompt .= "Give me this SQL query and nothing else:\n\n$_POST[gemini]\n\n"; //~ echo $prompt; exit; $context = stream_context_create(array("http" => array( "method" => "POST", "header" => array("User-Agent: AdminerSqlGemini/" . Adminer\VERSION, "Content-Type: application/json"), "content" => '{"contents": [{"parts":[{"text": ' . json_encode($prompt) . '}]}]}', "ignore_errors" => true, ))); $response = json_decode(file_get_contents("https://generativelanguage.googleapis.com/v1beta/models/$this->model:generateContent?key=$this->apiKey", false, $context)); if (isset($response->error)) { echo "-- " . $response->error->message; } else { $text = $response->candidates[0]->content->parts[0]->text; $text = preg_replace('~(\n|^)```sql\n(.+)\n```(\n|$)~sU', "*/\n\n\\2\n\n/*", "/*\n$text*/\n"); echo preg_replace('~/\*\s*\*/\n*~', '', $text); } exit; } } function sqlPrintAfter() { echo "

\n"; ?>

array( '' => 'Generování SQL příkazů pomocí umělé inteligence Google Gemini', 'Ask Gemini' => 'Zeptat se Gemini', 'Just a sec...' => 'Chviličku...', ), 'pl' => array( 'Ask Gemini' => 'Zapytaj Gemini', 'Just a sec...' => 'Chwileczkę...', ), 'de' => array( '' => 'KI-Eingabeaufforderung im SQL-Befehl zur Erstellung der Abfragen mit Google Gemini', 'Ask Gemini' => 'Gemini fragen', 'Just a sec...' => 'Einen Moment...', ), 'ja' => array( '' => 'Google Gemini AI を用いて SQL 文を生成', 'Ask Gemini' => 'Gemini に聞く', 'Just a sec...' => 'しばらくお待ち下さい...', ), ); }