From 8a8f6d269c2398c02a687c99e9c42755c8877276 Mon Sep 17 00:00:00 2001 From: soulteary Date: Tue, 16 May 2023 23:25:02 +0800 Subject: [PATCH] feat: Adapt to the latest version of the client --- internal/api/account/account.go | 7 ++++ internal/api/models/models.go | 2 +- internal/api/models/official.go | 6 ++++ internal/datatypes/account.go | 13 ++++--- internal/datatypes/models.go | 62 +++++++++++++++++++++++++++++++++ 5 files changed, 85 insertions(+), 5 deletions(-) diff --git a/internal/api/account/account.go b/internal/api/account/account.go index c27c1dd..455dad5 100644 --- a/internal/api/account/account.go +++ b/internal/api/account/account.go @@ -45,6 +45,8 @@ func GetUIFeatures() []string { if define.ENABLE_NEW_UI { return []string{ datatypes.FEATURE_MODEL_SWITCHER_0512, + datatypes.FEATURE_MESSAGE_STYLE_05, + datatypes.FEATURE_LAYOUT_2023, datatypes.FEATURE_MODEL_PREVIEWER, } } @@ -70,6 +72,7 @@ func GetPluginFeatures() []string { features = append(features, datatypes.FEATURE_PLUGINS_BROWSING_AVAILABLE) features = append(features, datatypes.FEATURE_PLIGIN_BROWSING) } + features = append(features, datatypes.FEATURE_PLUGINS_BROWSING_MONOLOGUE) } else { features = append(features, datatypes.FEATURE_PLUGINS_BROWSING_DISABLED) } @@ -109,9 +112,13 @@ func GetFeatures() []string { if define.DEV_MODE { features = append(features, datatypes.FEATURE_SHAREABLE_LINKS) + features = append(features, datatypes.FEATURE_PROMPT_SUGGESTIONS) + features = append(features, datatypes.FEATURE_I18N) + // OpenAI internal debugging interface // features = append(features, datatypes.FEATURE_SYSTEM_MESSAGE2) } + return features } diff --git a/internal/api/models/models.go b/internal/api/models/models.go index 73d0d52..3368a89 100644 --- a/internal/api/models/models.go +++ b/internal/api/models/models.go @@ -56,6 +56,6 @@ func GetModels(c *gin.Context) { modelList = GetEmptyPlaceHolder() } - categories := []datatypes.ModelsCategory{datatypes.MODEL_TEXT_DAVINCI_002_RENDER_SHA_CATEGORY, datatypes.MODEL_GPT4_CATEGORY} + categories := []datatypes.ModelsCategory{datatypes.MODEL_TEXT_DAVINCI_002_RENDER_SHA_CATEGORY, datatypes.MODEL_GPT4_CATEGORY, datatypes.MODEL_OTHER_CATEGORY} c.JSON(http.StatusOK, datatypes.Models{Models: modelList, Categories: categories}) } diff --git a/internal/api/models/official.go b/internal/api/models/official.go index 4e0f16f..626885d 100644 --- a/internal/api/models/official.go +++ b/internal/api/models/official.go @@ -36,5 +36,11 @@ func GetOfficialModels() (result []datatypes.ModelListItem) { } result = append(result, model4) + // gradually open... + result = append(result, datatypes.MODEL_GPT4_BROWSING) + result = append(result, datatypes.MODEL_GPT4_CODE) + result = append(result, datatypes.MODEL_GPT4_PLUGIN) + result = append(result, datatypes.MODEL_OTHER) + return result } diff --git a/internal/datatypes/account.go b/internal/datatypes/account.go index f145f37..7d10c04 100644 --- a/internal/datatypes/account.go +++ b/internal/datatypes/account.go @@ -42,17 +42,21 @@ const ( FEATURE_ONFOFF_STATUE_ACCOUNT = "oneoff_status_account" // If you purchase a service during a service interruption, you will be prompted for a refund FEATURE_SHOW_EXISTING_USER_AGE_CONFIRM_MODAL = "show_existing_user_age_confirmation_modal" // 23.05.08 Added, display age confirmation pop-up window - // models + // models & UI FEATURE_MODEL_SWITCHER = "model_switcher" // The model can be switched in the interface, and the Plus account is enabled by default FEATURE_MODEL_SWITCHER_0512 = "new_model_switcher_20230512" // New UI model switcher, OpenAI 23.05.12 Added + FEATURE_MESSAGE_STYLE_05 = "message_style_202305" // New Message UI 23.05.16 Added + FEATURE_LAYOUT_2023 = "layout_may_2023" // New Layout 23.05.16 Added FEATURE_MODEL_PREVIEWER = "model_preview" // Remind the limit when using the preview model, the Plus account is enabled by default FEATURE_ALLOW_BETA_FEATURES = "beta_features" // 23.05.14 Added, allow use beta features + FEATURE_PROMPT_SUGGESTIONS = "prompt_suggestions" // 23.05.16 Added, prompt suggestions // misc FEATURE_DISABLE_UPGRADE_UI = "disable_upgrade_ui" // Enabled by default except for Plus accounts FEATURE_DISABLE_HISTORY = "disable_history" // Disable the session history, only the interface is reflected FEATURE_BUCKETED_HISTORY = "bucketed_history" // Enabled by default, Display history in buckets FEATURE_SCROLL_HISTORY = "infinite_scroll_history" // Enabled by default, infinite scroll history + FEATURE_I18N = "i18n" // i18n FEATURE_SHAREABLE_LINKS = "shareable_links" // 23.05.08 Added, conversation sharing feat @@ -61,9 +65,10 @@ const ( FEATURE_PLIGIN_ENABLE = "tools3" // Plug-in permissions FEATURE_PLUGINS_DISABLED = "plugins_disabled" // Plug-in permissions // plugins, browsing - FEATURE_PLIGIN_BROWSING = "tools" // Plug-in permissions - FEATURE_PLUGINS_BROWSING_AVAILABLE = "browsing_available" // Plug-in permissions - FEATURE_PLUGINS_BROWSING_DISABLED = "browsing_disabled" // Plug-in permissions + FEATURE_PLIGIN_BROWSING = "tools" // Plug-in permissions + FEATURE_PLUGINS_BROWSING_AVAILABLE = "browsing_available" // Plug-in permissions + FEATURE_PLUGINS_BROWSING_MONOLOGUE = "browsing_inner_monologue" // Plug-in permissions + FEATURE_PLUGINS_BROWSING_DISABLED = "browsing_disabled" // Plug-in permissions // plugins, code interpreter FEATURE_PLIGIN_CODE_INTERPRETER = "tools2" // Plug-in permissions // plugins, debug diff --git a/internal/datatypes/models.go b/internal/datatypes/models.go index a36eeea..09aa92b 100644 --- a/internal/datatypes/models.go +++ b/internal/datatypes/models.go @@ -92,6 +92,45 @@ var MODEL_GPT4 = ModelListItem{ }, } +var MODEL_GPT4_BROWSING = ModelListItem{ + Slug: "gpt-4-browsing", + MaxTokens: 4095, + Title: "GPT-4 Browsing", + Description: "Our most capable model, great for tasks that require creativity and advanced reasoning.", + Tags: []string{"beta"}, + QualitativeProperties: ModelListQualitativeProperties{ + Reasoning: []int{5, 5}, + Speed: []int{2, 5}, + Conciseness: []int{4, 5}, + }, +} + +var MODEL_GPT4_CODE = ModelListItem{ + Slug: "gpt-4-code-interpreter", + MaxTokens: 4095, + Title: "GPT-4 Code Interpreter", + Description: "Our most capable model, great for tasks that require creativity and advanced reasoning.", + Tags: []string{"beta"}, + QualitativeProperties: ModelListQualitativeProperties{ + Reasoning: []int{5, 5}, + Speed: []int{2, 5}, + Conciseness: []int{4, 5}, + }, +} + +var MODEL_GPT4_PLUGIN = ModelListItem{ + Slug: "gpt-4-plugins", + MaxTokens: 4095, + Title: "GPT-4 Plugins", + Description: "Our most capable model, great for tasks that require creativity and advanced reasoning.", + Tags: []string{"beta"}, + QualitativeProperties: ModelListQualitativeProperties{ + Reasoning: []int{5, 5}, + Speed: []int{2, 5}, + Conciseness: []int{4, 5}, + }, +} + var MODEL_GPT4_CATEGORY = ModelsCategory{ BrowsingModel: "gpt-4-browsing", Category: "gpt_4", @@ -128,6 +167,29 @@ var MODEL_NO_MODELS = ModelListItem{ }, } +var MODEL_OTHER = ModelListItem{ + Slug: "other", + MaxTokens: 4095, + Title: "Other", + Description: "Our most capable model, great for tasks that require creativity and advanced reasoning.", + Tags: []string{}, + QualitativeProperties: ModelListQualitativeProperties{ + Reasoning: []int{5, 5}, + Speed: []int{2, 5}, + Conciseness: []int{4, 5}, + }, +} + +var MODEL_OTHER_CATEGORY = ModelsCategory{ + BrowsingModel: "other", + Category: "other", + CodeInterpreterModel: "other-code-interpreter", + DefaultModel: "other", + HumanCategoryName: "other", + PluginsModel: "other-plugins", + SubscriptionLevel: "free", +} + var MODEL_MIDJOURNEY = ModelListItem{ Slug: "mid-journey", MaxTokens: 1000,