diff --git a/.cspell.json b/.cspell.json
index 6f9d9c5c1ec..0e45432fb3d 100644
--- a/.cspell.json
+++ b/.cspell.json
@@ -25,18 +25,21 @@
"**/*.txt",
".gitignore",
"scripts/docs/_build/**",
- "src/promptflow/promptflow/azure/_restclient/flow/**",
- "src/promptflow/promptflow/azure/_restclient/swagger.json",
- "src/promptflow/promptflow/azure/_models/**",
+ "src/promptflow-azure/promptflow/azure/_restclient/flow/**",
+ "src/promptflow-azure/promptflow/azure/_restclient/swagger.json",
+ "src/promptflow-azure/promptflow/azure/_models/**",
+ "src/promptflow-azure/tests/**",
"src/promptflow-core/promptflow/core/_connection_provider/_models/**",
"src/promptflow/tests/**",
"src/promptflow-recording/**",
"src/promptflow-tools/tests/**",
"**/flow.dag.yaml",
+ "**/pyproject.toml",
"**/setup.py",
"scripts/installer/curl_install_pypi/**",
"scripts/installer/windows/**",
"src/promptflow/promptflow/_sdk/_service/pfsvc.py",
+ "src/promptflow-devkit/promptflow/_sdk/_service/pfsvc.py",
".github/workflows/**",
".github/actions/**",
".github/pipelines/**"
diff --git a/.github/workflows/promptflow-executor-e2e-test.yml b/.github/workflows/promptflow-executor-e2e-test.yml
index dbc2c5dcd8d..de5a676ab23 100644
--- a/.github/workflows/promptflow-executor-e2e-test.yml
+++ b/.github/workflows/promptflow-executor-e2e-test.yml
@@ -106,14 +106,16 @@ jobs:
Set-PSDebug -Trace 1
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
- pip install ${{ github.workspace }}/src/promptflow-core
- gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[executor-service]"}}
+ pip install ${{ github.workspace }}/src/promptflow-core[executor-service]
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
+ gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
- name: install recording
run: |
pip install vcrpy
- pip install -e .
+ pip install .
working-directory: ${{ env.RECORD_DIRECTORY }}
- name: Azure Login
uses: azure/login@v1
diff --git a/.github/workflows/promptflow-executor-unit-test.yml b/.github/workflows/promptflow-executor-unit-test.yml
index b5fdeb5b6a5..d545931576f 100644
--- a/.github/workflows/promptflow-executor-unit-test.yml
+++ b/.github/workflows/promptflow-executor-unit-test.yml
@@ -110,14 +110,16 @@ jobs:
Set-PSDebug -Trace 1
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
- pip install ${{ github.workspace }}/src/promptflow-core
- gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[executor-service]"}}
+ pip install ${{ github.workspace }}/src/promptflow-core[executor-service]
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
+ gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
- name: install recording
run: |
pip install vcrpy
- pip install -e .
+ pip install .
working-directory: ${{ env.RECORD_DIRECTORY }}
- name: Azure Login
uses: azure/login@v1
diff --git a/.github/workflows/promptflow-global-config-test.yml b/.github/workflows/promptflow-global-config-test.yml
index 0e887a5e56e..fe00424371c 100644
--- a/.github/workflows/promptflow-global-config-test.yml
+++ b/.github/workflows/promptflow-global-config-test.yml
@@ -69,6 +69,10 @@ jobs:
echo "Installed promptflow-tracing"
pip uninstall -y promptflow-core
pip install ${{ github.workspace }}/src/promptflow-core
+ pip uninstall -y promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip uninstall -y promptflow-azure
+ pip install ${{ github.workspace }}/src/promptflow-azure
pip freeze
- name: Azure Login
uses: azure/login@v1
diff --git a/.github/workflows/promptflow-import-linter.yml b/.github/workflows/promptflow-import-linter.yml
index df52dc8719b..9c920ffd622 100644
--- a/.github/workflows/promptflow-import-linter.yml
+++ b/.github/workflows/promptflow-import-linter.yml
@@ -18,6 +18,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
+ - name: Set up Python 3.11
+ uses: actions/setup-python@v5
+ with:
+ python-version: 3.11
- uses: snok/install-poetry@v1
- name: Install all packages
run: |
diff --git a/.github/workflows/promptflow-sdk-cli-test.yml b/.github/workflows/promptflow-sdk-cli-test.yml
index 6297c16f4bc..27c04a2b47e 100644
--- a/.github/workflows/promptflow-sdk-cli-test.yml
+++ b/.github/workflows/promptflow-sdk-cli-test.yml
@@ -5,6 +5,7 @@ on:
pull_request:
paths:
- src/promptflow-core/**
+ - src/promptflow-devkit/**
- src/promptflow/**
- src/promptflow-tracing/**
- scripts/building/**
@@ -81,13 +82,14 @@ jobs:
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
pip install ${{ github.workspace }}/src/promptflow-core
+ pip install ${{ github.workspace }}/src/promptflow-devkit[pyarrow]
gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
- name: install recording
run: |
pip install vcrpy
- pip install -e .
+ pip install .
working-directory: ${{ env.RECORD_DIRECTORY }}
- name: Azure login (non pull_request workflow)
if: github.event_name != 'pull_request'
@@ -142,6 +144,7 @@ jobs:
run: |
Set-PSDebug -Trace 1
pip uninstall -y promptflow promptflow-sdk promptflow-tools
+ pip install ${{ github.workspace }}/src/promptflow-devkit
gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[azure]"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
diff --git a/.github/workflows/sdk-cli-azure-test-production.yml b/.github/workflows/sdk-cli-azure-test-production.yml
index 89d96f4ff9f..1234860caf0 100644
--- a/.github/workflows/sdk-cli-azure-test-production.yml
+++ b/.github/workflows/sdk-cli-azure-test-production.yml
@@ -89,6 +89,8 @@ jobs:
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
pip install ${{ github.workspace }}/src/promptflow-core
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[azure]"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
diff --git a/.github/workflows/sdk-cli-azure-test-pull-request.yml b/.github/workflows/sdk-cli-azure-test-pull-request.yml
index 2955d499d98..c509eceb3d5 100644
--- a/.github/workflows/sdk-cli-azure-test-pull-request.yml
+++ b/.github/workflows/sdk-cli-azure-test-pull-request.yml
@@ -7,6 +7,7 @@ on:
pull_request:
paths:
- src/promptflow-core/**
+ - src/promptflow-devkit/**
- src/promptflow/**
- scripts/building/**
- src/promptflow-tracing/**
@@ -89,6 +90,8 @@ jobs:
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
pip install ${{ github.workspace }}/src/promptflow-core
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[azure]"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
diff --git a/.github/workflows/sdk-cli-azure-test.yml b/.github/workflows/sdk-cli-azure-test.yml
index a11becbc194..f1f950a7a3a 100644
--- a/.github/workflows/sdk-cli-azure-test.yml
+++ b/.github/workflows/sdk-cli-azure-test.yml
@@ -88,6 +88,8 @@ jobs:
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
pip install ${{ github.workspace }}/src/promptflow-core
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[azure]"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
diff --git a/.github/workflows/sdk-cli-perf-monitor-test.yml b/.github/workflows/sdk-cli-perf-monitor-test.yml
index 46ee641326a..f3aa9f2f821 100644
--- a/.github/workflows/sdk-cli-perf-monitor-test.yml
+++ b/.github/workflows/sdk-cli-perf-monitor-test.yml
@@ -7,6 +7,8 @@ on:
pull_request:
paths:
- src/promptflow/**
+ - src/promptflow-core/**
+ - src/promptflow-devkit/**
- scripts/building/**
- .github/workflows/sdk-cli-perf-monitor-test.yml
@@ -81,7 +83,9 @@ jobs:
pip install -r ${{ github.workspace }}/src/promptflow/dev_requirements.txt
pip install ${{ github.workspace }}/src/promptflow-tracing
pip install ${{ github.workspace }}/src/promptflow-core
- gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[azure,executable,azureml-serving]"}}
+ pip install ${{ github.workspace }}/src/promptflow-devkit
+ pip install ${{ github.workspace }}/src/promptflow-azure
+ gci ./promptflow -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install "$($_.FullName)[all]"}}
gci ./promptflow-tools -Recurse | % {if ($_.Name.Contains('.whl')) {python -m pip install $_.FullName}}
pip freeze
diff --git a/.gitignore b/.gitignore
index 74df3834b44..ea50b90eae5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -165,7 +165,6 @@ cython_debug/
# ignore
!flow.tools.json
-**/.promptflow/*
.runs
connection.json
.env
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 94cab9a9934..419c1cc7684 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,7 +1,7 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
-exclude: '(^docs/)|flows|scripts|src/promptflow/promptflow/azure/_restclient/|src/promptflow-core/promptflow/core/_connection_provider/_models/|src/promptflow/promptflow/azure/_models/|src/promptflow/tests/test_configs|src/promptflow-tools'
+exclude: '(^docs/)|flows|scripts|src/promptflow-azure/promptflow/azure/_restclient/|src/promptflow-core/promptflow/core/_connection_provider/_models/|src/promptflow-azure/promptflow/azure/_models/|src/promptflow/tests/test_configs|src/promptflow-tools'
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
diff --git a/scripts/check_enforcer/check_enforcer.py b/scripts/check_enforcer/check_enforcer.py
index 6755b95f77d..b1a3bf08659 100644
--- a/scripts/check_enforcer/check_enforcer.py
+++ b/scripts/check_enforcer/check_enforcer.py
@@ -47,11 +47,11 @@
"scripts/building/**",
".github/workflows/promptflow-sdk-cli-test.yml",
],
- "sdk_cli_global_config_tests": [
- "src/promptflow/**",
- "scripts/building/**",
- ".github/workflows/promptflow-global-config-test.yml",
- ],
+ # "sdk_cli_global_config_tests": [
+ # "src/promptflow/**",
+ # "scripts/building/**",
+ # ".github/workflows/promptflow-global-config-test.yml",
+ # ],
"sdk_cli_azure_test_replay": [
"src/promptflow/**",
"scripts/building/**",
diff --git a/scripts/compliance-check/user_exclusion.xml b/scripts/compliance-check/user_exclusion.xml
index 24044e16b19..73646e29452 100644
--- a/scripts/compliance-check/user_exclusion.xml
+++ b/scripts/compliance-check/user_exclusion.xml
@@ -3,5 +3,5 @@
SRC\PROMPTFLOW-CORE\PROMPTFLOW\CORE\_SERVING\STATIC\INDEX.JS
.MIN.JS
- SRC\PROMPTFLOW\PROMPTFLOW\_SDK\_SERVICE\STATIC\
+ SRC\PROMPTFLOW-DEVKIT\PROMPTFLOW\_SDK\_SERVICE\STATIC\
diff --git a/scripts/dev-setup/main.py b/scripts/dev-setup/main.py
index 5203faa79cd..667eeb2e9da 100644
--- a/scripts/dev-setup/main.py
+++ b/scripts/dev-setup/main.py
@@ -15,9 +15,8 @@
PROMPT_FLOW_PKGS = [
"promptflow-tracing",
"promptflow-core",
- # TODO: uncomment below lines when the packages are ready
- # "promptflow-devkit",
- # "promptflow-azure",
+ "promptflow-devkit",
+ "promptflow-azure",
"promptflow[azure]",
"promptflow-tools",
]
diff --git a/setup.cfg b/setup.cfg
index 1a6b19b1dc7..a35c3e642ab 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -11,8 +11,8 @@ exclude =
docs/*
venv,.pytest_cache
build
- src/promptflow/promptflow/azure/_restclient
- src/promptflow/promptflow/azure/_models
+ src/promptflow-azure/promptflow/azure/_restclient
+ src/promptflow-azure/promptflow/azure/_models
src/promptflow-core/promptflow/core/_connection_provider/_models
src/promptflow/tests/test_configs/*
import-order-style = google
diff --git a/src/promptflow-azure/promptflow/azure/__init__.py b/src/promptflow-azure/promptflow/azure/__init__.py
index 555fb331eb2..fcf0ebcdceb 100644
--- a/src/promptflow-azure/promptflow/azure/__init__.py
+++ b/src/promptflow-azure/promptflow/azure/__init__.py
@@ -2,6 +2,8 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# ---------------------------------------------------------
-from ._version import __version__
+__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
-__all__ = ["__version__"]
+from ._pf_client import PFClient
+
+__all__ = ["PFClient"]
diff --git a/src/promptflow/promptflow/_cli/__init__.py b/src/promptflow-azure/promptflow/azure/_cli/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/__init__.py
rename to src/promptflow-azure/promptflow/azure/_cli/__init__.py
diff --git a/src/promptflow/promptflow/azure/_cli/_connection.py b/src/promptflow-azure/promptflow/azure/_cli/_connection.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_cli/_connection.py
rename to src/promptflow-azure/promptflow/azure/_cli/_connection.py
diff --git a/src/promptflow/promptflow/azure/_cli/_flow.py b/src/promptflow-azure/promptflow/azure/_cli/_flow.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_cli/_flow.py
rename to src/promptflow-azure/promptflow/azure/_cli/_flow.py
diff --git a/src/promptflow/promptflow/azure/_cli/_run.py b/src/promptflow-azure/promptflow/azure/_cli/_run.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_cli/_run.py
rename to src/promptflow-azure/promptflow/azure/_cli/_run.py
diff --git a/src/promptflow/promptflow/azure/_cli/_utils.py b/src/promptflow-azure/promptflow/azure/_cli/_utils.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_cli/_utils.py
rename to src/promptflow-azure/promptflow/azure/_cli/_utils.py
diff --git a/src/promptflow/promptflow/azure/_cli/entry.py b/src/promptflow-azure/promptflow/azure/_cli/entry.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_cli/entry.py
rename to src/promptflow-azure/promptflow/azure/_cli/entry.py
diff --git a/src/promptflow/promptflow/azure/_constants/__init__.py b/src/promptflow-azure/promptflow/azure/_constants/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_constants/__init__.py
rename to src/promptflow-azure/promptflow/azure/_constants/__init__.py
diff --git a/src/promptflow/promptflow/azure/_constants/_component.py b/src/promptflow-azure/promptflow/azure/_constants/_component.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_constants/_component.py
rename to src/promptflow-azure/promptflow/azure/_constants/_component.py
diff --git a/src/promptflow/promptflow/azure/_constants/_flow.py b/src/promptflow-azure/promptflow/azure/_constants/_flow.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_constants/_flow.py
rename to src/promptflow-azure/promptflow/azure/_constants/_flow.py
diff --git a/src/promptflow/promptflow/_cli/_pf/__init__.py b/src/promptflow-azure/promptflow/azure/_entities/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/__init__.py
rename to src/promptflow-azure/promptflow/azure/_entities/__init__.py
diff --git a/src/promptflow/promptflow/azure/_entities/_flow.py b/src/promptflow-azure/promptflow/azure/_entities/_flow.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_entities/_flow.py
rename to src/promptflow-azure/promptflow/azure/_entities/_flow.py
diff --git a/src/promptflow/promptflow/azure/_entities/_workspace_connection_spec.py b/src/promptflow-azure/promptflow/azure/_entities/_workspace_connection_spec.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_entities/_workspace_connection_spec.py
rename to src/promptflow-azure/promptflow/azure/_entities/_workspace_connection_spec.py
diff --git a/src/promptflow/promptflow/azure/_load_functions.py b/src/promptflow-azure/promptflow/azure/_load_functions.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_load_functions.py
rename to src/promptflow-azure/promptflow/azure/_load_functions.py
diff --git a/src/promptflow/promptflow/azure/_ml/__init__.py b/src/promptflow-azure/promptflow/azure/_ml/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_ml/__init__.py
rename to src/promptflow-azure/promptflow/azure/_ml/__init__.py
diff --git a/src/promptflow/promptflow/azure/_pf_client.py b/src/promptflow-azure/promptflow/azure/_pf_client.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_pf_client.py
rename to src/promptflow-azure/promptflow/azure/_pf_client.py
diff --git a/src/promptflow/promptflow/azure/_restclient/README.md b/src/promptflow-azure/promptflow/azure/_restclient/README.md
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/README.md
rename to src/promptflow-azure/promptflow/azure/_restclient/README.md
diff --git a/src/promptflow/promptflow/azure/_restclient/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/_azure_machine_learning_designer_service_client.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/_azure_machine_learning_designer_service_client.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/_azure_machine_learning_designer_service_client.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/_azure_machine_learning_designer_service_client.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/_configuration.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/_configuration.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/_configuration.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/_configuration.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/_patch.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/_patch.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/_patch.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/_patch.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/_vendor.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/_vendor.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/_vendor.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/_vendor.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/_azure_machine_learning_designer_service_client.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_azure_machine_learning_designer_service_client.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/_azure_machine_learning_designer_service_client.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_azure_machine_learning_designer_service_client.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/_configuration.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_configuration.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/_configuration.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_configuration.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/_patch.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_patch.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/_patch.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/_patch.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_bulk_runs_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_bulk_runs_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_bulk_runs_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_bulk_runs_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_connection_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_connection_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_connection_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_connection_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_connections_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_connections_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_connections_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_connections_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_experiment_templates_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_experiment_templates_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_experiment_templates_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_experiment_templates_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_experiments_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_experiments_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_experiments_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_experiments_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runs_admin_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runs_admin_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runs_admin_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runs_admin_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_workspace_independent_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_workspace_independent_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_workspace_independent_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_runtimes_workspace_independent_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_admin_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_admin_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_admin_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_admin_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flow_sessions_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flows_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flows_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flows_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flows_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flows_provider_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flows_provider_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_flows_provider_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_flows_provider_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_tools_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_tools_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_tools_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_tools_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_trace_sessions_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_trace_sessions_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/aio/operations/_trace_sessions_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/aio/operations/_trace_sessions_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/models/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/models/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/models/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/models/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/models/_azure_machine_learning_designer_service_client_enums.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/models/_azure_machine_learning_designer_service_client_enums.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/models/_azure_machine_learning_designer_service_client_enums.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/models/_azure_machine_learning_designer_service_client_enums.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/models/_models.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/models/_models.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/models/_models.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/models/_models.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/models/_models_py3.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/models/_models_py3.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/models/_models_py3.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/models/_models_py3.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/__init__.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/__init__.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/__init__.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_bulk_runs_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_bulk_runs_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_bulk_runs_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_bulk_runs_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_connection_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_connection_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_connection_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_connection_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_connections_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_connections_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_connections_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_connections_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_experiment_templates_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_experiment_templates_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_experiment_templates_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_experiment_templates_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_experiments_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_experiments_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_experiments_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_experiments_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runs_admin_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runs_admin_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runs_admin_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runs_admin_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runtimes_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runtimes_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runtimes_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runtimes_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runtimes_workspace_independent_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runtimes_workspace_independent_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_runtimes_workspace_independent_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_runtimes_workspace_independent_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_sessions_admin_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_sessions_admin_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_sessions_admin_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_sessions_admin_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_sessions_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_sessions_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flow_sessions_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flow_sessions_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flows_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flows_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flows_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flows_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_flows_provider_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flows_provider_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_flows_provider_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_flows_provider_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_tools_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_tools_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_tools_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_tools_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/operations/_trace_sessions_operations.py b/src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_trace_sessions_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/operations/_trace_sessions_operations.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/operations/_trace_sessions_operations.py
diff --git a/src/promptflow/promptflow/azure/_restclient/flow/py.typed b/src/promptflow-azure/promptflow/azure/_restclient/flow/py.typed
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow/py.typed
rename to src/promptflow-azure/promptflow/azure/_restclient/flow/py.typed
diff --git a/src/promptflow/promptflow/azure/_restclient/flow_service_caller.py b/src/promptflow-azure/promptflow/azure/_restclient/flow_service_caller.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/flow_service_caller.py
rename to src/promptflow-azure/promptflow/azure/_restclient/flow_service_caller.py
diff --git a/src/promptflow/promptflow/azure/_restclient/service_caller_factory.py b/src/promptflow-azure/promptflow/azure/_restclient/service_caller_factory.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/service_caller_factory.py
rename to src/promptflow-azure/promptflow/azure/_restclient/service_caller_factory.py
diff --git a/src/promptflow/promptflow/azure/_restclient/swagger.json b/src/promptflow-azure/promptflow/azure/_restclient/swagger.json
similarity index 100%
rename from src/promptflow/promptflow/azure/_restclient/swagger.json
rename to src/promptflow-azure/promptflow/azure/_restclient/swagger.json
diff --git a/src/promptflow/promptflow/_sdk/__init__.py b/src/promptflow-azure/promptflow/azure/_schemas/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/__init__.py
rename to src/promptflow-azure/promptflow/azure/_schemas/__init__.py
diff --git a/src/promptflow/promptflow/azure/_schemas/_flow_schema.py b/src/promptflow-azure/promptflow/azure/_schemas/_flow_schema.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_schemas/_flow_schema.py
rename to src/promptflow-azure/promptflow/azure/_schemas/_flow_schema.py
diff --git a/src/promptflow/promptflow/azure/_storage/__init__.py b/src/promptflow-azure/promptflow/azure/_storage/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/__init__.py
rename to src/promptflow-azure/promptflow/azure/_storage/__init__.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/__init__.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/__init__.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/__init__.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/client.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/client.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/client.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/client.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/collection.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/collection.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/collection.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/collection.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/cosmosdb_utils.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/cosmosdb_utils.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/cosmosdb_utils.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/cosmosdb_utils.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/span.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/span.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/span.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/span.py
diff --git a/src/promptflow/promptflow/azure/_storage/cosmosdb/summary.py b/src/promptflow-azure/promptflow/azure/_storage/cosmosdb/summary.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_storage/cosmosdb/summary.py
rename to src/promptflow-azure/promptflow/azure/_storage/cosmosdb/summary.py
diff --git a/src/promptflow/promptflow/azure/_utils/__init__.py b/src/promptflow-azure/promptflow/azure/_utils/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_utils/__init__.py
rename to src/promptflow-azure/promptflow/azure/_utils/__init__.py
diff --git a/src/promptflow/promptflow/azure/_utils/_tracing.py b/src/promptflow-azure/promptflow/azure/_utils/_tracing.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_utils/_tracing.py
rename to src/promptflow-azure/promptflow/azure/_utils/_tracing.py
diff --git a/src/promptflow/promptflow/azure/_utils/_url_utils.py b/src/promptflow-azure/promptflow/azure/_utils/_url_utils.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_utils/_url_utils.py
rename to src/promptflow-azure/promptflow/azure/_utils/_url_utils.py
diff --git a/src/promptflow/promptflow/azure/_utils/general.py b/src/promptflow-azure/promptflow/azure/_utils/general.py
similarity index 100%
rename from src/promptflow/promptflow/azure/_utils/general.py
rename to src/promptflow-azure/promptflow/azure/_utils/general.py
diff --git a/src/promptflow-azure/promptflow/azure/_version.py b/src/promptflow-azure/promptflow/azure/_version.py
deleted file mode 100644
index e3acf771296..00000000000
--- a/src/promptflow-azure/promptflow/azure/_version.py
+++ /dev/null
@@ -1,7 +0,0 @@
-# ---------------------------------------------------------
-# Copyright (c) Microsoft Corporation. All rights reserved.
-# ---------------------------------------------------------
-
-import importlib.metadata
-
-__version__ = importlib.metadata.version("promptflow-azure")
diff --git a/src/promptflow/promptflow/azure/operations/__init__.py b/src/promptflow-azure/promptflow/azure/operations/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/__init__.py
rename to src/promptflow-azure/promptflow/azure/operations/__init__.py
diff --git a/src/promptflow/promptflow/azure/operations/_arm_connection_operations.py b/src/promptflow-azure/promptflow/azure/operations/_arm_connection_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_arm_connection_operations.py
rename to src/promptflow-azure/promptflow/azure/operations/_arm_connection_operations.py
diff --git a/src/promptflow/promptflow/azure/operations/_artifact_utilities.py b/src/promptflow-azure/promptflow/azure/operations/_artifact_utilities.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_artifact_utilities.py
rename to src/promptflow-azure/promptflow/azure/operations/_artifact_utilities.py
diff --git a/src/promptflow/promptflow/azure/operations/_async_run_downloader.py b/src/promptflow-azure/promptflow/azure/operations/_async_run_downloader.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_async_run_downloader.py
rename to src/promptflow-azure/promptflow/azure/operations/_async_run_downloader.py
diff --git a/src/promptflow/promptflow/azure/operations/_connection_operations.py b/src/promptflow-azure/promptflow/azure/operations/_connection_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_connection_operations.py
rename to src/promptflow-azure/promptflow/azure/operations/_connection_operations.py
diff --git a/src/promptflow/promptflow/azure/operations/_fileshare_storeage_helper.py b/src/promptflow-azure/promptflow/azure/operations/_fileshare_storeage_helper.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_fileshare_storeage_helper.py
rename to src/promptflow-azure/promptflow/azure/operations/_fileshare_storeage_helper.py
diff --git a/src/promptflow/promptflow/azure/operations/_flow_operations.py b/src/promptflow-azure/promptflow/azure/operations/_flow_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_flow_operations.py
rename to src/promptflow-azure/promptflow/azure/operations/_flow_operations.py
diff --git a/src/promptflow/promptflow/azure/operations/_run_operations.py b/src/promptflow-azure/promptflow/azure/operations/_run_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_run_operations.py
rename to src/promptflow-azure/promptflow/azure/operations/_run_operations.py
diff --git a/src/promptflow/promptflow/azure/operations/_trace_operations.py b/src/promptflow-azure/promptflow/azure/operations/_trace_operations.py
similarity index 100%
rename from src/promptflow/promptflow/azure/operations/_trace_operations.py
rename to src/promptflow-azure/promptflow/azure/operations/_trace_operations.py
diff --git a/src/promptflow/promptflow/azure/resources/component_spec_template.yaml b/src/promptflow-azure/promptflow/azure/resources/component_spec_template.yaml
similarity index 100%
rename from src/promptflow/promptflow/azure/resources/component_spec_template.yaml
rename to src/promptflow-azure/promptflow/azure/resources/component_spec_template.yaml
diff --git a/src/promptflow-azure/pyproject.toml b/src/promptflow-azure/pyproject.toml
index ac8c409b00c..4b12b2b116f 100644
--- a/src/promptflow-azure/pyproject.toml
+++ b/src/promptflow-azure/pyproject.toml
@@ -2,6 +2,9 @@
name = "promptflow-azure"
version = "0.1.0b1"
description = "Prompt flow azure"
+include = [
+ "promptflow/azure/resources/*"
+]
license = "MIT"
@@ -36,10 +39,18 @@ packages = [
[tool.poetry.dependencies]
python = "<4.0,>=3.8"
+azure-core = ">=1.26.4,<2.0.0"
+"azure-storage-blob[aio]" = ">=12.17.0,<13.0.0" # add [aio] for async run download feature
+azure-identity = ">=1.12.0,<2.0.0"
+azure-ai-ml = ">=1.14.0,<2.0.0"
+azure-cosmos = ">=4.5.1,<5.0.0" # used to upload trace to cloud
+pyjwt = ">=2.4.0,<3.0.0" # requirement of control plane SDK
+promptflow-devkit = "<2.0.0"
[tool.poetry.group.dev.dependencies]
pre-commit = "*"
import-linter = "*"
+promptflow-devkit = { path = "../promptflow-devkit" }
[tool.poetry.group.test.dependencies]
pytest = "*"
@@ -50,6 +61,9 @@ pytest-xdist = "*"
requires = ["poetry-core>=1.5.0"]
build-backend = "poetry.core.masonry.api"
+[tool.poetry.scripts]
+pfazure = "promptflow.azure._cli.entry:main"
+
[tool.pytest.ini_options]
markers = [
"unittest",
diff --git a/src/promptflow/promptflow/contracts/__init__.py b/src/promptflow-core/promptflow/contracts/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/__init__.py
rename to src/promptflow-core/promptflow/contracts/__init__.py
diff --git a/src/promptflow/promptflow/contracts/_errors.py b/src/promptflow-core/promptflow/contracts/_errors.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/_errors.py
rename to src/promptflow-core/promptflow/contracts/_errors.py
diff --git a/src/promptflow/promptflow/contracts/_run_management.py b/src/promptflow-core/promptflow/contracts/_run_management.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/_run_management.py
rename to src/promptflow-core/promptflow/contracts/_run_management.py
diff --git a/src/promptflow/promptflow/contracts/flow.py b/src/promptflow-core/promptflow/contracts/flow.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/flow.py
rename to src/promptflow-core/promptflow/contracts/flow.py
diff --git a/src/promptflow/promptflow/contracts/multimedia.py b/src/promptflow-core/promptflow/contracts/multimedia.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/multimedia.py
rename to src/promptflow-core/promptflow/contracts/multimedia.py
diff --git a/src/promptflow/promptflow/contracts/run_info.py b/src/promptflow-core/promptflow/contracts/run_info.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/run_info.py
rename to src/promptflow-core/promptflow/contracts/run_info.py
diff --git a/src/promptflow/promptflow/contracts/run_mode.py b/src/promptflow-core/promptflow/contracts/run_mode.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/run_mode.py
rename to src/promptflow-core/promptflow/contracts/run_mode.py
diff --git a/src/promptflow/promptflow/contracts/tool.py b/src/promptflow-core/promptflow/contracts/tool.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/tool.py
rename to src/promptflow-core/promptflow/contracts/tool.py
diff --git a/src/promptflow/promptflow/contracts/types.py b/src/promptflow-core/promptflow/contracts/types.py
similarity index 100%
rename from src/promptflow/promptflow/contracts/types.py
rename to src/promptflow-core/promptflow/contracts/types.py
diff --git a/src/promptflow-core/pyproject.toml b/src/promptflow-core/pyproject.toml
index 99c8e54a328..0f7f6a904d9 100644
--- a/src/promptflow-core/pyproject.toml
+++ b/src/promptflow-core/pyproject.toml
@@ -54,6 +54,7 @@ executor-service = ["fastapi"]
[tool.poetry.group.dev.dependencies]
pre-commit = "*"
import-linter = "*"
+promptflow-tracing = { path = "../promptflow-tracing" }
[tool.poetry.group.test.dependencies]
pytest = "*"
@@ -74,11 +75,6 @@ markers = [
# durations - list the slowest test durations
addopts = """
--junit-xml=test-results.xml \
---cov=promptflow \
---cov-config=pyproject.toml \
---cov-report=term \
---cov-report=html \
---cov-report=xml \
--dist loadfile \
--log-level=info \
--log-format="%(asctime)s %(levelname)s %(message)s" \
diff --git a/src/promptflow-devkit/pf b/src/promptflow-devkit/pf
new file mode 100644
index 00000000000..333a91a041d
--- /dev/null
+++ b/src/promptflow-devkit/pf
@@ -0,0 +1,10 @@
+#!/usr/bin/env python
+
+import sys
+import os
+
+def main():
+ if os.environ.get('PF_INSTALLER') is None:
+ os.environ['PF_INSTALLER'] = 'PIP'
+
+ os.execl(sys.executable, sys.executable, '-m', 'promptflow._cli._pf.entry', *sys.argv[1:])
diff --git a/src/promptflow/promptflow/_sdk/_connection_provider/__init__.py b/src/promptflow-devkit/promptflow/_cli/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_connection_provider/__init__.py
rename to src/promptflow-devkit/promptflow/_cli/__init__.py
diff --git a/src/promptflow/promptflow/_cli/_params.py b/src/promptflow-devkit/promptflow/_cli/_params.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_params.py
rename to src/promptflow-devkit/promptflow/_cli/_params.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/__init__.py b/src/promptflow-devkit/promptflow/_cli/_pf/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/__init__.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/__init__.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_config.py b/src/promptflow-devkit/promptflow/_cli/_pf/_config.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_config.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_config.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_connection.py b/src/promptflow-devkit/promptflow/_cli/_pf/_connection.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_connection.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_connection.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_experiment.py b/src/promptflow-devkit/promptflow/_cli/_pf/_experiment.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_experiment.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_experiment.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_flow.py b/src/promptflow-devkit/promptflow/_cli/_pf/_flow.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_flow.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_flow.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_init_entry_generators.py b/src/promptflow-devkit/promptflow/_cli/_pf/_init_entry_generators.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_init_entry_generators.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_init_entry_generators.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_run.py b/src/promptflow-devkit/promptflow/_cli/_pf/_run.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_run.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_run.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_tool.py b/src/promptflow-devkit/promptflow/_cli/_pf/_tool.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_tool.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_tool.py
diff --git a/src/promptflow/promptflow/_cli/_pf/_upgrade.py b/src/promptflow-devkit/promptflow/_cli/_pf/_upgrade.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/_upgrade.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/_upgrade.py
diff --git a/src/promptflow/promptflow/_cli/_pf/entry.py b/src/promptflow-devkit/promptflow/_cli/_pf/entry.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/entry.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/entry.py
diff --git a/src/promptflow/promptflow/_cli/_pf/help.py b/src/promptflow-devkit/promptflow/_cli/_pf/help.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_pf/help.py
rename to src/promptflow-devkit/promptflow/_cli/_pf/help.py
diff --git a/src/promptflow/promptflow/_cli/_user_agent.py b/src/promptflow-devkit/promptflow/_cli/_user_agent.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_user_agent.py
rename to src/promptflow-devkit/promptflow/_cli/_user_agent.py
diff --git a/src/promptflow/promptflow/_cli/_utils.py b/src/promptflow-devkit/promptflow/_cli/_utils.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/_utils.py
rename to src/promptflow-devkit/promptflow/_cli/_utils.py
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/flow_files/.promptflow/flow.tools.json b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/.promptflow/flow.tools.json
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/flow_files/.promptflow/flow.tools.json
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/.promptflow/flow.tools.json
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/flow_files/README.md b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/README.md
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/flow_files/README.md
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/README.md
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/flow_files/chat.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/chat.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/flow_files/chat.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/flow_files/chat.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/template/azure_openai.yaml.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/azure_openai.yaml.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/template/azure_openai.yaml.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/azure_openai.yaml.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/template/flow.dag.yaml.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/flow.dag.yaml.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/template/flow.dag.yaml.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/flow.dag.yaml.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/chat_flow/template/openai.yaml.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/openai.yaml.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/chat_flow/template/openai.yaml.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/chat_flow/template/openai.yaml.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/entry_flow/flow.dag.yaml.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/flow.dag.yaml.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/entry_flow/flow.dag.yaml.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/entry_flow/flow.dag.yaml.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/entry_flow/flow.tools.json.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/flow.tools.json.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/entry_flow/flow.tools.json.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/entry_flow/flow.tools.json.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/entry_flow/gitignore b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/gitignore
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/entry_flow/gitignore
rename to src/promptflow-devkit/promptflow/_cli/data/entry_flow/gitignore
diff --git a/src/promptflow-devkit/promptflow/_cli/data/entry_flow/requirements_txt b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/requirements_txt
new file mode 100644
index 00000000000..7a54870cad1
--- /dev/null
+++ b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/requirements_txt
@@ -0,0 +1 @@
+promptflow
diff --git a/src/promptflow/promptflow/_cli/data/entry_flow/tool.py.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/entry_flow/tool.py.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/entry_flow/tool.py.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/entry_flow/tool.py.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/evaluation_flow/.promptflow/flow.tools.json b/src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/.promptflow/flow.tools.json
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/evaluation_flow/.promptflow/flow.tools.json
rename to src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/.promptflow/flow.tools.json
diff --git a/src/promptflow/promptflow/_cli/data/evaluation_flow/aggregate.py b/src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/aggregate.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/evaluation_flow/aggregate.py
rename to src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/aggregate.py
diff --git a/src/promptflow/promptflow/_cli/data/evaluation_flow/data.jsonl b/src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/data.jsonl
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/evaluation_flow/data.jsonl
rename to src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/data.jsonl
diff --git a/src/promptflow/promptflow/_cli/data/evaluation_flow/flow.dag.yaml b/src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/flow.dag.yaml
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/evaluation_flow/flow.dag.yaml
rename to src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/flow.dag.yaml
diff --git a/src/promptflow/promptflow/_cli/data/evaluation_flow/line_process.py b/src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/line_process.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/evaluation_flow/line_process.py
rename to src/promptflow-devkit/promptflow/_cli/data/evaluation_flow/line_process.py
diff --git a/src/promptflow/promptflow/_cli/data/package_tool/README.md.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/package_tool/README.md.jinja2
similarity index 97%
rename from src/promptflow/promptflow/_cli/data/package_tool/README.md.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/package_tool/README.md.jinja2
index ede780b4f0b..4dbb81b2b2b 100644
--- a/src/promptflow/promptflow/_cli/data/package_tool/README.md.jinja2
+++ b/src/promptflow-devkit/promptflow/_cli/data/package_tool/README.md.jinja2
@@ -11,4 +11,4 @@ The directory structure in the package tool is as follows:
__init__.py
```
-Please refer to [tool doc](https://microsoft.github.io/promptflow/how-to-guides/develop-a-tool/index.html) for more details about how to develop a tool.
\ No newline at end of file
+Please refer to [tool doc](https://microsoft.github.io/promptflow/how-to-guides/develop-a-tool/index.html) for more details about how to develop a tool.
diff --git a/src/promptflow/promptflow/_cli/data/package_tool/init.py b/src/promptflow-devkit/promptflow/_cli/data/package_tool/init.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/package_tool/init.py
rename to src/promptflow-devkit/promptflow/_cli/data/package_tool/init.py
diff --git a/src/promptflow/promptflow/_cli/data/package_tool/setup.py.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/package_tool/setup.py.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/package_tool/setup.py.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/package_tool/setup.py.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/package_tool/tool.py.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/package_tool/tool.py.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/package_tool/tool.py.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/package_tool/tool.py.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/package_tool/utils.py.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/package_tool/utils.py.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/package_tool/utils.py.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/package_tool/utils.py.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/standard_flow/.promptflow/flow.tools.json b/src/promptflow-devkit/promptflow/_cli/data/standard_flow/.promptflow/flow.tools.json
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/standard_flow/.promptflow/flow.tools.json
rename to src/promptflow-devkit/promptflow/_cli/data/standard_flow/.promptflow/flow.tools.json
diff --git a/src/promptflow/promptflow/_cli/data/standard_flow/data.jsonl b/src/promptflow-devkit/promptflow/_cli/data/standard_flow/data.jsonl
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/standard_flow/data.jsonl
rename to src/promptflow-devkit/promptflow/_cli/data/standard_flow/data.jsonl
diff --git a/src/promptflow/promptflow/_cli/data/standard_flow/flow.dag.yaml b/src/promptflow-devkit/promptflow/_cli/data/standard_flow/flow.dag.yaml
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/standard_flow/flow.dag.yaml
rename to src/promptflow-devkit/promptflow/_cli/data/standard_flow/flow.dag.yaml
diff --git a/src/promptflow/promptflow/_cli/data/standard_flow/hello.jinja2 b/src/promptflow-devkit/promptflow/_cli/data/standard_flow/hello.jinja2
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/standard_flow/hello.jinja2
rename to src/promptflow-devkit/promptflow/_cli/data/standard_flow/hello.jinja2
diff --git a/src/promptflow/promptflow/_cli/data/standard_flow/hello.py b/src/promptflow-devkit/promptflow/_cli/data/standard_flow/hello.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/data/standard_flow/hello.py
rename to src/promptflow-devkit/promptflow/_cli/data/standard_flow/hello.py
diff --git a/src/promptflow/promptflow/_cli/pf.py b/src/promptflow-devkit/promptflow/_cli/pf.py
similarity index 100%
rename from src/promptflow/promptflow/_cli/pf.py
rename to src/promptflow-devkit/promptflow/_cli/pf.py
diff --git a/src/promptflow/promptflow/_internal/__init__.py b/src/promptflow-devkit/promptflow/_internal/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_internal/__init__.py
rename to src/promptflow-devkit/promptflow/_internal/__init__.py
diff --git a/src/promptflow/promptflow/_proxy/__init__.py b/src/promptflow-devkit/promptflow/_proxy/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_proxy/__init__.py
rename to src/promptflow-devkit/promptflow/_proxy/__init__.py
diff --git a/src/promptflow/promptflow/_proxy/_base_inspector_proxy.py b/src/promptflow-devkit/promptflow/_proxy/_base_inspector_proxy.py
similarity index 100%
rename from src/promptflow/promptflow/_proxy/_base_inspector_proxy.py
rename to src/promptflow-devkit/promptflow/_proxy/_base_inspector_proxy.py
diff --git a/src/promptflow/promptflow/_proxy/_csharp_inspector_proxy.py b/src/promptflow-devkit/promptflow/_proxy/_csharp_inspector_proxy.py
similarity index 100%
rename from src/promptflow/promptflow/_proxy/_csharp_inspector_proxy.py
rename to src/promptflow-devkit/promptflow/_proxy/_csharp_inspector_proxy.py
diff --git a/src/promptflow/promptflow/_proxy/_proxy_factory.py b/src/promptflow-devkit/promptflow/_proxy/_proxy_factory.py
similarity index 100%
rename from src/promptflow/promptflow/_proxy/_proxy_factory.py
rename to src/promptflow-devkit/promptflow/_proxy/_proxy_factory.py
diff --git a/src/promptflow/promptflow/_proxy/_python_inspector_proxy.py b/src/promptflow-devkit/promptflow/_proxy/_python_inspector_proxy.py
similarity index 100%
rename from src/promptflow/promptflow/_proxy/_python_inspector_proxy.py
rename to src/promptflow-devkit/promptflow/_proxy/_python_inspector_proxy.py
diff --git a/src/promptflow/promptflow/_sdk/_service/utils/__init__.py b/src/promptflow-devkit/promptflow/_sdk/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/utils/__init__.py
rename to src/promptflow-devkit/promptflow/_sdk/__init__.py
diff --git a/src/promptflow/promptflow/_sdk/_configuration.py b/src/promptflow-devkit/promptflow/_sdk/_configuration.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_configuration.py
rename to src/promptflow-devkit/promptflow/_sdk/_configuration.py
diff --git a/src/promptflow/promptflow/_sdk/_serving/__init__.py b/src/promptflow-devkit/promptflow/_sdk/_connection_provider/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_serving/__init__.py
rename to src/promptflow-devkit/promptflow/_sdk/_connection_provider/__init__.py
diff --git a/src/promptflow/promptflow/_sdk/_connection_provider/_local_connection_provider.py b/src/promptflow-devkit/promptflow/_sdk/_connection_provider/_local_connection_provider.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_connection_provider/_local_connection_provider.py
rename to src/promptflow-devkit/promptflow/_sdk/_connection_provider/_local_connection_provider.py
diff --git a/src/promptflow/promptflow/_sdk/_constants.py b/src/promptflow-devkit/promptflow/_sdk/_constants.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_constants.py
rename to src/promptflow-devkit/promptflow/_sdk/_constants.py
diff --git a/src/promptflow/promptflow/_sdk/_errors.py b/src/promptflow-devkit/promptflow/_sdk/_errors.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_errors.py
rename to src/promptflow-devkit/promptflow/_sdk/_errors.py
diff --git a/src/promptflow/promptflow/_sdk/_load_functions.py b/src/promptflow-devkit/promptflow/_sdk/_load_functions.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_load_functions.py
rename to src/promptflow-devkit/promptflow/_sdk/_load_functions.py
diff --git a/src/promptflow/promptflow/_sdk/_mlflow.py b/src/promptflow-devkit/promptflow/_sdk/_mlflow.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_mlflow.py
rename to src/promptflow-devkit/promptflow/_sdk/_mlflow.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/__init__.py b/src/promptflow-devkit/promptflow/_sdk/_orm/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/__init__.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/__init__.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/connection.py b/src/promptflow-devkit/promptflow/_sdk/_orm/connection.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/connection.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/connection.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/experiment.py b/src/promptflow-devkit/promptflow/_sdk/_orm/experiment.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/experiment.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/experiment.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/experiment_node_run.py b/src/promptflow-devkit/promptflow/_sdk/_orm/experiment_node_run.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/experiment_node_run.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/experiment_node_run.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/orchestrator.py b/src/promptflow-devkit/promptflow/_sdk/_orm/orchestrator.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/orchestrator.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/orchestrator.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/retry.py b/src/promptflow-devkit/promptflow/_sdk/_orm/retry.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/retry.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/retry.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/run_info.py b/src/promptflow-devkit/promptflow/_sdk/_orm/run_info.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/run_info.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/run_info.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/session.py b/src/promptflow-devkit/promptflow/_sdk/_orm/session.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/session.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/session.py
diff --git a/src/promptflow/promptflow/_sdk/_orm/trace.py b/src/promptflow-devkit/promptflow/_sdk/_orm/trace.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_orm/trace.py
rename to src/promptflow-devkit/promptflow/_sdk/_orm/trace.py
diff --git a/src/promptflow/promptflow/_sdk/_pf_client.py b/src/promptflow-devkit/promptflow/_sdk/_pf_client.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_pf_client.py
rename to src/promptflow-devkit/promptflow/_sdk/_pf_client.py
diff --git a/src/promptflow/promptflow/_sdk/_run_functions.py b/src/promptflow-devkit/promptflow/_sdk/_run_functions.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_run_functions.py
rename to src/promptflow-devkit/promptflow/_sdk/_run_functions.py
diff --git a/src/promptflow/promptflow/_sdk/_service/.gitignore b/src/promptflow-devkit/promptflow/_sdk/_service/.gitignore
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/.gitignore
rename to src/promptflow-devkit/promptflow/_sdk/_service/.gitignore
diff --git a/src/promptflow/promptflow/_sdk/_service/README.md b/src/promptflow-devkit/promptflow/_sdk/_service/README.md
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/README.md
rename to src/promptflow-devkit/promptflow/_sdk/_service/README.md
diff --git a/src/promptflow/promptflow/_sdk/_service/__init__.py b/src/promptflow-devkit/promptflow/_sdk/_service/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/__init__.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/__init__.py
diff --git a/src/promptflow/promptflow/_sdk/schemas/__init__.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/__init__.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/schemas/__init__.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/__init__.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/collector.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/collector.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/collector.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/collector.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/connection.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/connection.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/connection.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/connection.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/experiment.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/experiment.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/experiment.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/experiment.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/flow.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/flow.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/flow.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/flow.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/line_run.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/line_run.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/line_run.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/line_run.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/run.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/run.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/run.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/run.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/span.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/span.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/span.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/span.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/telemetry.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/telemetry.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/telemetry.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/telemetry.py
diff --git a/src/promptflow/promptflow/_sdk/_service/apis/ui.py b/src/promptflow-devkit/promptflow/_sdk/_service/apis/ui.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/apis/ui.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/apis/ui.py
diff --git a/src/promptflow/promptflow/_sdk/_service/app.py b/src/promptflow-devkit/promptflow/_sdk/_service/app.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/app.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/app.py
diff --git a/src/promptflow/promptflow/_sdk/_service/entry.py b/src/promptflow-devkit/promptflow/_sdk/_service/entry.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/entry.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/entry.py
diff --git a/src/promptflow/promptflow/_sdk/_service/generator_configs/csharp.yaml b/src/promptflow-devkit/promptflow/_sdk/_service/generator_configs/csharp.yaml
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/generator_configs/csharp.yaml
rename to src/promptflow-devkit/promptflow/_sdk/_service/generator_configs/csharp.yaml
diff --git a/src/promptflow/promptflow/_sdk/_service/pfsvc.py b/src/promptflow-devkit/promptflow/_sdk/_service/pfsvc.py
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/pfsvc.py
rename to src/promptflow-devkit/promptflow/_sdk/_service/pfsvc.py
diff --git a/src/promptflow/promptflow/_sdk/_service/static/assets/favicon.ico b/src/promptflow-devkit/promptflow/_sdk/_service/static/assets/favicon.ico
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/static/assets/favicon.ico
rename to src/promptflow-devkit/promptflow/_sdk/_service/static/assets/favicon.ico
diff --git a/src/promptflow/promptflow/_sdk/_service/static/assets/index-Rg6Z62xy.js b/src/promptflow-devkit/promptflow/_sdk/_service/static/assets/index-Rg6Z62xy.js
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/static/assets/index-Rg6Z62xy.js
rename to src/promptflow-devkit/promptflow/_sdk/_service/static/assets/index-Rg6Z62xy.js
diff --git a/src/promptflow/promptflow/_sdk/_service/static/assets/index.mjs b/src/promptflow-devkit/promptflow/_sdk/_service/static/assets/index.mjs
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/static/assets/index.mjs
rename to src/promptflow-devkit/promptflow/_sdk/_service/static/assets/index.mjs
diff --git a/src/promptflow/promptflow/_sdk/_service/static/assets/style.css b/src/promptflow-devkit/promptflow/_sdk/_service/static/assets/style.css
similarity index 100%
rename from src/promptflow/promptflow/_sdk/_service/static/assets/style.css
rename to src/promptflow-devkit/promptflow/_sdk/_service/static/assets/style.css
diff --git a/src/promptflow/promptflow/_sdk/_service/static/chat_index.html b/src/promptflow-devkit/promptflow/_sdk/_service/static/chat_index.html
similarity index 98%
rename from src/promptflow/promptflow/_sdk/_service/static/chat_index.html
rename to src/promptflow-devkit/promptflow/_sdk/_service/static/chat_index.html
index 64e0f752ee7..6983a09a1e5 100644
--- a/src/promptflow/promptflow/_sdk/_service/static/chat_index.html
+++ b/src/promptflow-devkit/promptflow/_sdk/_service/static/chat_index.html
@@ -20,4 +20,4 @@