Rename nativeCapabilities to capabilities with AgentCapabilities type
This commit is contained in:
@@ -1625,7 +1625,7 @@ type PublicWorkspaceData {
|
||||
workspaceUrls: WorkspaceUrls!
|
||||
}
|
||||
|
||||
type NativeModelCapabilities {
|
||||
type AgentCapabilities {
|
||||
webSearch: Boolean
|
||||
twitterSearch: Boolean
|
||||
}
|
||||
@@ -1638,7 +1638,7 @@ type ClientAIModelConfig {
|
||||
sdkPackage: String
|
||||
inputCostPerMillionTokens: Float
|
||||
outputCostPerMillionTokens: Float
|
||||
nativeCapabilities: NativeModelCapabilities
|
||||
capabilities: AgentCapabilities
|
||||
isDeprecated: Boolean
|
||||
isRecommended: Boolean
|
||||
providerName: String
|
||||
|
||||
@@ -1334,10 +1334,10 @@ export interface PublicWorkspaceData {
|
||||
__typename: 'PublicWorkspaceData'
|
||||
}
|
||||
|
||||
export interface NativeModelCapabilities {
|
||||
export interface AgentCapabilities {
|
||||
webSearch?: Scalars['Boolean']
|
||||
twitterSearch?: Scalars['Boolean']
|
||||
__typename: 'NativeModelCapabilities'
|
||||
__typename: 'AgentCapabilities'
|
||||
}
|
||||
|
||||
export interface ClientAIModelConfig {
|
||||
@@ -1348,7 +1348,7 @@ export interface ClientAIModelConfig {
|
||||
sdkPackage?: Scalars['String']
|
||||
inputCostPerMillionTokens?: Scalars['Float']
|
||||
outputCostPerMillionTokens?: Scalars['Float']
|
||||
nativeCapabilities?: NativeModelCapabilities
|
||||
capabilities?: AgentCapabilities
|
||||
isDeprecated?: Scalars['Boolean']
|
||||
isRecommended?: Scalars['Boolean']
|
||||
providerName?: Scalars['String']
|
||||
@@ -4509,7 +4509,7 @@ export interface PublicWorkspaceDataGenqlSelection{
|
||||
__scalar?: boolean | number
|
||||
}
|
||||
|
||||
export interface NativeModelCapabilitiesGenqlSelection{
|
||||
export interface AgentCapabilitiesGenqlSelection{
|
||||
webSearch?: boolean | number
|
||||
twitterSearch?: boolean | number
|
||||
__typename?: boolean | number
|
||||
@@ -4524,7 +4524,7 @@ export interface ClientAIModelConfigGenqlSelection{
|
||||
sdkPackage?: boolean | number
|
||||
inputCostPerMillionTokens?: boolean | number
|
||||
outputCostPerMillionTokens?: boolean | number
|
||||
nativeCapabilities?: NativeModelCapabilitiesGenqlSelection
|
||||
capabilities?: AgentCapabilitiesGenqlSelection
|
||||
isDeprecated?: boolean | number
|
||||
isRecommended?: boolean | number
|
||||
providerName?: boolean | number
|
||||
@@ -7624,10 +7624,10 @@ export interface LogicFunctionLogsInput {applicationId?: (Scalars['UUID'] | null
|
||||
|
||||
|
||||
|
||||
const NativeModelCapabilities_possibleTypes: string[] = ['NativeModelCapabilities']
|
||||
export const isNativeModelCapabilities = (obj?: { __typename?: any } | null): obj is NativeModelCapabilities => {
|
||||
if (!obj?.__typename) throw new Error('__typename is missing in "isNativeModelCapabilities"')
|
||||
return NativeModelCapabilities_possibleTypes.includes(obj.__typename)
|
||||
const AgentCapabilities_possibleTypes: string[] = ['AgentCapabilities']
|
||||
export const isAgentCapabilities = (obj?: { __typename?: any } | null): obj is AgentCapabilities => {
|
||||
if (!obj?.__typename) throw new Error('__typename is missing in "isAgentCapabilities"')
|
||||
return AgentCapabilities_possibleTypes.includes(obj.__typename)
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -3275,7 +3275,7 @@ export default {
|
||||
1
|
||||
]
|
||||
},
|
||||
"NativeModelCapabilities": {
|
||||
"AgentCapabilities": {
|
||||
"webSearch": [
|
||||
6
|
||||
],
|
||||
@@ -3308,7 +3308,7 @@ export default {
|
||||
"outputCostPerMillionTokens": [
|
||||
11
|
||||
],
|
||||
"nativeCapabilities": [
|
||||
"capabilities": [
|
||||
165
|
||||
],
|
||||
"isDeprecated": [
|
||||
|
||||
@@ -112,6 +112,12 @@ export type Agent = {
|
||||
updatedAt: Scalars['DateTime'];
|
||||
};
|
||||
|
||||
export type AgentCapabilities = {
|
||||
__typename?: 'AgentCapabilities';
|
||||
twitterSearch?: Maybe<Scalars['Boolean']>;
|
||||
webSearch?: Maybe<Scalars['Boolean']>;
|
||||
};
|
||||
|
||||
export type AgentChatEvent = {
|
||||
__typename?: 'AgentChatEvent';
|
||||
event: Scalars['JSON'];
|
||||
@@ -867,6 +873,7 @@ export type CheckUserExist = {
|
||||
|
||||
export type ClientAiModelConfig = {
|
||||
__typename?: 'ClientAIModelConfig';
|
||||
capabilities?: Maybe<AgentCapabilities>;
|
||||
contextWindowTokens?: Maybe<Scalars['Float']>;
|
||||
dataResidency?: Maybe<Scalars['String']>;
|
||||
inputCostPerMillionTokens?: Maybe<Scalars['Float']>;
|
||||
@@ -877,7 +884,6 @@ export type ClientAiModelConfig = {
|
||||
modelFamily?: Maybe<ModelFamily>;
|
||||
modelFamilyLabel?: Maybe<Scalars['String']>;
|
||||
modelId: Scalars['String'];
|
||||
nativeCapabilities?: Maybe<NativeModelCapabilities>;
|
||||
outputCostPerMillionTokens?: Maybe<Scalars['Float']>;
|
||||
providerLabel?: Maybe<Scalars['String']>;
|
||||
providerName?: Maybe<Scalars['String']>;
|
||||
@@ -3841,12 +3847,6 @@ export type MutationVerifyTwoFactorAuthenticationMethodForAuthenticatedUserArgs
|
||||
otp: Scalars['String'];
|
||||
};
|
||||
|
||||
export type NativeModelCapabilities = {
|
||||
__typename?: 'NativeModelCapabilities';
|
||||
twitterSearch?: Maybe<Scalars['Boolean']>;
|
||||
webSearch?: Maybe<Scalars['Boolean']>;
|
||||
};
|
||||
|
||||
export type NavigationMenuItem = {
|
||||
__typename?: 'NavigationMenuItem';
|
||||
applicationId?: Maybe<Scalars['UUID']>;
|
||||
|
||||
@@ -34,13 +34,13 @@ export const SettingsAgentModelCapabilities = ({
|
||||
const aiModels = useAtomStateValue(aiModelsState);
|
||||
|
||||
const selectedModel = aiModels.find((m) => m.modelId === selectedModelId);
|
||||
const nativeCapabilities = selectedModel?.nativeCapabilities;
|
||||
const capabilities = selectedModel?.capabilities;
|
||||
|
||||
if (!isDefined(nativeCapabilities)) {
|
||||
if (!isDefined(capabilities)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (!nativeCapabilities.webSearch && !nativeCapabilities.twitterSearch) {
|
||||
if (!capabilities.webSearch && !capabilities.twitterSearch) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -61,8 +61,8 @@ export const SettingsAgentModelCapabilities = ({
|
||||
});
|
||||
};
|
||||
|
||||
const capabilities = [
|
||||
...(nativeCapabilities.webSearch
|
||||
const capabilityItems = [
|
||||
...(capabilities.webSearch
|
||||
? [
|
||||
{
|
||||
key: 'webSearch' as const,
|
||||
@@ -72,7 +72,7 @@ export const SettingsAgentModelCapabilities = ({
|
||||
},
|
||||
]
|
||||
: []),
|
||||
...(nativeCapabilities.twitterSearch
|
||||
...(capabilities.twitterSearch
|
||||
? [
|
||||
{
|
||||
key: 'twitterSearch' as const,
|
||||
@@ -88,7 +88,7 @@ export const SettingsAgentModelCapabilities = ({
|
||||
<Section>
|
||||
<InputLabel>{t`Capabilities`}</InputLabel>
|
||||
<div>
|
||||
{capabilities.map((capability) => (
|
||||
{capabilityItems.map((capability) => (
|
||||
<MenuItemToggle
|
||||
key={capability.key}
|
||||
LeftIcon={capability.Icon}
|
||||
|
||||
+3
-3
@@ -30,7 +30,7 @@ registerEnumType(AiModelRole, {
|
||||
});
|
||||
|
||||
@ObjectType()
|
||||
export class NativeModelCapabilities {
|
||||
export class AgentCapabilities {
|
||||
@Field(() => Boolean, { nullable: true })
|
||||
webSearch?: boolean;
|
||||
|
||||
@@ -62,8 +62,8 @@ export class ClientAIModelConfig {
|
||||
@Field(() => Number, { nullable: true })
|
||||
outputCostPerMillionTokens?: number;
|
||||
|
||||
@Field(() => NativeModelCapabilities, { nullable: true })
|
||||
nativeCapabilities?: NativeModelCapabilities;
|
||||
@Field(() => AgentCapabilities, { nullable: true })
|
||||
capabilities?: AgentCapabilities;
|
||||
|
||||
@Field(() => Boolean, { nullable: true })
|
||||
isDeprecated?: boolean;
|
||||
|
||||
+4
-4
@@ -17,7 +17,7 @@ import { MaintenanceModeService } from 'src/engine/core-modules/admin-panel/main
|
||||
import {
|
||||
type ClientAIModelConfig,
|
||||
type ClientConfig,
|
||||
type NativeModelCapabilities,
|
||||
type AgentCapabilities,
|
||||
} from 'src/engine/core-modules/client-config/client-config.entity';
|
||||
import { DomainServerConfigService } from 'src/engine/core-modules/domain/domain-server-config/services/domain-server-config.service';
|
||||
import { PUBLIC_FEATURE_FLAGS } from 'src/engine/core-modules/feature-flag/constants/public-feature-flag.const';
|
||||
@@ -38,9 +38,9 @@ export class ClientConfigService {
|
||||
private maintenanceModeService: MaintenanceModeService,
|
||||
) {}
|
||||
|
||||
private deriveNativeCapabilities(
|
||||
private deriveAgentCapabilities(
|
||||
sdkPackage?: AiSdkPackage,
|
||||
): NativeModelCapabilities | undefined {
|
||||
): AgentCapabilities | undefined {
|
||||
const hasNativeWebSearch =
|
||||
sdkPackage === AI_SDK_OPENAI ||
|
||||
sdkPackage === AI_SDK_ANTHROPIC ||
|
||||
@@ -104,7 +104,7 @@ export class ClientConfigService {
|
||||
sdkPackage: registeredModel.sdkPackage,
|
||||
providerName,
|
||||
providerLabel: getProviderLabel(providerName),
|
||||
nativeCapabilities: this.deriveNativeCapabilities(
|
||||
capabilities: this.deriveAgentCapabilities(
|
||||
registeredModel.sdkPackage,
|
||||
),
|
||||
inputCostPerMillionTokens: modelConfig?.inputCostPerMillionTokens,
|
||||
|
||||
Reference in New Issue
Block a user