mirror of
https://github.com/wassname/chatGPTBox.git
synced 2026-06-27 19:30:28 +08:00
WIP, custom API Modes
This commit is contained in:
@@ -22,7 +22,7 @@ import FileSaver from 'file-saver'
|
||||
import { render } from 'preact'
|
||||
import FloatingToolbar from '../FloatingToolbar'
|
||||
import { useClampWindowSize } from '../../hooks/use-clamp-window-size'
|
||||
import { bingWebModelKeys, getUserConfig, Models } from '../../config/index.mjs'
|
||||
import { bingWebModelKeys, getUserConfig } from '../../config/index.mjs'
|
||||
import { useTranslation } from 'react-i18next'
|
||||
import DeleteButton from '../DeleteButton'
|
||||
import { useConfig } from '../../hooks/use-config.mjs'
|
||||
@@ -369,7 +369,7 @@ function ConversationCard(props) {
|
||||
required
|
||||
onChange={(e) => {
|
||||
const modelName = e.target.value
|
||||
const newSession = { ...session, modelName, aiName: Models[modelName].desc }
|
||||
const newSession = { ...session, modelName, aiName: modelNameToDesc(modelName, t) }
|
||||
if (config.autoRegenAfterSwitchModel && conversationItemData.length > 0)
|
||||
getRetryFn(newSession)()
|
||||
else setSession(newSession)
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { defaults } from 'lodash-es'
|
||||
import Browser from 'webextension-polyfill'
|
||||
import { isMobile } from '../utils/is-mobile.mjs'
|
||||
import { modelNameToDesc } from '../utils/model-name-convert.mjs'
|
||||
import { t } from 'i18next'
|
||||
|
||||
export const TriggerMode = {
|
||||
always: 'Always',
|
||||
@@ -263,11 +265,13 @@ export const Models = {
|
||||
|
||||
for (const modelName in Models) {
|
||||
if (isUsingMultiModeModel({ modelName }))
|
||||
for (const mode in ModelMode)
|
||||
Models[`${modelName}-${mode}`] = {
|
||||
for (const mode in ModelMode) {
|
||||
const key = `${modelName}-${mode}`
|
||||
Models[key] = {
|
||||
value: mode,
|
||||
desc: `${Models[modelName].desc} (${ModelMode[mode]})`,
|
||||
desc: modelNameToDesc(key, t),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { v4 as uuidv4 } from 'uuid'
|
||||
import { modelNameToDesc } from '../utils/model-name-convert.mjs'
|
||||
import { t } from 'i18next'
|
||||
|
||||
/**
|
||||
* @typedef {object} Session
|
||||
@@ -54,7 +55,7 @@ export function initSession({
|
||||
createdAt: new Date().toISOString(),
|
||||
updatedAt: new Date().toISOString(),
|
||||
|
||||
aiName: modelName ? modelNameToDesc(modelName) : null,
|
||||
aiName: modelName ? modelNameToDesc(modelName, t) : null,
|
||||
modelName,
|
||||
|
||||
autoClean,
|
||||
|
||||
@@ -103,7 +103,7 @@ export function registerPortListener(executor) {
|
||||
if (!session) return
|
||||
const config = await getUserConfig()
|
||||
if (!session.modelName) session.modelName = config.modelName
|
||||
if (!session.aiName) session.aiName = modelNameToDesc(session.modelName)
|
||||
if (!session.aiName) session.aiName = modelNameToDesc(session.modelName, t)
|
||||
port.postMessage({ session })
|
||||
try {
|
||||
await executor(session, port, config)
|
||||
|
||||
Reference in New Issue
Block a user