> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flex.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Develop and debug your AI workloads interactively with VSCode and SSH access

FlexAI's Interactive Development features are designed to optimize your development workflows and enhance productivity. You can leverage these tools to streamline your coding-testing-debugging cycles, all within the FlexAI ecosystem.

<CardGroup>
  <Card icon="vscode" title="Visual Studio Code Integration">
    Connect directly to your Interactive Development environment from Visual Studio Code to leverage all of its supported features, like language servers, integrated terminal for system-wide command execution, debugging tools, and a large set of extensions.
  </Card>

  <Card icon="seti:shell" title="SSH Connection Freedom">
    Access your an Interactive Development environment via SSH from any terminal or tool that can leverage it, giving you complete control over your development environment.
  </Card>
</CardGroup>

You can use the Interactive Training mode to create a dynamic FlexAI Training runtime environment that you can *interact with* directly via SSH from your terminal or through a code editor —in this case, [Visual Studio Code (VSCode)](https://code.visualstudio.com/).

## Your AI development workflow within the FlexAI ecosystem

The most straightforward way to integrate FlexAI into your development workflow is to use the Interactive Training mode to create a dynamic training environment that you can connect to from VSCode.

Within the Interactive Training runtime environment you will have access to its file system —including your code base, Datasets, generated outputs and Checkpoints—, as well as the ability to run system commands to query logs and monitor performance.

<Tabs>
  <Tab title="Using the FlexAI Console">
    <NotAvailableOnConsole />
  </Tab>

  <Tab title="Using the FlexAI CLI">
    Starting an Interactive Training session using the `flexai training debug-ssh` command with the required `--repository-url` and `--authorized-keys` flags, as well as the optional, but highly recommended `--vscode` flag.

    ```bash title="Starting an Interactive Training session with VSCode support" theme={null}
    flexai training debug-ssh \
      --repository-url https://github.com/flexaihq/nanoGPT \
      --authorized-keys ~/.ssh/id_ed25519.pub \
      --vscode \
    ```

    Once you're happy with the results after testing and iterating on your code, you can save your work by pushing changes to the source Git repository. This can be done because the CLI will attempt to get your Git Author name and Email from your local Git configuration and set them in the Interactive Training Runtime environment.
  </Tab>
</Tabs>

### Integrating more FlexAI services into your development workflow

You can go deeper by integrating more FlexAI services, here's an example workflow:

<Tabs>
  <Tab title="Using the FlexAI Console">
    <NotAvailableOnConsole />
  </Tab>

  <Tab title="Using the FlexAI CLI">
    <Steps>
      1. You can deploy an Inference Endpoint of a coding-assistant LLM, such as [StarCoder](https://huggingface.co/bigcode/starcoder2-15b) or [Mamba Codestral](https://huggingface.co/mistralai/Mamba-Codestral-7B-v0.1), either as a base model, or a [Fine-tuned one with your own data](/core-services/fine-tuning/quickstart/creating/).

      2. Start an Interactive Training session making sure to use the `--vscode` flag.

      3. Once the Interactive Training session is running and you have connected to it from VSCode, you can install an extension such as [CodeGPT](https://marketplace.visualstudio.com/items?itemName=DanielSanMedium.codegpt) or [Continue](https://marketplace.visualstudio.com/items?itemName=Continue.continue) and configure it to use your deployed Inference Endpoint and API Key.
    </Steps>
  </Tab>
</Tabs>

### Want to go deeper?

How about testing your changes by deploying an Inference Endpoint from an "Inference-ready" Checkpoint you created during your Interactive Training session? You can learn how to do this and more in the [Inference-ready Checkpoints](/platform-services/checkpoint-manager/inference-ready-checkpoints/) documentation page.

## Prefer not to use Visual Studio Code?

If you prefer not to use Visual Studio Code, you can still connect to the Interactive Training Runtime using any SSH client. Simply skip the `--vscode` flag when starting the Interactive Training session, then use the provided SSH command to connect to the Interactive Training Runtime from your terminal or SSH client of choice.
