| @@ -1,107 +1,93 @@ | ||
| 1 | -<div class="row g-0"> | |
| 2 | - <div class="col-sm-10"> | |
| 3 | - <div class="form-check form-switch my-4"> | |
| 4 | - <input class="form-check-input" type="checkbox" <?php | |
| 5 | -if (!defined('ABSPATH')) exit; // Exit if accessed directly | |
| 6 | -echo (get_option( 'ai_enabled') == 1) ? esc_attr( 'checked','chatbot') :'';?> role="switch" value="" id="is_ai_enabled"> | |
| 7 | - <label class="form-check-label" for="is_ai_enabled"> | |
| 8 | - <?php esc_html_e( 'Enable Open AI ','chatbot'); ?><span style="color:red"> <?php esc_html_e( '(if you want results from OpenAI only, disable Site Search from Settings->Start Menu)','chatbot'); ?></span> | |
| 9 | - </label> | |
| 10 | - </div> | |
| 11 | - | |
| 12 | - <div class="form-check form-switch my-4"> | |
| 13 | - <input class="form-check-input" type="checkbox" <?php echo (get_option('page_suggestion_enabled') == '1') ? esc_attr( 'checked','chatbot') :'';?> role="switch" value="" id="is_page_suggestion_enabled"> | |
| 14 | - <label class="form-check-label" for="is_page_suggestion_enabled"> | |
| 15 | - <?php esc_html_e( 'Enable WordPress page suggestions with GPT Results (the links are suggested by WordPress and not AI)','chatbot'); ?> | |
| 16 | - </label> | |
| 17 | - </div> | |
| 18 | - <div class="mb-3"> | |
| 19 | - <label for="api_key" class="form-label"><?php esc_html_e( 'Api key','chatbot');?></label> | |
| 20 | - <input type="password" class="form-control" id="api_key" name="api_key" placeholder="Api key" value="<?php echo esc_attr(get_option( 'open_ai_api_key')); ?>"> | |
| 21 | - </div> | |
| 22 | - <div class="mb-3"> | |
| 23 | - <label for="max_tokens" class="form-label"><?php esc_html_e( 'Max tokens (0-4000) Depending on the model','chatbot');?></label> | |
| 24 | - <input id="max_tokens" class="form-control" type="text" name="max_tokens" value="<?php echo esc_attr(get_option( 'openai_max_tokens')); ?>"> | |
| 25 | - </div> | |
| 26 | - <div class="mb-3"> | |
| 27 | - <div class="row gx-0"> | |
| 28 | - <div class="col-8"> | |
| 29 | - <label for="temperature" class="form-label"><?php esc_html_e( 'Temperature','chatbot');?></label> | |
| 30 | - </div> | |
| 31 | - <div class="col-4 me-auto text-end"> | |
| 32 | - <span name="temperatureout" id="temperatureout" ><?php echo esc_html(get_option( 'openai_temperature')); ?></span></div> | |
| 33 | - </div> | |
| 34 | - <input id="temperature" type="range" class="form-range" min="0" max="2" step="0.01" name="temperature" value="<?php echo esc_attr(get_option( 'openai_temperature')); ?>" onchange="updateTemp(this.value);" /> | |
| 35 | - <label class="mb-3"> | |
| 36 | - <small><?php esc_html_e( 'Temperature is a value between 0 and 2 that essentially lets you control how confident the model should be when making these predictions','chatbot');?></small> | |
| 37 | - </label> | |
| 38 | - <span name="temperatureout" id="temperatureout" ><?php echo esc_html(get_option( 'openai_temperature')); ?></span> | |
| 39 | - </div> | |
| 40 | - <div class="mb-3"> | |
| 41 | - <div class="row gx-0"><div class="col-8"><label for="presence_penalty" class="form-label"><?php esc_html_e( 'Presence Penalty','chatbot');?></label></div><div class="col-4 me-auto text-end"><span id="presence_penalty_out" ><?php echo esc_html(get_option( 'presence_penalty')); ?></span></div></div> | |
| 42 | - <input id="presence_penalty" type="range" class="form-range" min="0" max="2" step="0.1" name="presence_penalty" value="<?php echo esc_attr(get_option( 'presence_penalty')); ?>"> | |
| 43 | - <p class="mb-3"><small><?php esc_html_e( 'Number between 0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model’s likelihood to talk about new topics.','chatbot');?></small></p> | |
| 44 | - </div> | |
| 45 | - <div class="mb-3"> | |
| 46 | - <div class="row gx-0"><div class="col-8"><label for="frequency_penalty" class="form-label"><?php esc_html_e( 'Frequency Penalty','chatbot');?></label></div><div class="col-4 me-auto text-end"><span id="frequency_penalty_out" ><?php echo esc_html(get_option( 'frequency_penalty')); ?></span></div></div> | |
| 47 | - <input id="frequency_penalty" type="range" class="form-range" min="0" max="2" step="0.1" name="frequency_penalty" value="<?php echo esc_attr(get_option( 'frequency_penalty')); ?>"> | |
| 48 | - <label><small><?php esc_html_e( 'Number between 0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model’s likelihood to repeat the same line verbatim.','chatbot');?></small></label> | |
| 49 | - </div> | |
| 50 | - | |
| 51 | - <div class="mb-3"> | |
| 52 | - <label for="max_tokens" id="openai_engines" class="form-label"><?php esc_html_e( 'OpenAI Model','chatbot');?></label> | |
| 53 | - <select class="form-select" aria-label="Default select example" name="openai_engines" id="openai_engines"> | |
| 54 | - <option value="gpt-4.1-mini" <?php echo ((get_option( 'openai_engines') == 'gpt-4.1-mini') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4.1-Mini','chatbot');?></option> | |
| 55 | - <option value="gpt-4.1-nano" <?php echo ((get_option( 'openai_engines') == 'gpt-4.1-nano') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4.1-Nano','chatbot');?></option> | |
| 56 | - <option value="gpt-4.1" <?php echo ((get_option( 'openai_engines') == 'gpt-4.1') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4.1','chatbot');?></option> | |
| 57 | - <option value="gpt-4o-mini" <?php echo ((get_option( 'openai_engines') == 'gpt-4o-mini') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4o-Mini','chatbot');?></option> | |
| 58 | - <option value="gpt-4o" <?php echo ((get_option( 'openai_engines') == 'gpt-4o') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4o','chatbot');?></option> | |
| 59 | - <option value="gpt-4-turbo" <?php echo ((get_option( 'openai_engines') == 'gpt-4-turbo') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'gpt-4-turbo','chatbot');?></option> | |
| 60 | - <option value="gpt-4" <?php echo ((get_option( 'openai_engines') == 'gpt-4') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-4','chatbot');?></option> | |
| 61 | - <option value="gpt-3.5-turbo" <?php echo ((get_option( 'openai_engines') == 'gpt-3.5-turbo') ? esc_attr('selected') : '') ; ?>><?php esc_html_e( 'GPT-3 turbo','chatbot'); ?></option> | |
| 62 | - | |
| 63 | - | |
| 64 | - </select> | |
| 65 | - </div> | |
| 66 | - | |
| 67 | - <div class="mb-3"> | |
| 68 | - <label for="qcld_openai_system_content"><?php esc_attr_e( 'System Command (Use it to Instruct ChatGPT how to behave)','chatbot');?></label> | |
| 69 | - <textarea type="text" class="form-control" id="qcld_openai_system_content" placeholder="<?php echo esc_attr('You are a helpful and intelligent assistant for the website "' . site_url() . '". Use live website data and the provided context to respond accurately and briefly. Stay relevant and do not introduce additional topics.'); ?>"><?php echo esc_html( get_option( 'qcld_openai_system_content')); ?></textarea> | |
| 70 | - <label><small><?php esc_html_e("To set the ChatBot's tone and character set a system message according to your need",'chatbot'); ?></small></label></br> | |
| 71 | - <label><small><?php esc_html_e("Example: You are a helpful and intelligent assistant for the website \"" . site_url() . "\". Use live website data and the provided context to respond accurately and briefly. Stay relevant and do not introduce additional topics.",'chatbot'); ?></small></label> | |
| 72 | - </div> | |
| 73 | - <div class="alert alert-warning"> | |
| 74 | - <p> <?php echo esc_html('Danger Zone'); ?></p> | |
| 75 | - </div> | |
| 76 | - <div class="mb-3"> | |
| 77 | - <label for="qcld_openai_include_keyword"><?php esc_attr_e( 'Connect to OpenAI only when user query includes one of the following Comma Separated Keywords','chatbot');?></label> | |
| 78 | - <textarea type="text" class="form-control" id="qcld_openai_include_keyword"><?php echo esc_attr( get_option( 'openai_include_keyword')); ?></textarea> | |
| 79 | - </div> | |
| 80 | - <div class="mb-3"> | |
| 81 | - <label for="qcld_openai_exclude_keyword"><?php esc_attr_e( 'Connect to OpenAI only when user query does NOT include one of the following Comma Separated Keywords','chatbot');?></label> | |
| 82 | - <textarea type="text" class="form-control" id="qcld_openai_exclude_keyword"><?php echo esc_attr( get_option( 'openai_exclude_keyword')); ?></textarea> | |
| 83 | - </div> | |
| 84 | - <div class="mb-3"> | |
| 85 | - <div class="form-check form-switch my-4"> | |
| 86 | - <input class="form-check-input" type="checkbox" <?php echo (get_option( 'qcld_openai_relevant_enabled') == 1) ? esc_attr( 'checked','chatbot') :'';?> role="switch" value="" id="is_relevant_enabled"> | |
| 87 | - <label class="form-check-label" for="is_relevant_enabled"> | |
| 88 | - <?php esc_html_e( 'Ask OpenAI to reply when question is relevant to above Keywords (Enabling this option will improve accuracy but it will use OpenAI Tokens)','chatbot'); ?> | |
| 89 | - </label> | |
| 90 | - </div> | |
| 91 | - </div> | |
| 92 | - | |
| 93 | - <div class="mb-3"> | |
| 94 | - <a class="btn btn-success" id="save_setting"><?php esc_html_e( 'Save settings','chatbot');?></a> | |
| 95 | - </div> | |
| 96 | - <div class="mb-3"> | |
| 97 | - <a class="btn btn-warning" id="qcld_check_connection"><?php esc_html_e( 'Check Connection ','chatbot');?><i class="dashicons dashicons-image-rotate" id="rotationloader"></i></a> <?php echo esc_html('Save the Settings first and then press the Check Connection button'); ?><br/> | |
| 98 | - <div id="qcld_openAI_trubleshooter"></div> | |
| 99 | - </div> | |
| 100 | - <div class="alert alert-danger"> | |
| 101 | - <p> <?php echo esc_html('**If OpenAI is not responding back and the bot is just loading, then likely you hit your OpenAI usage limit. Please pre-purchase credit to use OpenAI API and increase the Usage limit. You can add credits to your API account by visiting the '); ?> <a href="https://platform.openai.com/account/billing"><?php echo esc_html('billing page.'); ?></a></p> | |
| 102 | - <p> | |
| 103 | - <a href="https://wpbot.pro/docs/knowledgebase/how-to-save-money-and-reduce-openai-api-cost-for-your-chatbot/"> <?php echo esc_html('How to reduce cost '); ?></a><?php echo esc_html('and save money on OpenAI API cost for your ChatBot.'); ?> | |
| 104 | - </p> | |
| 105 | - </div> | |
| 106 | - </div> | |
| 107 | -</div> | |
| 1 | +<div class="row g-0"> | |
| 2 | + <div class="col-sm-10"> | |
| 3 | + <div class="form-check form-switch my-4"> | |
| 4 | + <input class="form-check-input" type="checkbox" <?php echo (get_option( 'ai_enabled') == 1) ? 'checked' :'';?> role="switch" value="" id="is_ai_enabled"> | |
| 5 | + <label class="form-check-label" for="is_ai_enabled"> | |
| 6 | + <?php esc_html_e( 'Enable Open AI','openai_addon');?> | |
| 7 | + </label> | |
| 8 | + </div> | |
| 9 | + <div class="form-check form-switch my-4"> | |
| 10 | + <input class="form-check-input" type="checkbox" <?php echo (get_option( 'ai_only_mode') == 1) ? 'checked' :'';?> role="switch" value="" id="is_ai_only_mode"> | |
| 11 | + <label class="form-check-label" for="is_ai_only_mode"> | |
| 12 | + <?php esc_html_e( 'Enable OpenAI only mode and hide other chatBot features','openai_addon');?> | |
| 13 | + </label> | |
| 14 | + </div> | |
| 15 | + <div class="mb-3"> | |
| 16 | + <label for="api_key" class="form-label"><?php esc_html_e( 'Api key','openai_addon');?></label> | |
| 17 | + <input type="text" class="form-control" id="api_key" name="api_key" placeholder="Api key" value="<?php echo get_option( 'open_ai_api_key'); ?>"> | |
| 18 | + </div> | |
| 19 | + <div class="mb-3"> | |
| 20 | + <label for="max_tokens" class="form-label"><?php esc_html_e( 'Max tokens (0-4000) Depending on the model','openai_addon');?></label> | |
| 21 | + <input id="max_tokens" class="form-control" type="text" name="max_tokens" value="<?php echo get_option( 'openai_max_tokens'); ?>"> | |
| 22 | + </div> | |
| 23 | + <div class="mb-3"> | |
| 24 | + <div class="row gx-0"><div class="col-8"><label for="temperature" class="form-label"><?php esc_html_e( 'Temperature','openai_addon');?></label></div><div class="col-4 me-auto text-end"><span name="temperatureout" id="temperatureout" ><?php echo get_option( 'openai_temperature'); ?></span></div></div> | |
| 25 | + <input id="temperature" type="range" class="form-range" min="0" max="1" step="0.01" name="temperature" value="<?php echo get_option( 'openai_temperature'); ?>" onchange="updateTemp(this.value);" /> | |
| 26 | + <label class="mb-3"><small><?php esc_html_e( 'Temperature is a value between 0 and 1 that essentially lets you control how confident the model should be when making these predictions','openai_addon');?></small></label> | |
| 27 | + <span name="temperatureout" id="temperatureout" ><?php // echo get_option( 'openai_temperature'); ?></span> | |
| 28 | + </div> | |
| 29 | + <div class="mb-3"> | |
| 30 | + <div class="row gx-0"><div class="col-8"><label for="presence_penalty" class="form-label"><?php esc_html_e( 'Presence Penalty','openai_addon');?></label></div><div class="col-4 me-auto text-end"><span id="presence_penalty_out" ><?php echo get_option( 'presence_penalty'); ?></span></div></div> | |
| 31 | + <input id="presence_penalty" type="range" class="form-range" min="-2" max="2" step="0.1" name="presence_penalty" value="<?php echo get_option( 'presence_penalty'); ?>"> | |
| 32 | + <p class="mb-3"><small><?php esc_html_e( 'Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model’s likelihood to talk about new topics.','openai_addon');?></small></p> | |
| 33 | + </div> | |
| 34 | + <div class="mb-3"> | |
| 35 | + <div class="row gx-0"><div class="col-8"><label for="frequency_penalty" class="form-label"><?php esc_html_e( 'Frequency penalty','openai_addon');?></label></div><div class="col-4 me-auto text-end"><span id="frequency_penalty_out" ><?php echo get_option( 'frequency_penalty'); ?></span></div></div> | |
| 36 | + <input id="frequency_penalty" type="range" class="form-range" min="-2" max="2" step="0.1" name="frequency_penalty" value="<?php echo get_option( 'frequency_penalty'); ?>"> | |
| 37 | + <label><small><?php esc_html_e( 'Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model’s likelihood to repeat the same line verbatim.','openai_addon','openai_addon');?></small></label> | |
| 38 | + </div> | |
| 39 | + | |
| 40 | + <div class="mb-3"> | |
| 41 | + <label for="max_tokens" id="openai_engines" class="form-label"><?php esc_html_e( 'Open AI model','openai_addon');?></label> | |
| 42 | + <select class="form-select" aria-label="Default select example" name="openai_engines" id="openai_engines"> | |
| 43 | + <option <?php echo ((get_option( 'openai_engines') == '') ? 'selected' : '') ; ?>><?php esc_html_e( 'Please select Engines','openai_addon');?></option> | |
| 44 | + | |
| 45 | + <option value="gpt-4" <?php echo ((get_option( 'openai_engines') == 'gpt-4') ? 'selected' : '') ; ?>><?php esc_html_e( 'GPT-4','openai_addon');?></option> | |
| 46 | + <option value="gpt-3.5-turbo" <?php echo ((get_option( 'openai_engines') == 'gpt-3.5-turbo') ? 'selected' : '') ; ?>><?php esc_html_e( 'GPT-3 turbo','openai_addon');?></option> | |
| 47 | + <option value="text-davinci-003" <?php echo ((get_option( 'openai_engines') == 'text-davinci-003') ? 'selected' : '') ; ?>><?php esc_html_e( 'Davinci (GPT-3 model)','openai_addon');?></option> | |
| 48 | + <option value="text-davinci-001" <?php echo ((get_option( 'openai_engines') == 'text-davinci-001') ? 'selected' : '') ; ?>><?php esc_html_e( 'Davinci','openai_addon');?></option> | |
| 49 | + <option value="text-ada-001" <?php echo ((get_option( 'openai_engines') == 'text-ada-001') ? 'selected' : '') ; ?>><?php esc_html_e( 'Ada','openai_addon');?></option> | |
| 50 | + <option value="text-curie-001" <?php echo ((get_option( 'openai_engines') == 'text-curie-001') ? 'selected' : '') ; ?>><?php esc_html_e( 'Curie','openai_addon');?></option> | |
| 51 | + <option value="text-babbage-001" <?php echo ((get_option( 'openai_engines') == 'text-babbage-001') ? 'selected' : '' ); ?>><?php esc_html_e( 'Babbag','openai_addon');?></option> | |
| 52 | + </select> | |
| 53 | + </div> | |
| 54 | + <div class="mb-3"> | |
| 55 | + <div class=""> | |
| 56 | + <label><?php esc_html_e('Conversation continuity Only works in promt Q/A, Chat and friend chat'); ?></label> | |
| 57 | + </div> | |
| 58 | + <div class="form-check form-switch my-4"> | |
| 59 | + <input class="form-check-input" type="checkbox" <?php echo (get_option( 'conversation_continuity') == 1) ? 'checked' :'';?> role="switch" value="" id="conversation_continuity"> | |
| 60 | + <label class="form-check-label" for="conversation_continuity"><?php esc_html_e( 'Enable conversation continuity','openai_addon'); ?></label> | |
| 61 | + </div> | |
| 62 | + </div> | |
| 63 | + <div class="mb-3"> | |
| 64 | + <label for="qcld_openai_custom_model" class="form-label"><?php esc_html_e( 'Custom Fine Tuned Model','openai_addon');?></label> | |
| 65 | + <input id="qcld_openai_custom_model" class="form-control" type="text" name="qcld_openai_custom_model" value="<?php echo get_option( 'qcld_openai_custom_model'); ?>"> | |
| 66 | + <label><small><?php esc_html_e( 'Pick your custom model from fine tune list','openai_addon','openai_addon');?></small></label> | |
| 67 | + </div> | |
| 68 | + <div class="mb-3"> | |
| 69 | + | |
| 70 | + <label for="qcld_openai_prompt" class="form-label"><?php esc_html_e( 'Select Prompt','openai_addon');?></label> | |
| 71 | + <select class="form-select" aria-label="Default select example" name="qcld_openai_prompt" id="qcld_openai_prompt"> | |
| 72 | + <option <?php echo ((get_option( 'qcld_openai_prompt') == '') ? 'selected' : '') ; ?>><?php esc_html_e( 'Please select prompt','openai_addon');?></option> | |
| 73 | + <option value="q_and_a" <?php echo ((get_option( 'qcld_openai_prompt') == 'q_and_a') ? 'selected' : '') ; ?>><?php esc_html_e( 'Q & A','openai_addon');?></option> | |
| 74 | + <option value="chat" <?php echo ((get_option( 'qcld_openai_prompt') == 'chat') ? 'selected' : '') ; ?>><?php esc_html_e( 'Chat','openai_addon');?></option> | |
| 75 | + <option value="friend_chat" <?php echo ((get_option( 'qcld_openai_prompt') == 'friend_chat') ? 'selected' : '') ; ?>><?php esc_html_e( 'Friend Chat','openai_addon');?></option> | |
| 76 | + <option value="grammar_correction" <?php echo ((get_option( 'qcld_openai_prompt') == 'grammar_correction') ? 'selected' : '') ; ?>><?php esc_html_e( 'Grammar correction','openai_addon');?></option> | |
| 77 | + <option value="marv_sarcastic_chatbot" <?php echo ((get_option( 'qcld_openai_prompt') == 'marv_sarcastic_chatbot') ? 'selected' : '') ; ?>><?php esc_html_e( 'Marv the sarcastic chat bot','openai_addon');?></option> | |
| 78 | + <option value="micro_horror" <?php echo ((get_option( 'qcld_openai_prompt') == 'micro_horror') ? 'selected' : '') ; ?>><?php esc_html_e( 'Two-Sentence Horror Story:','openai_addon');?></option> | |
| 79 | + <option value="write_poem" <?php echo ((get_option( 'qcld_openai_prompt') == 'write_poem') ? 'selected' : '') ; ?>><?php esc_html_e( 'Write a poem (in English)','openai_addon');?></option> | |
| 80 | + <option value="translated_qa" <?php echo ((get_option( 'qcld_openai_prompt') == 'translated_qa') ? 'selected' : '') ; ?>><?php esc_html_e( 'Translated Question Answer on your site language','openai_addon');?></option> | |
| 81 | + <option value="any_command" <?php echo ((get_option( 'qcld_openai_prompt') == 'any_command') ? 'selected' : '') ; ?>><?php esc_html_e( 'Any command','openai_addon');?></option> | |
| 82 | + <option value="custom_prompt" <?php echo ((get_option( 'qcld_openai_prompt') == 'custom_prompt') ? 'selected' : '') ; ?>><?php esc_html_e( 'Custom prompt will be appended before the user`s queries','openai_addon');?></option> | |
| 83 | + </select> | |
| 84 | + <div id="custom_prompt_wrapper"> | |
| 85 | + <input type="hidden" id="custom_promt_value" value="<?php echo get_option('qcld_openai_prompt_custom'); ?>"/> | |
| 86 | + </div> | |
| 87 | + <p class="mb-3"><small><?php esc_html_e( 'Please Select a prompt. The default value of the prompt is Q&A','openai_addon');?></small></p> | |
| 88 | + </div> | |
| 89 | + <div class="mb-3"> | |
| 90 | + <a class="btn btn-success" id="save_setting"><?php esc_html_e( 'Save settings','openai_addon');?></a> | |
| 91 | + </div> | |
| 92 | + </div> | |
| 93 | +</div> | |