DeepFellow DOCS

DeepFellow Infra Web Panel

DeepFellow Infra lets you manage your models. To install Infra, follow the Installation Guide.

Accessing Infra Web Panel

Type the following in your terminal:

deepfellow infra info

You will get output similar to this:

$ deepfellow infra info
💡      Information about DeepFellow Infra:
        NAME: infra
        INFRA_URL: https://df-infra-node-1.com
        INFRA_MESH_URL: wss://df-infra-node-1.com
        INFRA_PORT: 8086
        INFRA_IMAGE: hub.simplito.com/deepfellow/deepfellow-infra:latest
        MESH_KEY: *****
        INFRA_API_KEY: *****
        INFRA_ADMIN_API_KEY: *****
        CONNECT_TO_MESH_URL: undefined
        CONNECT_TO_MESH_KEY: undefined
        INFRA_DOCKER_SUBNET: deepfellow-infra-net
        INFRA_COMPOSE_PREFIX: dfd834zh_
        INFRA_DOCKER_CONFIG: /home/mark/.deepfellow/infra/docker-config.json
        INFRA_STORAGE_DIR: /home/mark/.deepfellow/infra/storage
        METRICS_USERNAME: SDjtoe8Z
        METRICS_PASSWORD: *****

Sensitive values are masked by default. Add the --secret flag to reveal them:

deepfellow infra info --secret

Head to the UI at http://localhost:8086.

In the pop-up window enter the value of INFRA_ADMIN_API_KEY. The services window will appear:

DeepFellow Infra Web Panel screen with services available, for example ollama, openAI, and google

Services

Models are organized under "services". Each service is named after the backend, e.g. "ollama", or after the provider, e.g. "openai". Services group models from the same family.

Choosing Services

Available LLM services – ollama, llamacpp, and vllm differ in their level of hardware integration, including dependencies on specific CPU instruction sets.

To minimize hardware compatibility issues, consider the following services:

  • ollama – Recommended for most users. Automatically adapts to your hardware configuration with minimal setup required.
  • llamacpp – Supports models outside the ollama repository and the GGUF model format. May require extra configuration due to a higher chance of hardware compatibility issues.
  • vllm – Offers the highest performance but carries the highest risk of hardware-related complications. Recommended for experienced users who are confident in troubleshooting and system configuration.

Recommendation: If you're not sure which service to choose, start with ollama.

Installing Services

To install a particular service, click install. You will be prompted with the window where you can choose service parameters.

Get the required API key before installing each service to use models with our anonymization layer:

Hardware selection depends on availability:

window with hardware choose parameters

vLLM CPU mode is available only with processors supporting AVX-512 – learn more in vLLM docs. We recommend using 'ollama' or 'llamacpp' services instead, whenever possible. They provide the smoothest experience for now.

After the chosen service is installed, it will appear in the grid.

Uninstalling Services

Simply click "Uninstall" button to uninstall a service. You will have two options to choose:

  • Uninstall - uninstalls the service but keeps its associated files, including model files
  • Purge - uninstalls the service with its associated files, including model files

Models

Installing Models

Click on "Models" button on the desired service. You will see a list of available models:

DeepFellow Infra Web Panel screen with models available in ollama service

You can filter model list by name, type. You can also show models which are:

  • installed / not installed
  • custom / not custom

Click on "Install" button to install selected model.

Modal showing model configuration during its installation

You can set the model alias. You can also decide how much time it can stay inactive before removing it from the graphic card memory. You can also adjust its context length.

After a model is installed, its card shows an estimated memory footprint (RAM (est.) on CPU, VRAM (est.) on GPU). Use it to judge how many models will run on the same machine at once and to avoid out-of-memory failures.

Uninstalling Models

Simply click "Uninstall" button to uninstall a model.

A window will open asking if you want to uninstall the model with its files.

After clicking uninstall, the model will stay downloaded but not installed.

Then, you can click install or purge button.

Clicking purge removes the model completely. It will have to be downloaded again in order to install.

Testing Models

At any time after installing a given model you can test whether it is healthy. To do this click "Test" button on the model card, and you will get the result:

model test result

Custom Models

You can install your own custom models. Installed model must adhere to at least one of the criteria below:

  1. Is present in Ollama library -- use ollama service,
  2. Any model available in HuggingFace in GGUF format -- use llamacpp service,
  3. Any model available in HuggingFace supported by vLLM -- use vllm service,
  4. Any model from OpenAI/Google -- use openai/google service,
  5. Any image generation model compatible with stable diffusion (e.g. Civitai, HuggingFace) -- use stable-diffusion-next service,
  6. Any LoRA compatible with stable diffusion (e.g. Civitai, HuggingFace) -- use stable-diffusion-next service,
  7. Any docker image -- use custom service.
  8. Any reranking model -- use rerank service.
  9. Models hosted on a separate Ollama instance -- use ollama-external service.

Pop-up window showing docker image parameters to be filled-in to install custom model.

Read Using Custom Models guide to check the details.

Install

The install procedure is similar for all the services. Exception is 'custom' service - read Using Custom Models guide to check the details.

As an example, if you want to add custom model (qwen3-embedding:0.6b -- go to Ollama library) to your 'ollama' service:

  1. Go to the services view,
  2. Locate 'ollama' tab and clik 'Install' if not already installed,
  3. Click "Add custom model" button,
  4. In the pop-up window enter Model ID qwen3-embedding:0.6b,
  5. Enter Size 639MB,
  6. Chose embedding Model type from the drop-down. New model tab will be shown,
  7. Click "Install" button,
  8. In the pop-up window add optional parameters and click "Install" to confirm,
  9. After a while your model will appear in the models list with green label "Installed". Now you can use your model as normal.

Custom models are used exactly the same way as non-custom ones. You use their intentifiers the same way in your inference requests or code.

Uninstall

Removing custom model requires two actions:

  • uninstalling model,
  • removing custom model tab.

Uninstalling model

  1. Go to the services view,
  2. Click "Models" on the tab of the service (e.g. 'ollama') model was installed from,
  3. Search the model you want to uninstall (e.g. qwen3-embedding:0.6),
  4. Click "Uninstall" to remove the model.

Removing custom model tab

  1. Inside the model view search for the custom model name (e.g. qwen3-embedding:0.6),
  2. Click "Remove custom model".

MCP Servers

DeepFellow can register MCP servers in three ways: running a stdio-based server in Docker via a built-in bridge, proxying a remote MCP endpoint, or using a custom Docker image. All three are configured through a single modal on the mcp service's Models page.

Read the MCP Servers guide for full details.

Configuration

The Configuration page lists every infra setting and lets an admin change most of them without restarting DeepFellow Infra.

To open it, click the Configuration tab in the Infra Web Panel.

Each row shows a setting's key and its current value. Secret values, such as API keys and tokens, are masked by default. Click the eye icon to reveal a secret value, or the clipboard icon to copy it.

A setting that supports live editing shows a pencil icon. To change its value:

  1. Click the pencil icon on the setting you want to change.
  2. Enter the new value. A boolean setting shows a toggle switch instead of a text field.
  3. Click the checkmark to save the change, or the X to cancel it.

DeepFellow Infra validates the new value, writes it to config.json, and applies it immediately. If the changed setting requires a live side effect, for example reconnecting to a parent Infra in a Mesh, DeepFellow Infra performs that automatically.

A setting without a pencil icon is a bootstrap setting. Bootstrap settings load from .env at startup and require a restart to change. Set them with deepfellow infra env set and restart Infra.

Environment Variables (CLI)

Display DeepFellow Infra's current configuration by running deepfellow infra info on a host that can reach the Infra's admin API. It resolves the address and admin API key from the connection stored locally by infra install or infra connect, or from --url/--api-key. API keys are masked by default. Add --secret to reveal them.

$ deepfellow infra info
💡      Information about DeepFellow Infra:
        NAME: infra
        INFRA_URL: https://infra:8086
        INFRA_MESH_URL: wss://infra:8086
        INFRA_PORT: 8086
        INFRA_IMAGE: github.simplito.com:5050/df/deepfellow-infra:latest
        MESH_KEY: *****
        INFRA_API_KEY: *****
        INFRA_ADMIN_API_KEY: *****
        CONNECT_TO_MESH_URL: undefined
        CONNECT_TO_MESH_KEY: undefined
        INFRA_DOCKER_SUBNET: deepfellow-infra-net
        INFRA_COMPOSE_PREFIX: dfd834zh_
        INFRA_DOCKER_CONFIG: /home/johndoe/.docker/config.json
        INFRA_STORAGE_DIR: /home/johndoe/.deepfellow/infra/storage
        HUGGING_FACE_TOKEN: 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
        CIVITAI_TOKEN: 7fea22cc5605cf498066059415157828
  • DF_INFRA_URL - URL of this Infra. When this Infra acts as a child in a Mesh, the value must be an address reachable from the parent Infra, not a local hostname.
  • DF_INFRA_MESH_URL - URL for connecting Infras
  • DF_INFRA_API_KEY - key to authenticate requests from DeepFellow Server
  • DF_INFRA_ADMIN_API_KEY - key needed to perform administrative tasks on DeepFellow Infra
  • DF_MESH_KEY - key needed by some other host to connect to this Infra and thus extend the Mesh
  • DF_CONNECT_TO_MESH_KEY - DF_MESH_KEY value of the parent Infra
  • DF_CONNECT_TO_MESH_URL - DF_INFRA_URL value of the parent Infra

After the initial .env bootstrap, most infra settings, including your keys, mesh connection, and telemetry options, move to config.json inside the Infra container. Edit them from the Infra Web Panel's Configuration page for changes that apply immediately, with no restart required. Only a few bootstrap settings, the admin key, Docker network, container naming, and storage paths, still live in .env and require a restart to change.

To inspect the local .env file directly instead, for example before Infra has started, run deepfellow infra env info. Its keys keep the DF_ prefix, unlike infra info. If config.json already exists on the install, it warns you that some of the values shown may be stale, since a dynamic setting changed through the Configuration page or infra config set no longer updates .env:

$ deepfellow infra env info
⚠️      config.json exists on this install some of these values may be stale if they were migrated to dynamic configuration. Run `deepfellow infra info` for Infra's current runtime configuration.
💡      Information about DeepFellow Infra:

Set env values with the command:

deepfellow infra env set ENV_NAME ENV_VALUE

For example, to set the Docker Compose resource prefix, a bootstrap setting, type:

deepfellow infra env set DF_INFRA_COMPOSE_PREFIX my_infra_

Setting an env value updates the .env file, but the running stack keeps using the old value until it restarts. After it updates the file, the command asks whether to restart the stack now:

💡      Updated /home/johndoe/.deepfellow/infra/.env.
      Restart the infra now to apply the change? [y/n] (y):

Answer y (the default) to stop and restart the infra stack so the new value takes effect immediately. Answer n to leave the stack running with the old value until your next restart. This prompt appears only when an infra stack is running.

deepfellow infra env set refuses to write a variable that has migrated to dynamic configuration once Infra is already running, since the write would have no effect. It points you to the equivalent infra config set command instead:

$ deepfellow infra env set DF_HUGGING_FACE_TOKEN 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
💀      DF_HUGGING_FACE_TOKEN is dynamic configuration stored in config.json. Writing it to .env has no effect once Infra is running. Use `deepfellow infra config set hugging_face_token=<value>` instead.

Use deepfellow infra config set for a dynamic setting instead, as described in Configuration.

If Infra isn't running, env set can't check whether the variable is dynamic through the admin API. If config.json already exists on the install, it warns you instead of refusing, and still writes to .env:

$ deepfellow infra env set DF_HUGGING_FACE_TOKEN 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
⚠️      Infra isn't running, so I can't check whether this variable is dynamic configuration stored in config.json. config.json already exists on this install, though if it was migrated there, this write will have no effect once Infra starts. Start Infra and use `deepfellow infra config set` if unsure.
💡      Updated /home/johndoe/.deepfellow/infra/.env.

To unset this variable, type:

deepfellow infra env set DF_INFRA_COMPOSE_PREFIX

API Documentation

To access the DeepFellow Infra API documentation, click the "Go to Docs" button in the upper left corner.

Next steps

You can head to the tutorials related to using specific services listed here:

We use cookies on our website. We use them to ensure proper functioning of the site and, if you agree, for purposes such as analytics, marketing, and targeting ads.