sai / constant.ts
gitdeem's picture
Upload 2 files
a0dfe7b verified
raw
history blame
2.65 kB
import { IModelInfo } from './interface';
import axios from 'axios';
// Search engine related. You don't really need to change this.
export const EndPoint = {
BING_SEARCH_V7_ENDPOINT: 'https://api.bing.microsoft.com/v7.0/search',
GOOGLE_SEARCH_ENDPOINT: 'https://www.googleapis.com/customsearch/v1'
};
export const BING_MKT = 'en-US';
// default timeout ms
export const DEFAULT_SEARCH_ENGINE_TIMEOUT = 20000;
// default search keywords
export const DefaultQuery = 'Who said \'live long and prosper';
export const DefaultSystem = 'You are a helpful assistant.';
// 创建一个异步函数来获取模型列表
async function fetchOpenAIModels(): Promise<string[]> {
try {
const response = await axios.get('https://api.deem.love/v1/models');
const data = response.data;
return data.data.map((model: { id: string }) => model.id);
} catch (error) {
console.error('获取模型列表失败:', error);
return [];
}
}
// 修改 Models 数组,将 'openai' 平台的模型设置为动态获取
export let Models: IModelInfo[] = [
{
platform: 'aliyun',
type: '',
models: ['qwen-max', 'qwen-max-1201', 'qwen-turbo', 'qwen-plus']
},
{
platform: 'openai',
type: 'openai',
//models: ['gpt-3.5-turbo', 'gpt-4-0125-preview', 'gpt-4-turbo-preview', 'gpt-4o']
models: [] // 初始为空数组,稍后动态填充
},
{
platform: 'baidu',
type: 'baidu',
models: ['eb-instant', 'completions_pro', 'ernie_bot_8k']
},
{
platform: 'google',
type: 'gemini',
models: ['gemini-pro', 'gemini-1.5-pro-latest']
},
{
platform: 'yi',
type: 'openai',
models: ['yi-34b-chat-0205', 'yi-34b-chat-200k']
},
{
platform: 'moonshot',
type: 'openai',
models: ['moonshot-v1-8k', 'moonshot-v1-32k', 'moonshot-v1-128k']
},
{
platform: 'lepton',
type: 'openai',
models: ['llama2-7b', 'llama2-13b', 'llama2-70b', 'mixtral-8*7b', 'mixtral-8*22b']
},
{
platform: 'deepseek',
type: 'openai',
models: ['deepseek-chat', 'deepseek-coder']
},
{
platform: 'chatglm',
type: 'openai',
models: ['glm-4', 'glm-4v', 'glm-3-turbo']
},
{
platform: 'tencent',
type: 'tencent',
models: ['std', 'pro']
}
];
// 创建一个初始化函数来更新 Models 数组
export async function initializeModels() {
const openAIModels = await fetchOpenAIModels();
Models = Models.map(platform => {
if (platform.platform === 'openai') {
return { ...platform, models: openAIModels };
}
return platform;
});
}