Skip to content

Arize-ai/phoenix-on-azure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deploy Phoenix to Azure

Open in GitHub Codespaces Open in Dev Containers

Phoenix provides MLOps and LLMOps insights at lightning speed with zero-config observability. Phoenix provides a notebook-first experience for monitoring your models and LLM Applications by providing:

Example Image

  • LLM Traces - Trace through the execution of your LLM Application to understand the internals of your LLM Application and to troubleshoot problems related to things like retrieval and tool execution.
  • LLM Evals - Leverage the power of large language models to evaluate your generative model or application's relevance, toxicity, and more. Embedding Analysis - Explore embedding point-clouds and identify clusters of high drift and performance degradation.
  • RAG Analysis - Visualize your generative application's search and retrieval process to identify problems and improve your RAG pipeline. Structured Data Analysis - Statistically analyze your structured data by performing A/B analysis, temporal drift analysis, and more.

Example Image

Example Image

Table of contents:

Getting Started

You have a few options for getting started with this template. The quickest way to get started is GitHub Codespaces, since it will setup all the tools for you, but you can also set it up locally. You can also use a VS Code dev container

GitHub Codespaces

You can run this template virtually by using GitHub Codespaces. The button will open a web-based VS Code instance in your browser:

  1. Open the template (this may take several minutes) Open in GitHub Codespaces

  2. Open a terminal window

  3. Sign into your Azure account:

     azd auth login --use-device-code
  4. Provision the Azure resources and deploy your code:

    azd config set alpha.resourceGroupDeployments on
    azd provision
  5. To view the endpoint, follow the "Phoenix UI link"

  6. Optionally, you can configure a CI/CD pipeline:

    azd pipeline config

VS Code Dev Containers

A related option is VS Code Dev Containers, which will open the project in your local VS Code using the Dev Containers extension:

  1. Start Docker Desktop (install it if not already installed)

  2. Open the project: Open in Dev Containers

  3. In the VS Code window that opens, once the project files show up (this may take several minutes), open a terminal window.

  4. Sign into your Azure account:

     azd auth login
  5. Provision the Azure resources and deploy your code:

    azd config set alpha.resourceGroupDeployments on
    azd provision
  6. To view the endpoint, follow the "Phoenix UI link"

  7. Optionally, you can configure a CI/CD pipeline:

    azd pipeline config

Local Environment

Prerequisites

Quickstart

  1. Run this command to download the project code:

    azd init -t Arize-ai/phoenix-on-azure

    Note: this command will initialize a git repository, so you do not need to clone this repository.

  2. Create a Python virtual environment and install the required packages:

    pip install -r requirements.txt
  3. Sign into your Azure account:

     azd auth login
  4. Create a new azd environment:

    azd env new

    Enter a name that will be used for the resource group. This will create a new folder in the .azure folder, and set it as the active environment for any calls to azd going forward.

  5. Run this command to provision all the resources:

    azd config set alpha.resourceGroupDeployments on
    azd provision

    This will create a new resource group, and create the Azure Container App and PostgreSQL Flexible server inside that group. It will use the init.sh and post.sh hooks to set up default secrets, and pass the necessary environment variables to the Azure Container App.

  6. In order to deploy this template, you will need to turn on the resource group scoped deployments alpha feature. Learn more about azd's feature versioning strategy.

    azd config set alpha.resourceGroupDeployments on
  7. Provision and deploy the project to Azure:

    azd up

    This will create a new resource group, and create the Azure Container App and PostgreSQL Flexible server inside that group. It will use the init.sh and post.sh hooks to set up default secrets, and pass the necessary environment variables to the Azure Container App.

  8. To view the endpoint, follow the "Phoenix UI link"

  9. Optionally, you can configure a CI/CD pipeline:

    azd pipeline config

Guidance

Costs

You can estimate the cost of this project's architecture with Azure's pricing calculator

  • Azure Container Apps - Consumption tier pricing
  • Azure Monitor - Pay-as-you-go tier pricing

Disclaimer

Phoenix is an external project and is not affiliated with Microsoft.