feat: add graphrag provider

This commit is contained in:
kangfenmao 2024-08-13 20:48:38 +08:00
parent 4485a00395
commit 7b72783ae7
10 changed files with 36 additions and 4 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -21,11 +21,12 @@ import DashScopeProviderLogo from '@renderer/assets/images/providers/dashscope.p
import DeepSeekProviderLogo from '@renderer/assets/images/providers/deepseek.png'
import DoubaoProviderLogo from '@renderer/assets/images/providers/doubao.png'
import GeminiProviderLogo from '@renderer/assets/images/providers/gemini.png'
import GraphRagProviderLogo from '@renderer/assets/images/providers/graph-rag.png'
import GroqProviderLogo from '@renderer/assets/images/providers/groq.png'
import MoonshotProviderLogo from '@renderer/assets/images/providers/moonshot.jpeg'
import MoonshotModelLogo from '@renderer/assets/images/providers/moonshot.jpeg'
import OllamaProviderLogo from '@renderer/assets/images/providers/ollama.png'
import OpenAiProviderLogo from '@renderer/assets/images/providers/openai.jpeg'
import OpenAiProviderLogo from '@renderer/assets/images/providers/openai.png'
import OpenRouterProviderLogo from '@renderer/assets/images/providers/openrouter.png'
import SiliconFlowProviderLogo from '@renderer/assets/images/providers/silicon.png'
import StepFunProviderLogo from '@renderer/assets/images/providers/stepfun.png'
@ -66,6 +67,8 @@ export function getProviderLogo(providerId: string) {
return StepFunProviderLogo
case 'doubao':
return DoubaoProviderLogo
case 'graphrag-kylin-mountain':
return GraphRagProviderLogo
default:
return undefined
}
@ -240,6 +243,12 @@ export const PROVIDER_CONFIG = {
models: 'https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint'
}
},
'graphrag-kylin-mountain': {
api: {
url: '',
editable: true
}
},
openrouter: {
api: {
url: 'https://openrouter.ai/api/v1/',

View File

@ -120,7 +120,8 @@ const resources = {
anthropic: 'Anthropic',
aihubmix: 'AiHubMix',
stepfun: 'StepFun',
doubao: 'Doubao'
doubao: 'Doubao',
'graphrag-kylin-mountain': 'GraphRAG'
},
settings: {
title: 'Settings',
@ -340,7 +341,8 @@ const resources = {
anthropic: 'Anthropic',
aihubmix: 'AiHubMix',
stepfun: '阶跃星辰',
doubao: '豆包'
doubao: '豆包',
'graphrag-kylin-mountain': 'GraphRAG'
},
settings: {
title: '设置',

View File

@ -105,10 +105,13 @@ const ProvidersList: FC = () => {
key={JSON.stringify(provider)}
className={provider.id === selectedProvider?.id ? 'active' : ''}
onClick={() => setSelectedProvider(provider)}>
{provider.isSystem && <Avatar src={getProviderLogo(provider.id)} size={25} />}
{provider.isSystem && (
<Avatar shape="square" src={getProviderLogo(provider.id)} size={25} />
)}
{!provider.isSystem && (
<Avatar
size={25}
shape="square"
style={{ backgroundColor: generateColorFromChar(provider.name), minWidth: 25 }}>
{getFirstCharacter(provider.name)}
</Avatar>

View File

@ -130,6 +130,15 @@ const initialState: LlmState = {
isSystem: true,
enabled: false
},
{
id: 'graphrag-kylin-mountain',
name: 'GraphRAG',
apiKey: '',
apiHost: '',
models: [],
isSystem: true,
enabled: false
},
{
id: 'openrouter',
name: 'OpenRouter',

View File

@ -330,6 +330,15 @@ const migrateConfig = {
models: SYSTEM_MODELS.doubao.filter((m) => m.enabled),
isSystem: true,
enabled: false
},
{
id: 'graphrag-kylin-mountain',
name: 'GraphRAG',
apiKey: '',
apiHost: '',
models: [],
isSystem: true,
enabled: false
}
]
}