mirror of https://github.com/jumpserver/jumpserver
feat: Add an embedded form to ChatAI
parent
1074a0df19
commit
6b5d5c15ae
|
@ -697,6 +697,8 @@ class Config(dict):
|
|||
|
||||
# Chat AI
|
||||
'CHAT_AI_ENABLED': False,
|
||||
'CHAT_AI_METHOD': 'api',
|
||||
'CHAT_AI_EMBED_URL': '',
|
||||
'CHAT_AI_TYPE': 'gpt',
|
||||
'GPT_BASE_URL': '',
|
||||
'GPT_API_KEY': '',
|
||||
|
|
|
@ -237,6 +237,8 @@ ASSET_SIZE = 'small'
|
|||
|
||||
# Chat AI
|
||||
CHAT_AI_ENABLED = CONFIG.CHAT_AI_ENABLED
|
||||
CHAT_AI_METHOD = CONFIG.CHAT_AI_METHOD
|
||||
CHAT_AI_EMBED_URL = CONFIG.CHAT_AI_EMBED_URL
|
||||
CHAT_AI_TYPE = CONFIG.CHAT_AI_TYPE
|
||||
GPT_BASE_URL = CONFIG.GPT_BASE_URL
|
||||
GPT_API_KEY = CONFIG.GPT_API_KEY
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
from django.db.models import TextChoices
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
|
||||
class ImportStatus(TextChoices):
|
||||
|
@ -7,6 +8,11 @@ class ImportStatus(TextChoices):
|
|||
error = 'error', 'Error'
|
||||
|
||||
|
||||
class ChatAIMethodChoices(TextChoices):
|
||||
api = 'api', 'API'
|
||||
embed = 'embed', _('Embed')
|
||||
|
||||
|
||||
class ChatAITypeChoices(TextChoices):
|
||||
gpt = 'gpt', 'GPT'
|
||||
deep_seek = 'deep-seek', 'DeepSeek'
|
||||
|
|
|
@ -13,7 +13,9 @@ __all__ = [
|
|||
'ChatAISettingSerializer', 'VirtualAppSerializer', 'AmazonSMSerializer',
|
||||
]
|
||||
|
||||
from settings.const import ChatAITypeChoices, GPTModelChoices, DeepSeekModelChoices
|
||||
from settings.const import (
|
||||
ChatAITypeChoices, GPTModelChoices, DeepSeekModelChoices, ChatAIMethodChoices
|
||||
)
|
||||
|
||||
|
||||
class AnnouncementSerializer(serializers.Serializer):
|
||||
|
@ -124,6 +126,14 @@ class ChatAISettingSerializer(serializers.Serializer):
|
|||
CHAT_AI_ENABLED = serializers.BooleanField(
|
||||
required=False, label=_('Chat AI')
|
||||
)
|
||||
CHAT_AI_METHOD = serializers.ChoiceField(
|
||||
default=ChatAIMethodChoices.api, choices=ChatAIMethodChoices.choices,
|
||||
label=_("Method"), required=False,
|
||||
)
|
||||
CHAT_AI_EMBED_URL = serializers.CharField(
|
||||
allow_blank=True, required=False, label=_('Base URL'),
|
||||
help_text=_('The base URL of the Chat service.')
|
||||
)
|
||||
CHAT_AI_TYPE = serializers.ChoiceField(
|
||||
default=ChatAITypeChoices.gpt, choices=ChatAITypeChoices.choices,
|
||||
label=_("Types"), required=False,
|
||||
|
|
|
@ -71,6 +71,8 @@ class PrivateSettingSerializer(PublicSettingSerializer):
|
|||
VAULT_ENABLED = serializers.BooleanField()
|
||||
VIRTUAL_APP_ENABLED = serializers.BooleanField()
|
||||
CHAT_AI_ENABLED = serializers.BooleanField()
|
||||
CHAT_AI_METHOD = serializers.CharField()
|
||||
CHAT_AI_EMBED_URL = serializers.CharField()
|
||||
CHAT_AI_TYPE = serializers.CharField()
|
||||
GPT_MODEL = serializers.CharField()
|
||||
FILE_UPLOAD_SIZE_LIMIT_MB = serializers.IntegerField()
|
||||
|
|
Loading…
Reference in New Issue