Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions src/main/presenter/configPresenter/providers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,22 @@ export const DEFAULT_PROVIDERS: LLM_PROVIDER_BASE[] = [
}
},

{
id: 'jiekou',
name: 'JieKou.AI',
apiType: 'jiekou',
apiKey: '',
baseUrl: 'https://api.jiekou.ai/openai',
enable: false,
websites: {
official: 'https://jiekou.ai?utm_source=github_deepchat',
apiKey: 'https://jiekou.ai/settings/key-management?utm_source=github_deepchat',
docs: 'https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_deepchat',
models: 'https://jiekou.ai/?utm_source=github_deepchat',
defaultBaseUrl: 'https://api.jiekou.ai/openai'
}
},
Comment thread
coderabbitai[bot] marked this conversation as resolved.

{
id: 'tokenflux',
name: 'TokenFlux',
Expand Down
5 changes: 5 additions & 0 deletions src/main/presenter/llmProviderPresenter/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ import { _302AIProvider } from './providers/_302AIProvider'
import { ModelscopeProvider } from './providers/modelscopeProvider'
import { VercelAIGatewayProvider } from './providers/vercelAIGatewayProvider'
import { PoeProvider } from './providers/poeProvider'
import { JiekouProvider } from './providers/jiekouProvider'

// Rate limit configuration interface
interface RateLimitConfig {
Expand Down Expand Up @@ -217,6 +218,8 @@ export class LLMProviderPresenter implements ILlmProviderPresenter {
return new PoeProvider(provider, this.configPresenter)
case 'aws-bedrock':
return new AwsBedrockProvider(provider, this.configPresenter)
case 'jiekou':
return new JiekouProvider(provider, this.configPresenter)
default:
console.log(
`No specific provider found for id: ${provider.id}, falling back to apiType: ${provider.apiType}`
Expand Down Expand Up @@ -271,6 +274,8 @@ export class LLMProviderPresenter implements ILlmProviderPresenter {
return new PoeProvider(provider, this.configPresenter)
case 'aws-bedrock':
return new AwsBedrockProvider(provider, this.configPresenter)
case 'jiekou':
return new JiekouProvider(provider, this.configPresenter)
default:
console.warn(`Unknown provider type: ${provider.apiType} for provider id: ${provider.id}`)
return undefined
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { LLM_PROVIDER, MODEL_META, IConfigPresenter } from '@shared/presenter'
import { OpenAICompatibleProvider } from './openAICompatibleProvider'

export class JiekouProvider extends OpenAICompatibleProvider {
constructor(provider: LLM_PROVIDER, configPresenter: IConfigPresenter) {
super(provider, configPresenter)
}

protected async fetchOpenAIModels(options?: { timeout: number }): Promise<MODEL_META[]> {
const models = await super.fetchOpenAIModels(options)
return models.map((model) => ({
...model,
group: 'JieKou.AI'
}))
}
}
3 changes: 3 additions & 0 deletions src/renderer/src/assets/llm-icons/jiekou-color.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions src/renderer/src/assets/llm-icons/jiekou-text.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions src/renderer/src/assets/llm-icons/jiekou.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions src/renderer/src/components/icons/ModelIcon.vue
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ import lmstudioColorIcon from '@/assets/llm-icons/lmstudio.svg?url'
import _302aiIcon from '@/assets/llm-icons/302ai.svg?url'
import modelscopeColorIcon from '@/assets/llm-icons/modelscope-color.svg?url'
import awsBedrockIcon from '@/assets/llm-icons/aws-bedrock.svg?url'
import jiekouColorIcon from '@/assets/llm-icons/jiekou-color.svg?url'

// 导入所有图标
const icons = {
cherryin: cherryinColorIcon,
Expand Down Expand Up @@ -132,6 +134,7 @@ const icons = {
glm: zhipuColorIcon,
meta: metaColorIcon,
'aws-bedrock': awsBedrockIcon,
jiekou: jiekouColorIcon,
default: defaultIcon
}

Expand Down