您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Use BetterGPT as Grok frontend
// ==UserScript== // @name BetterGrok // @license MIT // @namespace http://greasyfork.org/ // @version 1.0.0 // @description Use BetterGPT as Grok frontend // @author ten4dinosaur // @match https://bettergpt.chat/* // @icon https://www.google.com/s2/favicons?sz=64&domain=bettergpt.chat // @grant none // @run-at document-start // ==/UserScript== (function() { 'use strict'; const storageGet = localStorage.getItem; localStorage.getItem = function (name) { if (name !== "free-chat-gpt") return storageGet.call(this, name); const result = storageGet.call(this, "grok-xAI"); return result !== null ? result : `{"state":{"currentChatIndex":-1,"apiEndpoint":"https://api.x.ai/v1/chat/completions","theme":"dark","autoTitle":false,"advancedMode":true,"prompts":[{"id":"0d3e9cb7-b585-43fa-acc3-840c189f6b93","name":"English Translator","prompt":"I want you to act as an English translator, spelling corrector and improver. I will speak to you in any language and you will detect the language, translate it and answer in the corrected and improved version of my text, in English. I want you to replace my simplified A0-level words and sentences with more beautiful and elegant, upper level English words and sentences. Keep the meaning same, but make them more literary. I want you to only reply the correction, the improvements and nothing else, do not write explanations. Do you understand?"}],"defaultChatConfig":{"model":"grok-beta","max_tokens":131072,"temperature":1,"presence_penalty":0,"top_p":1,"frequency_penalty":0},"defaultSystemMessage":"You are Grok, a large language model trained by xAI.\\nCarefully heed the user's instructions. \\nRespond using Markdown.","hideMenuOptions":false,"firstVisit":true,"hideSideMenu":false,"folders":{},"enterToSubmit":true,"inlineLatex":false,"markdownMode":true,"totalTokenUsed":{},"countTotalTokens":false},"version":8}`; } const storageSet = localStorage.setItem; localStorage.setItem = function (name, value) { if (name === "free-chat-gpt") { if (value.indexOf("grok-beta") === -1) { alert("Script injected too late."); // https://github.com/Tampermonkey/tampermonkey/issues/211 window.location.reload(); return; } name = "grok-xAI" } return storageSet.call(this, name, value); } const arrayMap = Array.prototype.map; Array.prototype.map = function (...args) { if (this?.length > 1 && this[0] === "gpt-3.5-turbo") { this.length = 0; this.push("grok-beta"); } return arrayMap.apply(this, args); } Object.defineProperty(Object.prototype, "grok-beta", { get: function () { if (this === undefined || this === null) return undefined; const gpt = this["gpt-3.5-turbo"]; if (gpt === 4096) return 131072; if (gpt?.completion?.unit === 1e3) { return { prompt: { price: .005, unit: 1e3 }, completion: { price: .015, unit: 1e3 } }; } return undefined; }, set: function (value) { Object.defineProperty(this, 'grok-beta', { value: value, writable: true, enumerable: true, configurable:true }); }, enumerable: false, configurable: true }); })();