Enabling AI Services

This page describes how to deploy and enable the AI Services runtime in DCT. Once AI Services is running, you configure providers and assign them to features from Admin > AI Settings; see Configuring AI providers and features.

How AI runs by default

By default, AI Integration is enabled, primarily so that Documentation Help is available out of the box. AI Integration is the master switch for all AI functionality, so turning it off also disables Documentation Help. Even with AI Integration enabled, no LLM-powered feature runs until you configure it: by default, no provider has been added and no provider is assigned to any feature. In other words, AI Settings is ready to use, but nothing performs inference until you add a provider and assign it to a feature.

This is true on both appliance and Kubernetes deployments. Before an LLM feature can work, you still need to confirm the AI Services containers are running, add a provider (embedded or external), and assign it to the feature.

To keep AI fully disabled:

  • Turn the AI Integration toggle off in Admin > AI Settings. This disables all AI features, including Documentation Help. On the appliance, this is the only option, because it is a closed appliance and you cannot stop the AI Services containers directly.

  • On Kubernetes, you can additionally prevent the AI Services containers from running: do not enable the AI feature flags, or scale the AI pods to zero.

Embedded model resource requirements

Decide up front whether you will run an Embedded provider, because it changes how you size the deployment. The embedded model performs inference locally on DCT infrastructure, which is memory and CPU intensive, so it needs the resources below. External and self-hosted providers run inference off-box, so they do not require these elevated resources; the standard DCT system requirements (8 vCPU and 16 GB RAM) are sufficient.

System requirements

To run an embedded model effectively, the following is recommended:

  • At minimum, the DCT deployment must run at least an 8vCPU, however, a 16vCPU is recommended.

    • At least a 4vCPU should be dedicated to the AI Service for Kubernetes DCT deployments.

  • At minimum, the DCT deployment must have 32 GB of RAM. 64 GB RAM is strongly recommended for heavier workloads.

  • GPU acceleration for embedded models is not certified or supported; embedded models are optimized to run on CPU hardware.

  • The model file size is approximately 3.2 GB, and installation temporarily requires up to 12.8 GB of disk space.

Failing to meet these requirements may result in slow performance or job failures. Model files should be handled and stored according to your internal security practices.

Performance impact

Running embedded AI capabilities, such as secure lookup list generation, is memory and CPU intensive. You may notice temporary increases in CPU and RAM usage during these operations. For best results:

  • Schedule generation tasks during off-peak hours to avoid disruption.

  • Monitor resource consumption after enabling the feature to assess impact.

Be aware that embedded AI operations are very CPU intensive and can impact the performance of other CPU intensive operations on the engine. External and self-hosted providers offload this work off the DCT system, so they place much less load on DCT itself.

Deploying AI Services

The AI Services runtime runs as two components, ai-control and ai-execution. How they start depends on your deployment.

Appliance

In the appliance deployment, the AI Services containers (ai-control and ai-execution) run by default when the VM has at least 16 GB of RAM. No additional steps are required to start them.

Kubernetes

On Kubernetes, AI Services is opt-in and must be enabled in values.yaml.

  1. Open values.yaml. At the end of the file, review the documented configuration options for the AI service pods.

  2. At minimum, uncomment the following lines in values.yaml to enable AI startup and feature flagging:

    Copy
    aiRegisterAtStartup: true
     enabledFeatureFlags: AI_REGISTER_AT_STARTUP
  3. AI Services will create two new volumes to store models and other temporary files. These volumes are created when the feature flag is enabled in the previous step. To override the default size setting for these volumes, the following configs in values.yaml may be updated.

    Copy
    aiExecutionDataStorageSize: 10Gi
    aiControlDataStorageSize: 10Gi 
  4. Apply the changes. Replace <release-name>, <chart-path>, and <namespace> with your values. These properties start AI Services in the DCT cluster.

    Copy
    helm upgrade <release-name> <chart-path> -n <namespace>

Ingress for embedded model uploads (Kubernetes only)

If you plan to use an Embedded provider, you must configure a dedicated ingress so the large model file (up to 5 GB) can be uploaded to the AI control service. This step is only required for embedded model uploads; external and self-hosted providers do not upload a model file. The upload itself is performed later on the Configuring AI providers and features page, when you add an Embedded provider.

  1. Create a file named ai-model-upload-ingress.yaml with the content below:

    Copy
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: ai-model-upload-ingress
      namespace: dct-services
      annotations:
        nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
        nginx.ingress.kubernetes.io/proxy-body-size: 5g
    spec:
      rules:
      - http:
          paths:
          - path: /dct/v3/ai/management/model/upload
            pathType: Prefix
            backend:
              service:
                name: proxy
                port:
                  number: 443
  2. Run the following command:

    Copy
    kubectl apply -f ai-model-upload-ingress.yaml

    For other ingress controllers, configure the maximum body size according to the controller's documentation. Without this update, it will not be possible to upload model files.

Troubleshooting

If AI Services does not start or behave as expected:

  • Confirm the system has adequate memory and disk space.

  • Review the DCT logs and Admin > Operations for additional context.

  • For Kubernetes deployments, confirm that the ai-control and ai-execution service pods are running and healthy, and check connectivity between the AI execution and control containers.

App/Gateway container

Check the gateway logs to confirm that the AI route was added successfully:

2025-07-13T17:52:55.316Z INFO [gateway, ] 1 --- [gateway] [taskScheduler-1] [ ] c.d.api.gw.route.GatewayRouteConfig : Successfully fetched routing info for AI App.

Confirm AI Services are running

Once DCT AI services are started, there should be two new services in the cluster:

  • ai-control: Control plane container

  • ai-execution: Execution plane container

Control plane

Logs confirming startup and execution service registration may look like this:

2025-07-18T16:32:16.672Z INFO [ai-control, ] ... : Started DCTAiApplication in 35.698 seconds (process running for 51.131)

2025-07-18T16:32:23.901Z INFO [ai-control, ] ... : Initializing Spring DispatcherServlet 'dispatcherServlet'

2025-07-18T16:32:24.067Z INFO [ai-control, ] ... : New status for LLM gateway container ai-execution-b5d959584-ml5dq is RUNNING

Execution plane

Example log activity:

Sending status update: RUNNING to http://ai-control:5009/dct-internal/update-llm-gateway-status

retry_until_success is true, will attempt up to 1000 times

Attempt 1 of 1000

HTTP error: 000 ... will retry

Attempt 3 of 1000

Status update sent successfully: 200

Confirm persistent storage (Kubernetes)

Check persistent volumes in the namespace with:

Copy
kubectl get pv -n dct-services

Look for claims such as dct-services/ai-control-data and dct-services/ai-execution-data.

Check container logs

If services fail to start, review logs for potential issues such as:

  • Insufficient memory

  • Insufficient CPU

  • Persistent storage errors

  • Access permission problems

Use the following commands to review logs:

Kubernetes

Copy
kubectl logs <pod-name> -n dct-services

Appliance

On the appliance, container logs are managed internally and cannot be accessed directly with Docker commands such as docker logs. To troubleshoot AI Services startup issues:

  • Review the Operations page in Admin > Operations for any failed operations (for example, operations of type LLM Upload Model or AI Services startup tasks). Operation logs may indicate the cause.

  • Contact Delphix support with details about when the issue occurred and any error messages visible in the DCT UI.