Skip to content

Commit

Permalink
Examples deploying LLM apps to Online Endpoints (#2503)
Browse files Browse the repository at this point in the history
Add two LLM example notebooks detailing how to deploy Langchain and Semantic Kernel apps to AzureML Online Endpoints.

---------

Co-authored-by: Vanessa Arndorfer <vaarndor@microsoft.com>
  • Loading branch information
varndorfer and Vanessa Arndorfer authored Aug 21, 2023
1 parent c571d38 commit 6b4123d
Show file tree
Hide file tree
Showing 55 changed files with 2,267 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# This code is autogenerated.
# Code is generated by running custom script: python3 readme.py
# Any manual changes to this file may cause incorrect behavior.
# Any manual changes will be overwritten if the code is regenerated.

name: sdk-endpoints-online-llm-langchain-1_langchain_basic_deploy
# This file is created by sdk/python/readme.py.
# Please do not edit directly.
on:
workflow_dispatch:
schedule:
- cron: "40 2/12 * * *"
pull_request:
branches:
- main
paths:
- sdk/python/endpoints/online/llm/langchain/**
- .github/workflows/sdk-endpoints-online-llm-langchain-1_langchain_basic_deploy.yml
- sdk/python/dev-requirements.txt
- infra/bootstrapping/**
- sdk/python/setup.sh
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: check out repo
uses: actions/checkout@v2
- name: setup python
uses: actions/setup-python@v2
with:
python-version: "3.8"
- name: pip install notebook reqs
run: pip install -r sdk/python/dev-requirements.txt
- name: azure login
uses: azure/login@v1
with:
creds: ${{secrets.AZUREML_CREDENTIALS}}
- name: bootstrap resources
run: |
echo '${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}';
bash bootstrap.sh
working-directory: infra/bootstrapping
continue-on-error: false
- name: setup SDK
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash setup.sh
working-directory: sdk/python
continue-on-error: true
- name: setup-cli
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash setup.sh
working-directory: cli
continue-on-error: true
- name: run endpoints/online/llm/langchain/1_langchain_basic_deploy.ipynb
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh" generate_workspace_config "../../.azureml/config.json";
bash "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh" replace_template_values "1_langchain_basic_deploy.ipynb";
[ -f "../../.azureml/config" ] && cat "../../.azureml/config";
papermill -k python 1_langchain_basic_deploy.ipynb 1_langchain_basic_deploy.output.ipynb
working-directory: sdk/python/endpoints/online/llm/langchain
- name: upload notebook's working folder as an artifact
if: ${{ always() }}
uses: actions/upload-artifact@v2
with:
name: 1_langchain_basic_deploy
path: sdk/python/endpoints/online/llm/langchain
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# This code is autogenerated.
# Code is generated by running custom script: python3 readme.py
# Any manual changes to this file may cause incorrect behavior.
# Any manual changes will be overwritten if the code is regenerated.

name: sdk-endpoints-online-llm-semantic-kernel-1_semantic_http_server
# This file is created by sdk/python/readme.py.
# Please do not edit directly.
on:
workflow_dispatch:
schedule:
- cron: "45 9/12 * * *"
pull_request:
branches:
- main
paths:
- sdk/python/endpoints/online/llm/semantic-kernel/**
- .github/workflows/sdk-endpoints-online-llm-semantic-kernel-1_semantic_http_server.yml
- sdk/python/dev-requirements.txt
- infra/bootstrapping/**
- sdk/python/setup.sh
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: check out repo
uses: actions/checkout@v2
- name: setup python
uses: actions/setup-python@v2
with:
python-version: "3.8"
- name: pip install notebook reqs
run: pip install -r sdk/python/dev-requirements.txt
- name: azure login
uses: azure/login@v1
with:
creds: ${{secrets.AZUREML_CREDENTIALS}}
- name: bootstrap resources
run: |
echo '${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}';
bash bootstrap.sh
working-directory: infra/bootstrapping
continue-on-error: false
- name: setup SDK
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash setup.sh
working-directory: sdk/python
continue-on-error: true
- name: setup-cli
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash setup.sh
working-directory: cli
continue-on-error: true
- name: run endpoints/online/llm/semantic-kernel/1_semantic_http_server.ipynb
run: |
source "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh";
source "${{ github.workspace }}/infra/bootstrapping/init_environment.sh";
bash "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh" generate_workspace_config "../../.azureml/config.json";
bash "${{ github.workspace }}/infra/bootstrapping/sdk_helpers.sh" replace_template_values "1_semantic_http_server.ipynb";
[ -f "../../.azureml/config" ] && cat "../../.azureml/config";
papermill -k python 1_semantic_http_server.ipynb 1_semantic_http_server.output.ipynb
working-directory: sdk/python/endpoints/online/llm/semantic-kernel
- name: upload notebook's working folder as an artifact
if: ${{ always() }}
uses: actions/upload-artifact@v2
with:
name: 1_semantic_http_server
path: sdk/python/endpoints/online/llm/semantic-kernel
5 changes: 4 additions & 1 deletion sdk/python/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
.ipynb_checkpoints
*/.ipynb_checkpoints/*
*/.ipynb_checkpoints/*

# config files are required to use Semantic Kernel
!endpoints/online/llm/src/sk/skills/*/*/config.json
Loading

0 comments on commit 6b4123d

Please sign in to comment.