mirror of
https://github.com/ikechan8370/chatgpt-plugin.git
synced 2025-12-16 13:27:08 +00:00
Merge branch 'ikechan8370:v2' into v2
This commit is contained in:
commit
667b03c05f
7 changed files with 17 additions and 13 deletions
|
|
@ -288,7 +288,7 @@ export class bym extends plugin {
|
|||
let client = new CustomGoogleGeminiClient({
|
||||
e,
|
||||
userId: e.sender.user_id,
|
||||
key: Config.geminiKey,
|
||||
key: Config.getGeminiKey(),
|
||||
model: Config.geminiModel,
|
||||
baseUrl: Config.geminiBaseUrl,
|
||||
debug: Config.debug
|
||||
|
|
|
|||
|
|
@ -617,7 +617,7 @@ ${translateLangLabels}
|
|||
let client = new CustomGoogleGeminiClient({
|
||||
e,
|
||||
userId: e.sender.user_id,
|
||||
key: Config.geminiKey,
|
||||
key: Config.getGeminiKey(),
|
||||
model: 'gemini-1.5-flash-latest',
|
||||
baseUrl: Config.geminiBaseUrl,
|
||||
debug: Config.debug
|
||||
|
|
|
|||
|
|
@ -592,7 +592,7 @@ export function supportGuoba () {
|
|||
{
|
||||
field: 'geminiKey',
|
||||
label: 'API密钥',
|
||||
bottomHelpMessage: '前往https://makersuite.google.com/app/apikey获取',
|
||||
bottomHelpMessage: '前往https://makersuite.google.com/app/apikey获取,如果有多个Keys,用英文逗号隔开',
|
||||
component: 'InputPassword'
|
||||
},
|
||||
{
|
||||
|
|
|
|||
|
|
@ -721,7 +721,7 @@ class Core {
|
|||
let client = new CustomGoogleGeminiClient({
|
||||
e,
|
||||
userId: e.sender.user_id,
|
||||
key: Config.geminiKey,
|
||||
key: Config.getGeminiKey(),
|
||||
model: Config.geminiModel,
|
||||
baseUrl: Config.geminiBaseUrl,
|
||||
debug: Config.debug
|
||||
|
|
|
|||
|
|
@ -267,17 +267,21 @@ config.version = defaultConfig.version
|
|||
|
||||
export const Config = new Proxy(config, {
|
||||
get(target, property) {
|
||||
if (property === 'geminiKey') {
|
||||
if (typeof target[property] === 'string' && target[property].includes(',')) {
|
||||
const keys = target[property].split(',').map(key => key.trim()).filter(Boolean)
|
||||
const selectedKey = keys[Math.floor(Math.random() * keys.length)]
|
||||
console.log(`[ChatGPT-Plugin] 当前使用的Gemini Key: ${selectedKey.slice(0, 8)}...`)
|
||||
return selectedKey
|
||||
if (property === 'getGeminiKey') {
|
||||
return function () {
|
||||
if (target["geminiKey"]?.length === 0) {
|
||||
return "";
|
||||
}
|
||||
const geminiKeyArr = target["geminiKey"]?.trim().split(/[,,]/);
|
||||
const randomIndex = Math.floor(Math.random() * geminiKeyArr.length);
|
||||
logger.info(`[chatgpt]随机使用第${randomIndex + 1}个gemini Key: ${geminiKeyArr[randomIndex].replace(/(.{7}).*(.{10})/, '$1****$2')}`);
|
||||
return geminiKeyArr[randomIndex];
|
||||
}
|
||||
}
|
||||
|
||||
return target[property]
|
||||
},
|
||||
set (target, property, value) {
|
||||
set(target, property, value) {
|
||||
target[property] = value
|
||||
const change = lodash.transform(target, function (result, value, key) {
|
||||
if (!lodash.isEqual(value, defaultConfig[key])) {
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ export class WebsiteTool extends AbstractTool {
|
|||
let client = new CustomGoogleGeminiClient({
|
||||
e,
|
||||
userId: e?.sender?.user_id,
|
||||
key: Config.geminiKey,
|
||||
key: Config.getGeminiKey(),
|
||||
model: Config.geminiModel,
|
||||
baseUrl: Config.geminiBaseUrl,
|
||||
debug: Config.debug
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ export async function translate (msg, to = 'auto', from = 'auto', ai = Config.tr
|
|||
}
|
||||
case 'gemini': {
|
||||
let client = new CustomGoogleGeminiClient({
|
||||
key: Config.geminiKey,
|
||||
key: Config.getGeminiKey(),
|
||||
model: Config.geminiModel,
|
||||
baseUrl: Config.geminiBaseUrl,
|
||||
debug: Config.debug
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue