|
- # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
-
- name: OpenAI
-
- on:
- pull_request_target:
- branches: ['main']
- paths:
- - 'autogen/**'
- - 'test/**'
- - 'notebook/agentchat_auto_feedback_from_code_execution.ipynb'
- - 'notebook/agentchat_function_call.ipynb'
- - 'notebook/agentchat_MathChat.ipynb'
- - 'notebook/oai_completion.ipynb'
- - 'notebook/oai_chatgpt_gpt4.ipynb'
- - '.github/workflows/openai.yml'
-
- jobs:
- test:
- strategy:
- matrix:
- os: [ubuntu-latest]
- python-version: ["3.9", "3.10", "3.11"]
- runs-on: ${{ matrix.os }}
- environment: openai
- steps:
- # checkout to pr branch
- - name: Checkout
- uses: actions/checkout@v3
- with:
- ref: ${{ github.event.pull_request.head.sha }}
- - name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v4
- with:
- python-version: ${{ matrix.python-version }}
- - name: Install packages and dependencies
- run: |
- docker --version
- python -m pip install --upgrade pip wheel
- pip install -e.[blendsearch]
- python -c "import autogen"
- pip install coverage pytest-asyncio datasets
- - name: Install packages for test when needed
- if: matrix.python-version == '3.9'
- run: |
- pip install docker
- - name: Install packages for MathChat when needed
- if: matrix.python-version != '3.11'
- run: |
- pip install -e .[mathchat]
- - name: Install packages for RetrieveChat when needed
- if: matrix.python-version == '3.9'
- run: |
- pip install -e .[retrievechat]
- - name: Coverage
- if: matrix.python-version == '3.9'
- env:
- OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
- AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
- AZURE_OPENAI_API_BASE: ${{ secrets.AZURE_OPENAI_API_BASE }}
- OAI_CONFIG_LIST: ${{ secrets.OAI_CONFIG_LIST }}
- run: |
- coverage run -a -m pytest test
- coverage xml
- - name: Coverage and check notebook outputs
- if: matrix.python-version != '3.9'
- env:
- OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
- AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
- AZURE_OPENAI_API_BASE: ${{ secrets.AZURE_OPENAI_API_BASE }}
- WOLFRAM_ALPHA_APPID: ${{ secrets.WOLFRAM_ALPHA_APPID }}
- OAI_CONFIG_LIST: ${{ secrets.OAI_CONFIG_LIST }}
- run: |
- pip install nbconvert nbformat ipykernel
- coverage run -a -m pytest test/test_with_openai.py
- coverage run -a -m pytest test/test_notebook.py
- coverage xml
- cat "$(pwd)/test/executed_openai_notebook_output.txt"
- - name: Upload coverage to Codecov
- uses: codecov/codecov-action@v3
- with:
- file: ./coverage.xml
- flags: unittests
|